]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
up version to 1.3.7, interface age 0, binary age 0. depend on glib 1.3.7.
[~andy/gtk] / ChangeLog.pre-2-4
1 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
2
3         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
4         age 0, binary age 0. depend on glib 1.3.7.
5
6         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
7
8         * gtk/gtkmenubar.c: same here.
9         
10         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
11
12         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
13
14         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
15         
16         * gtk/gtkmenubar.c (add_to_window): likewise.
17         
18         * gtk/gtktextbtree.c: and here...
19         
20         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
21         
22         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
23         
24         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
25         
26         * gtk/gtktreeviewcolumn.c:
27         (_gtk_tree_view_column_set_tree_view): yet again.
28
29         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
30         signal connections without g_signal_connect_data().
31         
32         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
33         demo of the matter.
34         
35         * demos/testpixbuf.c (main): running out of equality phrases for the
36         ChangeLog, but had to adapt connections here as well.
37         
38         * demos/testanimation.c (progressive_timeout): and for the fun of it,
39         tackled this the same way.
40         
41         * tests/testtext.c (create_view): ok, it's becoming a pain at this
42         point, but had enough enery for one more fix.
43
44         * tests/testtreecolumns.c (main): stand up man, do your work!
45
46         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
47         fix, either that's been all of it or CVS gtk is broken yet again.
48         
49 2001-06-29  James Henstridge  <james@daa.com.au>
50
51         The following changes correspond to bug #56812
52
53         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
54         code for GdkDevice.
55
56         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
57         GdkCursor.
58
59 2001-06-19  Havoc Pennington  <hp@pobox.com>
60
61         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
62         for mapping a window without fooling with stacking order, but
63         updating the "withdrawn" flag
64
65         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
66         filtering as soon as possible, moving move resize and wmspec_check
67         handling after the event filter.  Make default filter apply to all
68         events, not just those with no GdkWindow wrapped around the X
69         window. Fix a FIXME about how the window could be a pixmap using 
70         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
71
72         Also, be robust against events not on a known GdkWindow.
73
74         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
75         gdk_x11_ungrab_server): export reference-counted server grabs, so
76         other people can grab server over a GDK function that also does
77         so.
78
79 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
80
81         * gtk/gtktreeviewcolumn.c
82         (gtk_tree_view_column_pack_start_cell_renderer): New function to
83         reflect that you can (hypothetically) pack cell renderers into a
84         column.
85         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
86         (gtk_tree_view_column_cell_is_visible): Move more functionality to
87         the column.
88         (gtk_tree_view_column_cell_can_focus): Move more functionality to
89         the column.
90
91         * gtk/gtktreeview.c: Move to use new column-packing code.
92         (gtk_tree_view_real_expand_row): remove totally braindead code.
93         (gtk_tree_view_real_collapse_row): ditto.
94
95 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
96
97         * gtk/gtktreeviewcolumn.c: Fix a typo.
98         
99 2001-06-26  Joel Becker  <jlbec@evilplan.org>
100
101         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
102           at the end of the file
103
104 2001-06-26  Havoc Pennington  <hp@redhat.com>
105
106         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
107
108 2001-06-26  Havoc Pennington  <hp@redhat.com>
109
110         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
111         property
112
113 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
114
115         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
116         stupid missing statement
117
118         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
119         private function for ATK.  It notifies you of how many _visible_
120         children are deleted when a node is deleted.  Should be used by
121         atk only.
122
123 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
124
125         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
126         Use new pango_context_get_metrics() to fix problems
127         with font lists in descriptions. (#56184, reported by
128         Jonas Borgström)
129
130 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
131
132         * gtk/gtkiconfactory.c:
133         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
134         item factory so inlined pixbufs actually work.
135
136 2001-06-25  Havoc Pennington  <hp@redhat.com>
137
138         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
139         s/RESIZEABLE/RESIZABLE/
140
141         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
142
143 2001-06-25  Alexander Larsson  <alexl@redhat.com>
144
145         * configure.in:
146         Added --enable-fbmanager. This is some experimental code
147         that lets several GtkFB apps coordinate their access to the
148         framebuffer.
149         
150         * acconfig.h:
151         Added ENABLE_FB_MANAGER.
152
153         * gdk/linux-fb/Makefile.am:
154         Added gdkfbmanager and gdkfbswitch.
155
156         * gdk/linux-fb/gdkkeyboard-fb.c:
157         * gdk/linux-fb/gdkmouse-fb.c:
158         * gdk/linux-fb/gdkprivate-fb.h:
159         Split device init and open so that
160         they can be opened and closed while switched
161         away.
162
163         * gdk/linux-fb/gdkmain-fb.c:
164         Add the basic manager communication.
165
166         * gdk/linux-fb/gdkrender-fb.c:
167         Don't update to the shadow fb if we're
168         blocked by the fb manager.
169
170 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
171
172         * docs/Changes-2.0.txt: Add note about child property
173         changes.
174
175 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
176
177         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
178         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
179
180         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
181         with un'reffing wrong list reported by Jeff Franks.
182
183         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
184
185         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
186         for the default icon. Remove inline XPM.
187
188         * gtk/gtkstock.h gtk/gtkiconfactory.c:
189         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
190         is used for GTK_STOCK_DND, but it is a bit too small.)
191
192         * gtk/stock-icons/stock_dnd_multiple.png
193         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
194
195         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
196         TRUE when starting a drag. In other cases, we are
197         just observing. (#52995)
198
199         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
200         function to set the icon for a drag from a GdkPixbuf
201         or stock ID.
202
203         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
204         Likewise, for drag sources.
205
206         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
207         (Now should be done using the stock system.)
208
209 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
210
211         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
212         Removed - didn't work and not particularly useful anyways
213         if it did. 
214
215 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
216
217         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
218         introduced last night that was making things decidedly not work.
219
220         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
221         so that we have getter/setter pairing everywhere it makes
222         sense. (#55767)
223
224         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
225         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
226         deprecated compat macro. (#55516)
227
228         * gtk/gtklabel.[ch]: Add functions
229         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
230         gtk_label_set_label(), which mirror the property API for GtkLabel.
231         Make gtk_label_get_attributes() only reflect the attributes
232         set by gtk_label_set_attributes.
233
234         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
235         from gtk_notebook_set_page().
236
237 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
238
239         * configure.in: Fix tests for XShm.h.
240
241         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
242         gdk_image_new() by use of goto, properly use g_object_unref().
243
244 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
245
246         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
247         calls, as GdkImage is an object. these should be g_obejct_unref()
248         instead but that won't work because of the g_error() statement
249         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
250         to spot these places.
251
252 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
253
254         * modules/input/gtkimcontextxim.c: Fixup some problems with 
255         text length handling in error cases.
256
257         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
258         a bit to make test actually warn on attempt to allocation
259         a negative size. (#56101, Matthias Clasen)
260
261 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
262
263         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
264         noticed by Brian Cameron.
265         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
266         Cameron.
267
268 2001-06-22  Hans Breuer  <hans@breuer.org>
269
270         * gdk/gdk.def : updated externals
271
272         * gdk/win32/gdkdrawable-win32.c : corrected some casts
273         in GDK_NOTEs
274
275         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
276         to translate coordinates to the internal > 16 bit system
277         Try to handle WM_WINDOWPOSCHANGED to get better performance for
278         when moving/resizing
279
280         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
281         and gdk_keymap_get_direction (). The latter is untested for
282         the RTL case
283
284         * gtk/gtk.def : updated externals
285
286         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
287         from pango_language_from_string (), not an already freed pointer
288
289         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
290         binary (-kb) to be useable on windoze
291  
292 2001-06-21  Alexander Larsson  <alexl@redhat.com>
293
294         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
295         Update to new PangoLanguage changes.
296         
297         * gtk/gtkwindow-decorate.c:
298         * gtk/gtkwindow.[ch]:
299         Added setting argument to gtk_window_set_has_frame ()
300         
301 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
302
303         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
304         the case without XKB properly.
305
306         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
307         unused gtk_rc_auto_parse variable.
308
309         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
310         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
311         longer needed with GdkPixbuf.
312
313         * gtk/gtkrc.c (_gtk_rc_init): Make private.
314
315 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
316
317         * gtk/gtkentry.h: Mark deprecated functions with
318         GTK_DISABLE_DEPRECATED.
319
320 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
321
322         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
323
324         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
325
326         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
327           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
328           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
329           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
330           to recent changes in Pango.
331
332         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
333           to test whether the basic engine honors them.
334
335 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
336
337         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
338         gtk_container_child_get_property().
339
340 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
341
342         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
343         (gtk_tree_view_move_cursor_page_up_down): implement.
344
345 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
346
347         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
348         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
349         don't use automatic fixed size buffer for printf-ing floats, doubles
350         can expand to really _huge_ strings, use g_strdup_printf() instead.
351
352 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
353
354         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
355         construct property in 1.2 and still needs to be.
356
357         * gtk/gtkwidget.c: "composite_child" is not a settable property.
358
359 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
360
361         * gtk/gtkliststore.c (gtk_list_store_clear): 
362         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
363         clear a model.
364
365 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
366
367         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
368
369         * gtk/Makefile.am:
370         * gtk/gtk.h: disabled GtkPacker compilation.
371
372         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
373
374         * gtk/gtknotebook.c:
375         * gtk/gtktable.c:
376         * gtk/gtkbox.c: ported this over to child properties.
377
378         * gtk/gtksettings.c: fetch class properties via
379         g_object_class_list_properties().
380
381         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
382         child arg interface. use gobjectnotifyqueue.c for child property
383         notification.
384
385         * gtk/gtkwidget.[hc]: provide necessary means for container child
386         properties, i.e. ::child_notify signal,
387         gtk_widget_freeze_child_notify(),
388         gtk_widget_child_notify(),
389         gtk_widget_thaw_child_notify().
390
391         * tests/testgtk.c: removed inferior property handling code, for
392         property editing, a generic module should be used, and GLE
393         coincidentally fullfills that purpose.
394
395         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
396         needs to be adapted to g_object_class_list_properties() before this
397         builds again.
398
399 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
400
401         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
402         test if a node is expanded.
403
404 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
405
406         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
407         where collapsing a selected row would result in the cursor/anchor
408         getting screwed up.
409
410 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
411
412         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
413         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
414         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
415         Now I can really reorder/sort all Store widgets.  treesorttest
416         seems to just work now.
417         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
418         testtreesort worked through a big coincidence all this time.
419         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
420         code.
421         * tests/testtreecolumns.c: Big 'ol warning at the top letting
422         people know that this code should never ever ever be copied.
423
424 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
425
426         * gtk/gtkwindow.h: Fixed a small typo, it should be
427         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
428         on line 134.
429
430 2001-06-14  Havoc Pennington  <hp@redhat.com>
431
432         Docs fixups, and:
433         
434         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
435         GTK_DISABLE_DEPRECATED
436
437 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
438
439         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
440         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
441         finish it off tonight, though it basically works now when it's a
442         list.  Also, I have a sinking feeling neither GtkTreeStore or
443         GtkListStore actually resort when adding a new item.  I'll look
444         into it.
445
446 2001-06-14  Havoc Pennington  <hp@redhat.com>
447
448         * demos/gtk-demo/main.c (load_file): fix bug identified by
449         warnings I just added to gtktextbuffer
450
451 2001-06-14  Havoc Pennington  <hp@redhat.com>
452
453         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
454
455         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
456
457         * gtk/gtktextbtree.c: don't leak node data all over the place.
458
459         * demos/gtk-demo/main.c (main): create fontify tags for the right
460         buffer
461
462         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
463         to mention tags in the same table can't have the same name,
464         suggested by Skip Montanaro
465
466 2001-06-11  Havoc Pennington  <hp@redhat.com>
467
468         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
469         for trying to add two tags with same name to the tag table
470
471         * demos/gtk-demo/main.c (main): fix colors ;-)
472
473 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
474
475         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
476         that allows grouping together multiple windows so that grabs
477         within that set of windows only affect those windows.
478
479         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
480         signal for notification when a widget becomes shadowed
481         by a grab or is no longer shadowed by a grab.
482
483         * gtk/gtkwidget.c (gtk_widget_propagate_state)
484           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
485         insenstive widgets to maintain a grab.
486
487 2001-06-14  Alexander Larsson  <alexl@redhat.com>
488
489         * docs/README.linux-fb:
490         Add some example config files that can be used with the URW fonts.
491         
492         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
493         Set up the color ramps for DirectColor mode.
494
495 2001-06-11  Havoc Pennington  <hp@redhat.com>
496
497         * Release 1.3.6
498          
499 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
500
501         * gdk/linux-fb/gdkwindow-fb.c:
502         Unify shaped window code and make it repaint the area that used
503         to be part of the shape, but isn't anymore.
504
505 2001-06-11  Havoc Pennington  <hp@redhat.com>
506
507         * NEWS: Updates
508
509         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
510
511         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
512         
513 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
514
515         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
516         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
517         passes zero instead, so do we.
518         
519 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
520
521         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
522         Deep copy dash_list too.
523         (_gdk_fb_gc_new): Set default cap_style before
524         setting values.
525
526 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
527
528         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
529         gdk_keymap_get_direction): New functions.
530
531 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
532
533         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
534         gtk_tree_model_get_flags by adding a second flag for atk.
535
536         * gtk/gtktreemodel.c: make cursor behavior interact better with
537         mouse presses.
538
539 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
540
541         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
542         expand_row/collapse_row to be 2 signals each -- test_expand_row
543         and row_expanded as well as test_collapse_row and row_collapsed.
544
545 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
546
547         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
548         signal name to be changed instead of selection_changed.
549
550 2001-06-08  Havoc Pennington  <hp@redhat.com>
551
552         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
553         "scroll_offset" property for notification when the layout offsets
554         may have changed
555         (gtk_entry_adjust_scroll): add notify for scroll_offset
556         (gtk_entry_layout_index_to_text_index): function to compensate for
557         preedit string when doing coordinate stuff on the entry's layout
558         (gtk_entry_text_index_to_layout_index): inverse function
559         (gtk_entry_get_layout_offsets): hook to get current position of
560         the layout      
561         (gtk_entry_get_layout): hook to get the layout itself.
562
563         * gtk/gtklabel.c (gtk_label_get_layout): new function
564
565 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
566
567         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
568         keybinding.
569         (gtk_tree_view_focus): Fix merge conflict.
570
571 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
572
573         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
574         clean up cursor handling.
575
576 2001-06-08  Havoc Pennington  <hp@redhat.com>
577
578         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
579         function
580
581         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
582         this function
583
584 2001-06-08  Alex Larsson  <alexl@redhat.com>
585
586         * gtk/gtkcompat.h.in:
587         Added compat macros for all old GTK_TYPE_GDK_xxx types.
588         Fixes bug #52892
589
590 2001-06-08  Havoc Pennington  <hp@redhat.com>
591         
592         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
593         parent still
594
595 2001-06-08  Havoc Pennington  <hp@redhat.com>
596
597         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
598         don't call g_list funcs on GSList
599
600         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
601         gtk_container_focus(), since some widgets have focusable locations
602         which are not other widgets. These widgets should not have to be 
603         containers just to manage the focus. For example, GtkHSV is
604         currently a container for no good reason. Also, this cleans
605         up the "if (is_container && is_sensitive && is_drawable)
606         container_focus ()" mess in widget implementations.
607
608         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
609         function, and have it just call gtk_widget_child_focus().
610
611         * gtk/gtkhsv.c: derive from widget not container
612         
613         Throughout: fix to reflect GtkContainer::focus change
614         
615 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
616
617         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
618         range.  Fix bug #55921
619
620         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
621         (#55920).
622
623 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
624
625         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
626         and gdk_keymap_get_current_direction().
627
628         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
629           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
630         the current locked group, use it to set the keymap
631         direction.
632
633         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
634         to determine whether we draw a split cursor or use
635         a jumping cursor based on the current direction.
636
637         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
638         Obey the split cursor setting. 
639
640 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
641
642         * gtk/gtkimmulticontext.c (activate_cb): Only activate
643         when toggling on, not when toggling off... (#55906)
644
645 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
646
647         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
648         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
649         in docs. (#55812, Vitaly Tishkov)
650
651 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
652
653         * demos/gtk-demo/main.c (create_tree): Changed signal name from
654         selection_changed to changed in signal connection to GtkTreeSelection,
655         also used g_signal_connectc since GtkTreeSelection is now a GObject.
656
657 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
658
659         * gtk/gtktreeselection.c: Now it's a GObject instead of a
660         GtkObject.  The GtkTreeSelection::selection_changed signal is now
661         the GtkTreeSelection::changed signal.
662
663         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
664         object.
665
666         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
667         object.
668
669 2001-06-07  Havoc Pennington  <hp@redhat.com>
670
671         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
672
673 2001-06-07  Havoc Pennington  <hp@redhat.com>
674         
675         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
676         (not tested yet because with absolute path to srcdir I can't build
677         atk, but it was broken anyway so this may help) 
678
679 2001-06-07  Havoc Pennington  <hp@redhat.com>
680
681         * configure.in: output m4macros/Makefile
682         
683 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
684
685         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
686         buttons.  Fixes #55460 reported by matthiasc@poet.de.
687
688 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
689
690         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
691         expansion/collapsing so it only happens in one place.
692         (gtk_tree_view_real_expand_row): ditto.
693
694 2001-06-07  Havoc Pennington  <hp@redhat.com>
695
696         * tests/Makefile.am: add missing -I flag
697
698         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
699
700         * configure.in: use pkg-config to see if GModule is
701         supported; fix to properly turn on included loaders 
702         when GModule isn't supported; don't use AC_CHECK_LIB 
703         when libs are not installed yet
704
705         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
706
707         * Makefile.am (SUBDIRS): add m4macros subdir
708
709         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
710         dependencies also.
711
712 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
713
714         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
715         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
716
717 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
718
719         * gtk/gtktreeview.c
720         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
721         bindings to expand and collapse rows.
722         (gtk_tree_view_real_select_cursor_parent): New key binding.
723         (gtk_tree_view_real_toggle_cursor_row): New key binding.
724
725         * gtk/gtkmarshal.list: new
726         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
727
728 2001-06-06  Havoc Pennington  <hp@redhat.com>
729
730         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
731
732         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
733         Down to move visually rather than logically, since it confuses 
734         people. Add -/+ and Ctrl--/+ bindings for logical movement.
735
736 2001-06-06  Alex Larsson  <alexl@redhat.com>
737
738         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
739         Fix up error messages.
740
741 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
742
743         * gtk/gtktooltips.h: Include gtkwidget.h 
744         (#55798, Karl Nelson)
745
746         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
747         a valid latin-1 character. (Marc Lehmann, #35467)
748
749         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
750         (Marc Lehmann, #35467)
751         
752 2001-06-05  Alex Larsson  <alexl@redhat.com>
753
754         * demos/gtk-demo/appwindow.c (do_appwindow):
755         Don't swap the order of the args to gtk_widget_destroyed.
756
757         * tests/testgtk.c (destroy_properties):
758         Don't crash when the properties window is destroyed.
759
760         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
761         Use with_mnemonics to handle the case of stock items with
762         underscores in them.
763
764 2001-06-05  Havoc Pennington  <hp@redhat.com>
765
766         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
767         gtk_text_iter_reorder
768
769 2001-06-05  Havoc Pennington  <hp@redhat.com>
770
771         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
772
773 2001-06-05  Havoc Pennington  <hp@redhat.com>
774
775         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
776         to the range that was set
777
778         * gtk/gtkrange.c: add value_changed signal, primarily 
779         intended for use with GtkScale
780         (gtk_range_set_increments): new function
781         (gtk_range_set_range): new function with weird name
782         (gtk_range_set_value): new function
783         (gtk_range_get_value): new function
784
785         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
786         from gtk_spin_button_get_value_as_float(). Compat #define
787         added for get_value_as_float.
788
789         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
790
791         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
792
793 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
794
795         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
796
797 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
798
799         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
800
801         * tests/testgtk.c (create_tooltips): Remove usage of
802         gtk_widget_set().
803
804 2001-06-05  Havoc Pennington  <hp@redhat.com>
805
806         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
807
808         Applying patch from Jeff Franks, with function docs added.
809         
810         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
811         remove call to set_mnemonic_widget, change docs a bit.  
812
813         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
814         new function
815
816         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
817         new function
818
819         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
820
821         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
822         function
823         (gtk_radio_button_new_with_mnemonic_from_widget): new function
824
825         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
826         new function
827
828         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
829         function        
830
831         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
832         auto-selection of mnemonic widget.
833
834 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
835
836         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
837         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
838         (gtk_tree_view_column_set_min_width): ditto.
839
840 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
841
842         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
843         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
844
845 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
846
847         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
848         gtk_clist_thaw().
849
850 2001-06-04  Havoc Pennington  <hp@pobox.com>
851
852         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
853         releases for buttons 6, 7
854
855 2001-06-04  Havoc Pennington  <hp@redhat.com>
856
857         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
858         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
859         #55562
860
861 2001-06-04  Havoc Pennington  <hp@redhat.com>
862
863         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
864         where text_view->layout == NULL by assuming its size is 0, 
865         i.e. same as if we haven't done any reflow. Reported by 
866         Hidetoshi Tajima #55448 
867
868 2001-06-04  Havoc Pennington  <hp@redhat.com>
869
870         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
871         and 7 for scroll left/right, from Thomas Broyer
872
873 2001-05-10  Havoc Pennington  <hp@redhat.com>
874
875         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
876         we need to parse the xsetting as if it were an RC file string.
877
878         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
879         value of palette from settings, not from static variable
880
881         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
882         xsettings translation table
883
884         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
885         hardcoding the toolbar style conflicts with new customizable 
886         toolbar style philosophy
887         (gtk_toolbar_class_init): add settings for default toolbar style;
888         these are used unless the app specifically forces a toolbar style
889
890         * gtk/gtksettings.c (settings_install_property_parser): only
891         return at the start if we warn and parser == NULL
892
893         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
894         palette changed handler so we don't notify dead color selections
895
896         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
897         xthickness/ythickness of 0 or 1 properly 
898         (gtk_default_draw_resize_grip): clear the background behind the
899         resize grips, and align to bottom right if we square the 
900         area to be drawn.
901
902         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
903         statusbar label to 1, so it doesn't make toplevels resize oddly
904         (gtk_statusbar_size_request): add grip size to request
905         (gtk_statusbar_size_allocate): hack so the hbox still works with 
906         the grip size in the request
907
908         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
909         bug where showing all on a toplevel makes the toolbar 
910         button text appear despite the toolbar mode
911
912         * gtk/gtkmenubar.c: add internal padding style property
913
914         * gtk/gtktoolbar.c: Add internal padding style property; add
915         shadow type style property
916
917         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
918         state; and put Container::border_width outside the frame
919
920         * gtk/gtktextview.c: don't draw focus rectangle if we're in
921         interior focus mode, we just use blinking cursor
922
923 2001-06-04  Havoc Pennington  <hp@redhat.com>
924
925         * configure.in: Make gdk-pixbuf have same version number as GTK
926
927 2001-06-04  Havoc Pennington  <hp@redhat.com>
928
929         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
930         digits greater than 6. If there actually are limits (which there
931         likely aren't), should clamp to them not warn.
932         (gtk_spin_button_new_with_range): don't take log of 0
933         (gtk_spin_button_size_request): use digits to compute size
934         request, rather than step increment.
935
936         * tests/testgtk.c (create_spins): test larger values of digits
937         
938         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
939         font on map not expose, so we don't get weirdness during scrolling
940
941 2001-06-04  Havoc Pennington  <hp@redhat.com>
942
943         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
944         Sam Solon, bug #54577, update value even if not drawable.
945
946 2001-06-04  Havoc Pennington  <hp@redhat.com>
947
948         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
949         SCROLL_LEFT, reported by Thomas Broyer.
950
951 2001-06-04  Havoc Pennington  <hp@redhat.com>
952
953         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
954         Process updates immediately, to prevent funny lag effect
955         when scrolling, at some mild potential efficiency cost.
956
957 2001-06-04  Havoc Pennington  <hp@redhat.com>
958
959         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
960         slider on the click.
961
962 2001-06-03  Havoc Pennington  <hp@pobox.com>
963
964         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
965         hscale/vscale details, so we can use it for scrollbar as well.
966
967         * tests/testgtk.c (reformat_value): honor digits from GtkScale
968
969         * gtk/gtkenums.h (GtkTroughType): Remove this enum
970         (GtkScrollType): add START and END from GtkTroughType
971
972         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
973         its x/y arguments
974
975         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
976         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
977         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
978         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
979         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
980
981         Notable changes in the process:
982          
983         - stepper_size style property is the height for vertical 
984           ranges, width for horizontal; the other dimension matches
985           the trough size
986         - add ability to do NeXT-style steppers (and several other styles
987           that don't make any sense)
988         - added min_slider_length, fixed_slider_length properties to
989           GtkScrollbar
990         - cleaned some private (or at least useless) functions out of
991           gtkscale.h    
992         - moved bindings to GtkScale from subclasses, even arrow keys,
993           since blind users don't know scale orientation.
994         - change move_slider action signal to use new GtkScrollType,
995           remove GtkTroughType argument
996         - digits rounds the values a range will input to the given 
997           number of decimals, but will not try to force adjustment 
998           values set by other controllers. That is, we no longer
999           modify adjustment->value inside a value_changed handler.
1000         - added getters for GtkScale setters
1001         - middle-click begins a slider drag
1002         
1003 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
1004
1005         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
1006         getting the focus code to work.
1007         (gtk_tree_view_class_init): Add a bunch of keybindings.
1008
1009         * gtk/gtktreeviewcolumn.c
1010         (gtk_tree_view_column_set_cell_data_func):
1011         s/GtkCellDataFunc/GtkTreeCellDataFunc.
1012         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
1013         of "properties_changed" to help justify the death of the latter
1014         signal. (-:
1015
1016         * tests/testtreefocus.c (main): Let some columns be focussable to
1017         test focus better.
1018
1019 2001-06-01  Havoc Pennington  <hp@redhat.com>
1020
1021         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
1022         
1023         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
1024         overwrite in overwrite mode if we already deleted the selection
1025         and replaced it with new text.  
1026
1027         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
1028         selection to an empty range, clear the clipboard if we owned it.
1029         (gtk_label_set_selectable): give up selection if we become
1030         unselectable.
1031         (gtk_label_state_changed): override state changed to unselect text
1032         when insensitive
1033         (get_text_callback): add paranoia check that indexes aren't
1034         outside of label->text
1035         (gtk_label_select_region): make -1 for start_offset mean "end of
1036         label," for consistency with GtkEditable
1037
1038         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
1039         GTK_DIALOG_NO_SEPARATOR flag
1040
1041 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
1042
1043         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
1044         notifications on non-existant "enable_arrow_keys".
1045         (#53753, Skip Montanaro)
1046
1047 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
1048
1049         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
1050         GDK_TYPE_RECTANGLE.
1051
1052         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
1053         of allocation argument be GDK_TYPE_RECTANGLE.
1054
1055 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
1056
1057         * gtk/gtkoptionmenu.c: Account for the fact that the border
1058         width is _outside_ the window. (Fixes #54585, bug found
1059         by Bastien Nocera.)
1060
1061 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
1062
1063         * gtk/gtksettings.c (gtk_settings_get_property): Validate
1064         value from GDK settings against parameter spec.
1065
1066         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
1067         to temporary values and use g_value_transform(), since
1068         thinking that GValue was going to be easy or efficient
1069         to use was, of course, a mistake.
1070
1071         * gtk/gtksettings.c: Add cursor blink setting.
1072         
1073         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
1074
1075         * gtk/gtkentry.c: Add cursor blinking.
1076
1077         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
1078         cursor blink global settings.
1079
1080         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
1081         for :text_position in places where it is missing.
1082
1083 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
1084
1085         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
1086
1087 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
1088
1089         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
1090         not pkg-config. (#51032)
1091
1092         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
1093         (fixes #51952, James Henstridge)
1094         
1095 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
1096
1097         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
1098         Rename to the more correct gtk-go-up.
1099
1100         * gtk/stock-icons/stock_menu_sort_ascending.png:
1101         Added new file.
1102         
1103         * gtk/stock-icons/stock_menu_sort_descending.png:
1104         Changed to show descending instead of ascending.
1105
1106         * gtk/gtkiconfactory.c:
1107         Added menu size icon to sort ascending.
1108
1109         * gtk/stock-icons/Makefile.am:
1110         Added stock_menu_sort_ascending.png.
1111         
1112         * gtk/gtkseparatormenuitem.c:
1113         Use correct typenames.
1114
1115 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
1116
1117         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
1118         gulong as in GSignal.
1119
1120 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
1121
1122         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
1123         instances of GtkCellRenderer in code (all but dnd icon code).
1124         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
1125         there, and I can do multiple Cells per column.
1126
1127         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
1128
1129         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
1130         when model was unreffed prior to removing the row reference.
1131
1132 2001-05-25  Havoc Pennington  <hp@redhat.com>
1133
1134         * gtk/gtkiconfactory.c: fix so that default icons are created if 
1135         you call gtk_stock_list_ids()
1136
1137         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
1138         in list
1139
1140 2001-05-25  Havoc Pennington  <hp@redhat.com>
1141
1142         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
1143         set can render without falling back to missing image icon
1144
1145         * gtk/gtktextview.c (gtk_text_view_size_request): request full
1146         size of text, instead of random values
1147
1148         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
1149         size of tree view, instead of random values
1150
1151         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
1152         image in an appropriate size
1153
1154         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
1155         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
1156
1157         Throughout: fix GTK_STOCK_BUTTON_ instances
1158         
1159         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
1160         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
1161         Add a bunch of new stock items/icons
1162
1163         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
1164         new function, convenience for inserting columns with a data func
1165
1166         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
1167         (_gtk_icon_factory_list_ids): use list of all factories to
1168         generate a list of all known IDs
1169
1170         * gtk/gtkstock.c (gtk_stock_list_ids): replace
1171         gtk_stock_list_items() with a function that returns all IDs known
1172         including those for GtkIconFactory.
1173
1174 2001-05-25  Hans Breuer  <hans@breuer.org>
1175
1176         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
1177         work -> check boxes and radio buttons are drawn now, even on win9x.
1178         Improved line settings a bit, still no clue how to get really dotted
1179         lines on win9x, on NT it's PS_ALTERNATE.
1180
1181         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
1182         GDK_HINT_MIN_SIZE as well
1183
1184         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
1185
1186         * gtk/gtk.def : updated
1187
1188         * gtk/gtktreeprivate.h : change column_drop_func to be a function
1189         pointer not a function pointer pointer
1190
1191         * tests/testdnd.c : include <stdlib.h> for putenv prototype
1192
1193         * tests/testsocket.c : made it compile on win32 again
1194
1195         * tests/makefile.msc : one more test-app uses prop-editor.obj
1196
1197 2001-05-22  Havoc Pennington  <hp@pobox.com>
1198
1199         * gtk/gtkbin.c (gtk_bin_get_child): New function
1200
1201 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
1202
1203         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
1204         to ignore when doing compose processing.
1205
1206 2001-05-22  Joe Shaw  <joe@ximian.com>
1207
1208         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
1209         Simplify as suggested by Havoc. Just get the last iter and work
1210         backward to the tag instead of getting a line and working back from
1211         there. Fixes passing in an invalid offset to
1212         iter_init_from_byte_offset().
1213
1214 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
1215
1216         * gtk/gtktreeview*.h: 
1217         * gtk/gtkcell*.h:
1218         * gtk/gtk*store.h:
1219         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
1220         macros to all objects.
1221
1222 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
1223
1224         * gtk/gtkcellrenderertext.c
1225         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
1226         with very large (TM) amounts of text.  May be moved to
1227         GtkCellRenderer in the future, though I'm not sure it wants to be
1228         this accessible.
1229
1230         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
1231         More sanity brought to this class.  I like it.
1232
1233         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
1234         case.  Kids, don't try this at home.
1235
1236         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
1237         convenience function.
1238
1239         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
1240
1241 2001-05-21  Alexander Larsson  <alexl@redhat.com>
1242
1243         * gtk/gtkfontsel.c:
1244         Added properties. Based on patch by Lee Mallabone.
1245
1246         * gtk/gtkruler.c:
1247         * gtk/gtkhruler.c:
1248         * gtk/gtkvruler.c:
1249         * gtk/gtktext.c:
1250         * gtk/gtktextview.c:
1251         Converted GtkArg to GParam. Based on patches by John Margaglione.
1252
1253         * tests/Makefile.am:
1254         * tests/testtext.c:
1255         Add a property editor to testtext.
1256         
1257 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
1258
1259         * gtk/gtk{h,v,}paned.c: Only show the separator if 
1260
1261         * configure.in: Fixed reversed conditional causing all image
1262         libraries to be linked in.
1263
1264 2001-05-21  Joe Shaw  <joe@ximian.com>
1265
1266         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
1267         that top_y needs to be >= 0.
1268
1269 2001-05-11  Havoc Pennington  <hp@pobox.com>
1270         
1271         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
1272         losing connection to the X server.
1273
1274 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
1275
1276         * configure.in: Start checks for X from pangox/pangoxft
1277         CFLAGS to avoid duplicate libraries.
1278
1279         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
1280
1281         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
1282         to include gobject.
1283         
1284 2001-05-18  Alexander Larsson  <alexl@redhat.com>
1285
1286         * gtk/gtkspinbutton.c:
1287         Convert GtkArgs to GParams. Based on patch by John Margaglione.
1288         Also do size request reasonable for MAXDOUBLE. Previously it printed
1289         the limits to a buffer and overran it. Instead do it using log10() and
1290         limit the width to 10 digits.
1291         
1292         * gtk/gtkwidget.c (gtk_widget_get_property):
1293         Correctly handle setting the parent property to NULL.
1294
1295 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
1296
1297         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
1298         style attributes even if the widget isn't realized.
1299
1300         * demos/gtk-demo/main.c: Use a slightly smaller font.
1301
1302 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
1303
1304         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
1305         This is something that only a widget writer would ever want
1306         to change.
1307
1308         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
1309         gtk_signal_emit_by_name().
1310
1311         * gtk/gtkviewport.c: Fix some warnings.
1312
1313         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
1314         allowing the requisitions of multiple widgets to be grouped
1315         together.
1316
1317         * tests/testgtk.c: Add GtkSizeGroup test
1318
1319         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
1320
1321         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
1322         warnings.
1323
1324         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
1325
1326 2001-04-28  Martin Baulig  <baulig@suse.de>
1327
1328         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
1329         to gtk_image_menu_item_set_icon() and made it work if there's already
1330         an image.
1331         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
1332         (gtk_image_menu_item_new_with_label): New function.
1333
1334 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
1335
1336         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
1337         highlighting code!!!!  The result is okay so long as you don't try
1338         to stress it.  It also highlights a bug in the TextView so it's in
1339         an unproportional font right now until it's fixed.
1340
1341         *demos/gtk-demo/*.c: Clean up code a bit to make it
1342         ugly-parser(TM) friendly. (-:
1343
1344 2001-05-17  Joe Shaw  <joe@ximian.com>
1345
1346         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
1347         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
1348         if it is only partially onscreen.
1349
1350 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
1351
1352         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
1353         not by characters.
1354
1355         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
1356         are not zero or one; that is, when graphemes of multiple characters
1357         are involved.
1358
1359         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
1360         FIXME.
1361
1362 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
1363         
1364         * gtk/gtkbbox.c:
1365         Add properties, based on patch by Lee Mallabone.
1366
1367         * gtk/gtknotebook.c:
1368         * gtk/gtktoolbar.c:
1369         Convert from GtkArg to GParam, based on patch by John Margaglione.
1370         
1371         * gtk/gtkhscale.c:
1372         * gtk/gtkvscale.c:
1373         * gtk/gtkhscrollbar.c:
1374         * gtk/gtkvscrollbar.c:
1375         * gtk/gtkrange.c:
1376         Move adjustment property to GtkRange.
1377
1378         * gtk/gtklabel.c:
1379         Setup mnemonics on property changes
1380
1381         * gtk/gtkwidget.c (gtk_widget_get_property):
1382         GdkExtensionMode is an enum, not a flag. Set it with
1383         g_value_set_enum ().
1384
1385         * tests/prop-editor.c:
1386         Better propery editor.
1387
1388         * tests/testgtk.c:
1389         Add new property test. Pass zero to the property editor to
1390         get properties from all derived types.
1391         
1392 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
1393
1394         * autogen.sh (have_automake): Require libtool-1.4,
1395         automake-1.4p1.
1396
1397         * acinclude.m4: Remove libtool macros.
1398
1399         * gdk-pixbuf/Makefile.am: Add dependencies to loade
1400         modules.
1401
1402         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
1403         for libgdk.
1404
1405         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
1406         libgdk.la for libgtk.
1407
1408         * modules/input/Makefile.am: Make modules have full
1409         dependencies.
1410
1411 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
1412
1413         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
1414         #54699 where paths weren't being checked for correctness.
1415
1416 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
1417
1418         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
1419         in any order you wan, whether or not the column is added to the
1420         tree, or the tree is realized.  Yay!
1421
1422         * gtk/gtktreeviewcolumn.c
1423         (gtk_tree_view_column_setup_sort_column_id_callback): handle
1424         sorting columns a lot saner
1425
1426         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
1427         new function to actually set wether or not a column is
1428         reorderable.
1429
1430         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
1431         if we have 'em.
1432
1433         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
1434         Fix nasty bug where we were showing the button just before
1435         realizing it.  As a result, the parent window was
1436         tree_view->window instead of tree_view->priv->header_window.
1437
1438         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
1439         to let you easily reorder a list or tree.
1440
1441 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
1442
1443         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
1444         from args to properties.
1445
1446 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
1447
1448         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
1449         from args to properties. (#51957)
1450
1451         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
1452         calls to after ->set_property call.
1453
1454 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
1455
1456         * tests/prop-editor.c: Block against redundant changes.
1457
1458         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
1459         properties.
1460
1461 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
1462
1463         * gdk/gdkpixmap.h: Remove creative formatting.
1464
1465 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
1466
1467         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
1468         property API. (#51669)
1469
1470         * gtk/gtkscale.c: Patch from John Margaglione converting to
1471         property API. (#51891)
1472
1473         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
1474         to property API. (#50985)
1475
1476 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
1477
1478         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
1479         buffering state across expose event, so we still call end_paint().
1480
1481 2001-05-11  Alexander Larsson  <alexl@redhat.com>
1482
1483         * gtk/gtkhsv.c (paint_triangle):
1484         Expose the ring in the triangle at the correct place when
1485         exposing just a part of the triangle.
1486
1487         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
1488         Return FALSE, or window focusing will not work.
1489
1490 2001-05-11  Havoc Pennington  <hp@pobox.com>
1491
1492         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
1493         #54144
1494
1495         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
1496         bug #54330
1497
1498 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
1499
1500         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
1501         propagate exposes to NULL child.
1502
1503         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
1504         against not having one of the scrollbars.
1505
1506         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
1507         we don't keep a mnemonic window if we have no mnemonic installed.
1508
1509 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
1510
1511         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
1512         it has the _important_ side effect of initializing a class.
1513
1514 2001-05-10  Alexander Larsson  <alexl@redhat.com>
1515
1516         * gdk/linux-fb/gdkprivate-fb.h:
1517         Make sure you can compile out the implementation/wrapper assert
1518         macros.
1519
1520         * gdk/linux-fb/gdkdrawable-fb2.c:
1521         Check implementation/wrappers, initialize type for pixmap dummys.
1522
1523         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
1524         Hide the cursor if reading from the screen.
1525
1526         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
1527         Fix sign bug in tiling code.
1528
1529         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
1530         Handle background pixmaps.
1531
1532 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
1533
1534         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
1535         function to let user control where columns are dragged.
1536
1537         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
1538         Escape is pressed.
1539
1540 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
1541
1542         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
1543         "columns_changed" signal.
1544         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
1545         motion code to draw arrows to the side if indicator is outside the
1546         widget.
1547         (gtk_tree_view_map_expanded_rows): Implement.
1548
1549 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1550
1551         * demos/testpixbuf-save.c: 
1552         * demos/testpixbuf-drawable.c:
1553         Include gdkfb.h on linux-fb.
1554
1555 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1556
1557         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
1558         New function for getting toplevel window at position.
1559         (gdk_drag_find_window): Use get_toplevel_window () instead
1560         of gdk_window_get_pointer(). (gdk_drag_status): Use
1561         correct context for getting window.
1562
1563         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
1564         g_strdup the atom name.
1565
1566         * gdk/linux-fb/gdkwindow-fb.c:
1567         Costmetic fix.
1568
1569         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
1570         Add code for changing cursor on linux-fb backend (same as
1571         win32).
1572
1573 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
1574
1575         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
1576         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
1577         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
1578         report was not for the development branch of GTK+, but it applies
1579         anyways).
1580
1581 2001-05-04  Havoc Pennington  <hp@redhat.com>
1582
1583         * configure.in: fix some shell typos
1584
1585         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
1586
1587         * gtk/gtkimage.c: handle animations
1588
1589         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
1590         border_width * 2, not just border_width
1591
1592         * gtk/gtkscale.c: add "format_value" signal to allow people
1593         to override the way values are drawn.
1594         (gtk_scale_get_value_size): fix width/height mistake,
1595         and compute size from actual displayed text, not 
1596         from made-up text.
1597
1598         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
1599         signal registration
1600
1601         * tests/testtext.c: Add "Remove all tags" menu item for testing
1602
1603         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
1604
1605         * demos/gtk-demo/main.c (main): add hack so we can find modules
1606         without installing gtk
1607
1608         * demos/gtk-demo/textview.c (insert_text): demo font scaling
1609
1610         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
1611         factor)
1612         (gtk_cell_renderer_text_set_property): remove some bogus
1613         g_object_notify
1614
1615         * gtk/gtktexttag.c: add "scale" property which is a font scaling
1616         factor
1617
1618         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
1619         to layout
1620
1621         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
1622         gtk_text_iter_is_first
1623
1624 2001-01-06  Hans Breuer  <hans@breuer.org>
1625
1626         * gdk/gdk.def : updated exports
1627
1628         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
1629         gdk won't compile anymore
1630  
1631         * gdk/win32/gdkevents-win32.c : initialize ret_val when
1632         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
1633         Improved gdk_flush () to not only do pending drawing operations
1634         but also process all currently pending events. This should make
1635         the behaviour more similar to the X11 version.  
1636
1637         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
1638         option needs to be set even if there is no GDK_GC_BACKGROUND.
1639         (gdk_win32_hdc_get) : use predraw_set_background () independent
1640         of value_mask. This allows to draw dashed lines leaving the original
1641         background intact.
1642
1643         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
1644         after processing, because we can't reuse it as the X11 version does.
1645
1646         * gtk/gtk.def : updated exports
1647
1648         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
1649         would like to get rid of this file again, and use straight
1650         makefile.msc again, as the other Gtk+ subdirs do)
1651
1652         * test/makefile.msc (new file) : build the test apps here
1653
1654 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
1655
1656         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
1657         strike-through setting
1658         (gdk_draw_layout_line_with_colors): Render strike-through
1659
1660 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
1661
1662         * Release 1.3.5
1663
1664         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
1665
1666         * NEWS: Updated
1667
1668         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
1669         Makefile breakage.
1670
1671 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
1672
1673         * demos/gtk-demo/images.c (progressive_timeout): Fix
1674         typo in filename.
1675
1676         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
1677         out FIXME warning; just too annoying.
1678
1679 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
1680
1681         * gdk/linux-fb/gdkcolor-fb.c:
1682         Better error messages.
1683
1684         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
1685         Initialize abs_x and abs_y.
1686         
1687         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
1688         Correct handling of stipple offset.
1689
1690         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
1691         Treat directcolor framebuffers as truecolor.
1692         
1693 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
1694
1695         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
1696         dependency on Atk for accessibility support.
1697
1698         * configure.in **/Makefile.am: Major reworking of substituted
1699         variables for CFLAGS/LIBS to make a lot more sane and 
1700         keep the the compile/link lines a bit shorter.
1701
1702         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
1703
1704 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
1705
1706         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
1707         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
1708         use _gtk_boolean_handled_accumulator.
1709
1710 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
1711
1712         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
1713         to fix things so clicking inside selection leaves cursor
1714         at point where clicked. (#50324)
1715
1716         * gtk/gtksettings.c (gtk_settings_class_init): Restore
1717         sane value for default double click time.
1718
1719         * tests/testtext.c (test_init): Really path to input modules.
1720
1721 2001-05-03  Sven Neumann  <sven@convergence.de>
1722
1723         * demos/testpixbuf-save.c: include target-specific headers as
1724         done in testpixbuf-drawable.c
1725
1726 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
1727
1728         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
1729         new_text_length appropriately when we run into the 
1730         size limit for the entry. (#53445, reported by Jeff Franks)
1731
1732         * tests/testgtk.c (create_entry): Remove most of the
1733         property toggle buttons. Replace with a "Props" button
1734         that brings up a property editor.
1735
1736         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
1737         Split the property editor code out for reuse, improve.
1738
1739 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
1740
1741         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
1742         trap errors around calls to XSetInputFocus since we have
1743         no way of knowing reliably whether we are viewable or
1744         not. (#53947)
1745
1746 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
1747
1748         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1749         fix bug in dropping columns.  Moving columns now basically works
1750         modula some fine tuning.
1751
1752 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
1753
1754         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
1755         autoscroll support.  It mostly works, but could use some fine
1756         tuning.
1757         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1758         Actually move the column.
1759
1760 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
1761
1762         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
1763           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
1764           New default theme! A slighly improved version of the 2.0 Raleigh
1765           theme, with Windows-esque focus/drawing default. 
1766           (GtkWidget::interior_focus defaults to TRUE.)
1767
1768         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
1769
1770 2001-04-30  Havoc Pennington  <hp@pobox.com>
1771
1772         * tests/testtext.c (line_numbers_expose): fix to work with
1773         gtk_paint_layout change
1774
1775 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
1776
1777         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
1778           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
1779           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
1780           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
1781
1782         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
1783           with GtkWidget::interior_focus = TRUE better.
1784
1785         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
1786         ::default_outside_border for more flexibility.
1787
1788         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
1789         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
1790         change that had to be made with g_object_get.
1791
1792 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
1793
1794         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
1795         (gtk_tree_view_move_column_after): Clean up interface. 
1796
1797 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
1798
1799         * gtk/gtkpacker.h:
1800         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
1801          to gtkenum.h.
1802
1803         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
1804         handled in switch).
1805
1806         * gtk/Makefile.am:
1807         (gtk.defs): generate enum portions with  glib-mkenums.
1808         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
1809         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
1810         
1811         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
1812         addition.
1813
1814         * docs/Changes-2.0.txt: keep a note on signal handlers now
1815         not getting emitted during the emission they were connected within.
1816
1817 2001-04-28  Havoc Pennington  <hp@pobox.com>
1818
1819         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
1820
1821 2001-04-24  Havoc Pennington  <hp@redhat.com>
1822
1823         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
1824         (gtk_text_layout_move_iter_to_next_line): fix these two for
1825         invisible text, lots of other stuff still hosed.
1826
1827         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
1828         new function, replaces the get/set palette stuff. This function 
1829         is intended for use by libgnomeui which should set the hook to a
1830         thing which sets the palette in GConf, and we need the
1831         GConf-to-xsettings proxy which will result in the change being
1832         propagated back to the GTK app.
1833
1834         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
1835         about unusable signals that it may be because the signal has 
1836         parameters.
1837
1838         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
1839         style, otherwise gtkrc.c won't know to create a new GtkStyle for
1840         it.
1841         (gtk_widget_modify_color_component): call
1842         gtk_widget_modify_style() so the rc style will get copied.
1843         (gtk_widget_modify_font): ditto
1844
1845         * gtk/gtkrc.c: make a couple variables static
1846
1847         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
1848         help button by default, since it does nothing
1849
1850         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
1851         around with UI
1852
1853         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
1854         so we can have tooltips
1855
1856         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
1857         can have tooltips
1858
1859         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
1860         GDK_ENABLE_BROKEN, because its memory behavior is completely
1861         hosed.
1862
1863         * gtk/gtknotebook.c: remove key press handler, replace with
1864         binding set, add numeric keypad support
1865
1866         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
1867
1868         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
1869
1870         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
1871         addition to plain Delete
1872
1873         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
1874         GDK_KP_Enter in addition to GDK_Return
1875
1876         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
1877         activate on entry instead of key press
1878         (gtk_font_selection_on_clist_key_press): get
1879         rid of this signal handler, not needed with new font sel.
1880
1881         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
1882         no-longer-needed emit_stop_by_name(), just return TRUE
1883
1884         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
1885         cruft, this widget is no longer focusable.
1886
1887         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
1888         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
1889         move_slider action signal, add binding set for vscale/hscale, in
1890         the process support numeric keypad
1891
1892         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
1893         make GDK_Return and GDK_KP_Enter activate the entry via 
1894         binding set, instead of hardcoded.
1895
1896 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
1897
1898         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
1899         code.  Some documentation added.
1900
1901 2001-04-27  Havoc Pennington  <hp@redhat.com>
1902
1903         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
1904
1905         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
1906
1907         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
1908         line/para separators
1909         (gtk_entry_create_layout): set single paragraph mode on the layout
1910
1911         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
1912         spacing between the image and label; instead, inside a button box 
1913         the button will get extra space that will go there, but if people 
1914         configure button box for 0 chubbiness, then there's no spacing.
1915
1916         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
1917         and min/max size style properties, so people can tune their
1918         chubbiness.
1919
1920         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
1921         functions
1922
1923         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
1924         space_style, and button_relief into style properties, remove
1925         functions for setting them
1926         
1927         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
1928         it back down
1929
1930         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
1931         types from gtk_widget_style_get
1932
1933         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
1934         with a style property.
1935
1936         * gdk/x11/gdkevents-x11.c: namespace the settings
1937
1938         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
1939
1940         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
1941         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
1942         be used. Also, translate doc strings for settings. Also, namespace
1943         the double-click-time property. Also, remove bell properties crap.
1944
1945 2001-04-27  Sven Neumann  <sven@gimp.org>
1946
1947         * Makefile.am: before creating links, check if pkg-config files
1948         exist for the default target. Otherwise link to the pkg-config files
1949         that got installed with this build.
1950
1951 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
1952
1953         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
1954         dragging code.  Revealed some (potential) GdkWindow bugs.
1955
1956         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
1957         _gdk_window_init_position to the end of reparent to fix the case
1958         of reparenting when new_x != old_x and new_y != old_y.
1959
1960 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
1961
1962         * gtk/gtkentry.c (strstr_len): Fix optimization that
1963         was correct for the use here, but completely incorrect
1964         in general.
1965
1966 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
1967
1968         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
1969         until patch adding gtk_window_set_size() is recommitted. 
1970
1971         * **Makefile.am configure.in gdk/x11/gdkim-11.c
1972           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
1973           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
1974           (#10784)
1975
1976 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
1977
1978         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
1979         window == NULL in a number of cases.
1980
1981         * tests/testdnd.c: Set module path for gdk-pixbuf.
1982
1983 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
1984
1985         * gtk/Makefile.am xembed.h: File containing #defines
1986         for XEMBED protocol.
1987
1988         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
1989
1990         - Change protocol from old plug/socket specific protocol
1991           to XEMBED draft
1992         - Various fixes to work with GTK+-2.0
1993
1994         Still quite a bit of work to do here to handle initiation
1995         from the socket side (as specified by XEMBED), to handle
1996         the more advanced features of XEMBED, and to figure out
1997         a good way to handle same-app embedding with less overhead
1998         than using full XEMBED.
1999
2000 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
2001
2002         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
2003         track of whether the toplevel has the focus; only send
2004         focus-in events to the focus widget when the window
2005         actually has the focus.
2006
2007 2001-04-25  Havoc Pennington  <hp@pobox.com>
2008
2009         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
2010         were still in the header
2011
2012 2001-04-24  Alexander Larsson  <alexl@redhat.com>
2013
2014         * gtk/gtkclist.[ch]:
2015         * gtk/gtkctree.c:
2016         When there is a row highlighted for D'n'D it must alse
2017         be painted hightlighted on exposes. Otherwise exposes from
2018         the icon being dragged will mess up the hightlight.
2019
2020         * gtk/gtkfontsel.c:
2021         Don't recenter selected font when exposing the font family
2022         clist. This means you can now actually scroll the font family
2023         list.
2024
2025         * gtk/gtknotebook.c:
2026         Fix focus movement on scrolling tabs that are placed on the left
2027         and right.
2028
2029 2001-04-21  Havoc Pennington  <hp@pobox.com>
2030
2031         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
2032         empty/invisible lines.
2033
2034         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
2035         (gtk_text_iter_set_visible_line_index): new functions to set
2036         indexes excluding invisible text
2037
2038         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
2039         index
2040
2041         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
2042         (gtk_text_iter_get_visible_line_offset): new functions to 
2043         get indexes excluding invisible text
2044
2045         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
2046         bunch of extra padding that served no purpose
2047
2048         * gtk/gtkdialog.c: Make all the spacings configurable via style
2049         properties, for chubbiness configuration in themes
2050
2051         * tests/testtext.c: fix path to the immodules.
2052         
2053 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
2054
2055         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
2056         got munched by #endif.
2057
2058         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
2059
2060         * gtk/gtktreeview.c: Refactored code to clean up a number of
2061         events.
2062
2063         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
2064         values to make consistent with other functions.  Spotted by Jeff
2065         Franks <jcf@tpg.com.au>.
2066
2067         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
2068         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
2069
2070 2001-04-23  Sven Neumann  <sven@gimp.org>
2071
2072         * gtk/Makefile.am
2073         * gtk/gtkplug.c
2074         * gtk/gtksocket.c: on request of Owen, reverted my last change 
2075         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
2076
2077 2001-04-23  Sven Neumann  <sven@gimp.org>
2078
2079         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
2080         compile for non-X11 targets again
2081
2082 2001-04-20  Alexander Larsson  <alexl@redhat.com>
2083
2084         * gtk/gtkcolorsel.[ch]:
2085         API Change. Take GdkColor arguments instead of gdouble *.
2086         Leave the old gtk_color_selection_set_color for compatibility,
2087         but marked deprecated.
2088         Do correct rounding when converting RGB <-> HSV.
2089         
2090         * gtk/gtkcolorseldialog.c:
2091         * tests/testgtk.c:
2092         Use new GtkColorSelection API.
2093
2094         * gtk/gtkhsv.c:
2095         Fix problem selecting colors in triangle when Hue is 330.
2096         Fix some black dots around the HSB triangle.
2097         
2098         * gtk/gtkfilesel.c:
2099         return FALSE from the focus_in_event handler to fix focus problems.
2100
2101 2001-04-18  Havoc Pennington  <hp@redhat.com>
2102
2103         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
2104         set, so keybindings are configurable    
2105         (gtk_window_activate_default): Change to activate the focus widget
2106         instead if there's a focus widget, to be consistent with the
2107         behavior that previously existed in key_press_event
2108
2109 2001-04-18  Havoc Pennington  <hp@redhat.com>
2110
2111         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
2112
2113 2001-04-18  Havoc Pennington  <hp@redhat.com>
2114
2115         Close bug #50615:
2116         
2117         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
2118         the layout
2119
2120         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
2121
2122         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
2123
2124         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
2125         
2126         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
2127         to blue for base, in addition to bg
2128         
2129 2001-04-18  Havoc Pennington  <hp@redhat.com>
2130
2131         * tests/testgtk.c (create_image): allow shrinking the image window
2132         to test that we clip to allocation.
2133
2134         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
2135         #9845
2136
2137         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
2138
2139 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
2140
2141         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
2142         mode on shm segments to 0600. We'll see who complains.
2143
2144         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
2145         _gdk_windowing_window_destroy() AFTER recursing through
2146         children.
2147
2148         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
2149         testsocket_child on X.
2150
2151         * tests/testsocket[_child].c: Fix uses of
2152         gtk_window_get_default_accel_group().
2153
2154         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
2155
2156         * gdk/gdkimage.c: (gdk_image_get):
2157         Deal with the possibility that XGetImage() might return NULL.
2158         Allocate the GdkImagePrivate structure only after XGetImage()
2159         succeeds in order not to dereference a NULL ximage pointer.  This
2160         prevents a core dump when XGetImage() fails - which is unlikely,
2161         but can happen due to race conditions accessing the geometries of
2162         drawables.  An x error will still be triggered, but the gdk image
2163         wrapper at least wont seg fault.
2164         
2165 2001-04-18  Havoc Pennington  <hp@redhat.com>
2166
2167         * gtk/gtkimage.c: fix to properly queue resizes when the image is
2168         set
2169
2170         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
2171         if the insertion point isn't editable
2172
2173         * demos/gtk-demo/images.c: Added a GtkImage demo
2174
2175         * demos/gtk-demo/drawingarea.c: drawing area demo
2176         
2177         * demos/gtk-demo/menus.c (create_menu): cleanups
2178
2179 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
2180
2181         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
2182           gdk/x11/gdkevents-x11.c: Introduce an extra child
2183         of toplevel windows that serves to hold the focus to
2184         avoid events being delivered to embedded windows.
2185
2186         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
2187         some extra variables to clean up code and reduce the
2188         number of casts.
2189
2190         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
2191         guint for 1 bit bit fields, not gboolean.
2192
2193 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
2194
2195         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
2196         not TRUE. (Fixes #52925)
2197
2198 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
2199
2200         * Released 1.3.4
2201
2202         * NEWS: Updated
2203
2204         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
2205         use GTK_TYPE_ENUM.
2206
2207 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
2208
2209         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2210
2211         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
2212         names to compatibility #defines so docs work.
2213
2214         * gtk/gtkenums.h: Remove GtkMenuFactoryType
2215
2216         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
2217
2218         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2219
2220         * tests/testgtkrc: No magenta cursors, please.
2221
2222         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
2223
2224         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
2225         
2226 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
2227
2228         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
2229         grabs, since they are no longer necessary.
2230
2231         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
2232         by signal_connect() and call gtk_button_pressed() rather
2233         than signal_connect_after().
2234
2235         * tests/testgtk.c: Restore radio menu items to combos 
2236         since they'll look OK with Raleigh, and it is easier
2237         than finishing the process of removing them that was
2238         started earlier.
2239
2240 2001-04-16  Hans Breuer  <hans@breuer.org>
2241
2242         * gdk/gdk.def :
2243         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
2244
2245         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
2246         we are interested in the functions return value not the function address
2247         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
2248
2249         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
2250
2251 2001-04-14  Hans Breuer  <hans@breuer.org>
2252
2253         * gdk/gdk.def :
2254         * gdk/makefile.msc : updated
2255
2256         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
2257         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
2258         (the testgtk::text backgound pixmap is drawn again)
2259         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
2260         Win32 Pango change
2261         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
2262
2263         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
2264         Not sure if the returned settings have the right unit, because I couldn't
2265         find any docs for the X version ...
2266
2267         * gtk/gtk.def :
2268         * gtk/makefile.msc.in : updated
2269
2270 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
2271
2272         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
2273         wording problems. (Compared to version from Johannes Stezenbach to
2274         check correctness.)
2275
2276 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
2277
2278         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
2279         this to compile.
2280
2281 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
2282
2283         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
2284         not pixbufpos.
2285
2286         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
2287
2288         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
2289         are unsigned insts, therefore use g_value_set_uint.
2290         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
2291
2292 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
2293
2294         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
2295
2296         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
2297         GTK_TYPE_STRING.
2298
2299         * gtk/gtktreeview.c: New functions to allow initial column
2300         dragging work.
2301
2302         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
2303
2304         * tests/testtreefocus.c: give dave some love.
2305
2306         * tests/testtreesort.c: Modify test to check really long samples.
2307
2308 2001-04-11  Alexander Larsson  <alexl@redhat.com>
2309
2310         * gtk-2.0.m4: Pass pkg-config options
2311         before the other args so it works even if
2312         POSIXLY_CORRECT is set.
2313
2314 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
2315
2316         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
2317         0, interface 0).
2318
2319 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
2320
2321         * gtk/gtkcalendar.c (gtk_calendar_button_press):
2322         check for action_func != NULL
2323
2324 2001-04-04  Sven Neumann  <sven@gimp.org>
2325
2326         * tests/testgtk.c (test_init): corrected path to gtk.immodules
2327
2328 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
2329
2330         * Released Gtk+-1.3.3.
2331
2332 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
2333
2334         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
2335
2336 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
2337
2338         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
2339         files to/from source dir. (if we don't stay in builddir, we
2340         can't reach make-inline-pixbuf.
2341
2342         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
2343         deps.
2344
2345         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
2346         ages 0).
2347
2348 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
2349
2350         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
2351         moved to the GtkTreeSortable interface.
2352
2353         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2354         Make more efficient (fixes #50262).
2355
2356 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
2357
2358         * NEWS: Updated.
2359
2360         * configure.in: Remove support for uninstalled glib.
2361
2362         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
2363         so as not to stop emission.
2364
2365         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
2366         is no longer supported.
2367
2368         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
2369         into tests, change build order to build modules before
2370         gtk/.
2371
2372         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
2373         to here.
2374
2375 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
2376
2377         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
2378         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
2379         GPatternSpec. this is actually unlikely to cause breakage in
2380         third-party apps since except for gle, pretty much ever caller
2381         passes NULL here.
2382
2383         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
2384
2385         * *.c: use g_pattern_*() API.
2386
2387         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
2388
2389         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
2390         directions aren't passed in.
2391
2392         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
2393         functionality to be usable from gtkstyle.c as well, give precedence
2394         for conversion to user-supplied parsers.
2395         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
2396
2397         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
2398         _gtk_settings_parse_convert() for rcporperty value conversion.
2399
2400 2001-04-03  Alexander Larsson  <alexl@redhat.com>
2401
2402         * gdk/linux-fb/gdkevents-fb.c:
2403         Add empty gdk_setting_get().
2404
2405 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
2406
2407         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
2408         variable names.
2409         
2410         * gtk/makeenums.pl: touch this so enum files get remade.
2411
2412 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
2413
2414         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
2415         work again when not sorted.
2416
2417         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
2418         and "expand_row" signal, closing bug 52578.
2419
2420         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
2421         support.
2422
2423         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
2424         support.
2425
2426 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2427
2428         * gdk/gdkevents.h: Add GdkEventSetting event for notification
2429         of changes to system settings, gdk_setting_get() to retrieve
2430         a single system setting.
2431
2432         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
2433         to the draft XSETTINGS mechanism.
2434
2435         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
2436         XSETTINGS.
2437
2438         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
2439         of GDK settings changes to the GtkSettings object.
2440
2441         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
2442         double-click-timeout property to GDK.
2443
2444         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
2445         Define GDK boxed types here.
2446
2447         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
2448         gdk/gdkenumtypes.[ch] for enum definitions.
2449
2450         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
2451         * gtk/gtk-boxed.defs: Comment out GDK types
2452         * gtk/gtktypeutils.h: Remove GDK types
2453         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
2454
2455 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
2456
2457         * Applied patch from Ron Steinke to add signal accumulators
2458         so that signals with the convention 'TRUE return means
2459         handled' stop emission on a TRUE return.
2460
2461         * gtk/gtkmain.[ch]: Add private accumulator 
2462         _gtk_boolean_handled_accumulator, used throughout GTK+.
2463         
2464         * gtk/gtkspinbutton.c: Add accumulator for ::output.
2465
2466         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
2467         
2468         * gtk/gtkwidget.c: Add accumulators for event signals,
2469         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
2470         for ::mnemonic-activate.
2471
2472         * gtk/gtkwindow.c: Add accumulator for ::frame_event
2473
2474 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
2475
2476         * gtk/gtkwidget.c: Add missing include.
2477
2478 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
2479
2480         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
2481         marshaller.
2482
2483         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
2484         "changed" signal to "range_changed".
2485
2486         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
2487         removing a tree from one model would remove all trees from that
2488         model.
2489         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
2490         changed signal instead.
2491
2492 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
2493
2494         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
2495         chaining up to parent impl, since we have a INPUT_ONLY
2496         window.
2497
2498         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
2499         foreground color for the cursor.
2500
2501 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
2502
2503         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
2504         param spec when caching property values, since we unref it
2505         later when we free the style.
2506
2507         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
2508         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
2509
2510 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
2511
2512         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
2513         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
2514         stupidity.
2515
2516 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
2517
2518         [ First pass at adding style properties. Still needs some definite
2519         fine-tuning. ]
2520
2521         * gtk/gtkbutton.c: Add ::default_spacing style property.
2522          
2523         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
2524         ::indicator_spacing style properties.
2525
2526         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
2527         style properties.
2528
2529         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
2530         rather than a normal property.
2531
2532         * gtk/gtkwidget.c: Add an ::interior_focus style property to
2533         draw focus inside buttons, in the Windows/Java Metal/etc. style.
2534
2535         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
2536         Honor ::interior_focus.
2537         
2538         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
2539         TRUE.
2540
2541         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
2542         Add ::slider_width, ::trough_border, ::stepper_size,
2543         ::stepper_spacing style properties.
2544
2545         * gtk/gtkscale.[ch] Add ::slider-length style property.
2546
2547 2001-04-02 Alexander Larsson   <alexl@redhat.com>
2548
2549         * gdk/linux-fb/gdkwindow-fb.c:
2550         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
2551         warnings that were spewed on startup.
2552
2553         * gtk/gtkwindow-decorate.c:
2554         gtk_window_reposition -> _gtk_window_reposition
2555
2556 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
2557
2558         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2559         Add boxed type for GtkRequistion. Use it for ::size-request.
2560
2561         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2562         Add a new GtkBorder structure useful for geometry properties
2563         for widgets. Add corresponding GTK_TYPE_BORDER.
2564         
2565         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
2566         Support automatic parser selection like
2567         gtk_settings_install_property_parser().
2568
2569         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
2570         functionality for use by gtk_widget_class_install_style_property.
2571         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
2572
2573 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
2574
2575         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
2576         g_param_spec_unichar(). 
2577
2578 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
2579
2580         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
2581         _NET window managers.
2582
2583         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
2584
2585 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
2586
2587         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
2588         bad needs to be nuked, not just deprecated.
2589
2590         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
2591         gtk_widget_popup().
2592
2593         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
2594         
2595         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
2596         widget.
2597         
2598         * docs/Changes-2.0.txt: updates.
2599         
2600 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
2601
2602         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
2603         for (i = 0; i < 100; i ++)
2604           g_print ("I will confirm it compile before committing\n");
2605
2606 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
2607
2608         * gtk/gtktreestore.c: Initial work on implementing the
2609         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
2610
2611 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
2612
2613         * gtk/gtkwidget.c: fixed a bunch of notifications, added
2614         reference counts around emissions where the widget is used afterwards.
2615         added freeze/thaws around multiple properties being notified.
2616         (_gtk_widget_get_aux_info): cleanups.
2617         
2618         * gtk/gtksettings.c (gtk_settings_install_property): provide
2619         default parsing functions for gdkcolor, enums and flags.
2620
2621         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
2622         applied by owen.
2623         backed out gtk_window_get_location(), gtk_window_set_location(),
2624         gtk_window_get_size() and gtk_window_set_size(), these
2625         have to be sorted out wrg x/y/width/height/default_with/default_height
2626         properties.
2627         kept a flag in GtkWindowGeometryInfo to handle user
2628         resetting default sizes.
2629         cleaned up ZVT comments.
2630         bunch of assorted bug fixes, notification fixes.
2631         (_gtk_window_reposition): make this a really internal function.
2632         
2633         * gtk/testgtk.c: fixups.
2634         
2635 2001-03-31  Hans Breuer  <hans@breuer.org>
2636
2637         * config.h.win32.in : disable USE_MMX for msvc build cause
2638         the assembler doesn't fit and is out of my scope. Disable
2639         USE_GMODULE for msvc build as wel. The right way to share
2640         binaries on win32 would be to use libtiff.dll etc. To reduce
2641         installation hassles IMO it's better to include all fileformats
2642         builtin to gdk-pixbuf
2643
2644         * gdk-pixbuf/makefile.msc : new file
2645
2646         * gdk/gdk.def : updated
2647
2648         * gdk/win32/gdkevents-win32.c : don't erase the background if
2649         .no_bg is set. It improves the scrolling (e.g. of testgtk main
2650         buttons
2651         * gdk/win32/gdkgeometry-win32.c : added comment about the above
2652
2653         * gdk/win32/gdkwindow-win32.c : added three new functions like
2654         the X version. Only one is implemented, because the other two
2655         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
2656         be default behaviour on win32 anyway ...
2657
2658         * gtk/gtk.def : updated
2659
2660         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
2661         from where it was built and add an additional rule to automagically
2662         build gtkmarshal.[hc]
2663
2664         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
2665         before array access for the current entry isn't finished
2666
2667         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
2668         use g_return_val_if_fail
2669
2670         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
2671         for the static array, but let the compiler calculate it. It
2672         makes me wonder if gcc isn't capable to catch bugs like this ...
2673
2674 2001-03-31  James Henstridge  <james@daa.com.au>
2675
2676         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
2677         constant "-1" in the aux info structure.
2678
2679 2001-03-30  Alexander Larsson  <alexl@redhat.com>
2680
2681         * gtk/gtkbutton.c (gtk_button_get_property):
2682         * gtk/gtklabel.c:
2683         Remove leaks.
2684         
2685         * gtk/gtkcontainer.c:
2686         * gtk/gtkhscale.c:
2687         * gtk/gtkhscrollbar.c:
2688         * gtk/gtklayout.c:
2689         * gtk/gtkmisc.c:
2690         * gtk/gtkprogress.c:
2691         * gtk/gtkprogressbar.c:
2692         * gtk/gtkrange.c:
2693         * gtk/gtktable.c:
2694         * gtk/gtkviewport.c:
2695         * gtk/gtkvscale.c:
2696         * gtk/gtkvscrollbar.c:
2697         * gtk/gtkwidget.c:
2698         Property patches, based on patches from John Margaglione and Lee Mallabone.
2699
2700 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
2701
2702         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
2703         adjustment. Cleaned redundant preconditions (spin != NULL). Added
2704         inline API function docs.
2705         (gtk_spin_button_new_with_range): New convenience constructor.
2706         (gtk_spin_button_set_increments): New adjustment helper.
2707         (gtk_spin_button_set_range): New adjustment helper.
2708
2709         * gtk/testgtk.c : added test of the new convenince constructor and
2710         value_changed signals.
2711
2712 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
2713
2714         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
2715         listen to the reorder signal.
2716
2717 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
2718
2719         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
2720         to get the aux info structure fo the widget.
2721
2722         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
2723         above function.
2724
2725         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
2726
2727         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
2728         to get the size of the window manager frame, basically the same
2729         code that gdk_window_get_root_origin() had
2730         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
2731
2732         * gtk/gtkwindow.c (gtk_window_set_default_size): use
2733         gdk_window_resize() if the window is realized and resizeable
2734
2735         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
2736         typo so that setting gravity works
2737
2738         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
2739         allocation if auto_shrink is on, even if the default size
2740         has not changed.
2741
2742         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
2743         g_return_if_fail
2744
2745 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
2746
2747         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
2748         reordering/sorting work.  Now pretty much works.
2749
2750         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
2751         reorder mostly work.  Still need to get the parity correct.
2752
2753         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
2754         signal, so I can listen for the sort_column_changed signal so I
2755         can change my "sort_indicator" property.  Cool.
2756
2757 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
2758
2759         [ Patch from Havoc Pennington, hp@redhat.com ]
2760
2761         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
2762         Add functions gdk_window_begin_resize_drag/begin_move_drag
2763         to start resizing or moving a toplevel window. This
2764         is done either using the _NET_WM_MOVERESIZE protocol,
2765         or, if that isn't present, by emulation.
2766
2767         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
2768         to export the above to GTK+-land.
2769
2770         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
2771         
2772         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
2773         Move this function into gdkwindow, since we need it
2774         when implementing fallback resizing.
2775
2776         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
2777         Fix typo when setting gravity.
2778
2779         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
2780         Add an optional (but on by default) resize grip for resizing 
2781         the parent window.
2782
2783 01-03-29  Alexander Larsson  <alexl@redhat.com>
2784
2785         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
2786         Don't return TRUE from the event handler, that blocks all
2787         event signals on the tooltip widget. Now you can press buttons
2788         in toolbars again.
2789
2790 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
2791
2792         * gtk/testtext.c (create_buffer): Add missing NULL on
2793         valist.
2794
2795         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
2796         c-n-p problem with INCONSISTENT property.
2797
2798         [ Patch from Havoc Pennington  <hp@redhat.com> ]
2799
2800         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
2801         hook.
2802
2803         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
2804         signal as a hook for extending the default popup menu
2805
2806         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
2807         use radio menu items for the input method menuitems
2808
2809         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
2810         inserted unicode from Ctrl-Shift-hex input method
2811
2812         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
2813         validatation here, already done at GtkTextBuffer level.
2814
2815         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
2816         popup_menu run action signal and Shift+F10 and Menu keybindings.
2817
2818         * gtk/gtkentry.c: implement a default handler for popup_menu
2819
2820         * gtk/gtktextview.c: implement a default handler for popup_menu
2821
2822         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
2823         from a key event
2824         
2825         * gtk/gtklabel.c: remove "trailer" cruft
2826
2827 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
2828
2829         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
2830         handle reordering of trees.  Seems to mostly work w/ the exception
2831         of the parity flag.
2832
2833         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
2834         signal.
2835
2836 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
2837
2838         * gtk/gtkwidget.h: c++ fixes.
2839
2840 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
2841
2842         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
2843         memory.
2844
2845 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
2846
2847         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
2848         Nils Barth fixing event return values. (#51041)
2849
2850         * gtk/gtkwidget.c: Fix some return values for default
2851         functions.
2852
2853         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
2854         return values for trough_keys functions.
2855
2856         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
2857         value for add_accelerator (shoudl have been a void
2858         return.)
2859
2860         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
2861         Fix return type of EVENT.
2862
2863         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
2864         signal return a boolean.
2865
2866 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
2867
2868         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
2869         reordered signal.
2870
2871         * tests/testtreesort.c (main): fix spelling.
2872
2873 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
2874
2875         * gtk/gtkliststore.c: More work on implementing sortable
2876         interface.
2877
2878 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
2879
2880         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
2881         reference the widgets in the resulting list. (#11821)
2882         This makes this consistent with gtk_container_children.
2883
2884         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
2885         uses of gtk_window_list_toplevels.
2886
2887 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
2888
2889         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
2890         a virtual function to set whether the IM context should use 
2891         the preedit string. (#51922)
2892         
2893 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
2894
2895         * gdk/gdkpango.h: Remove stale FIXME comment.
2896
2897 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
2898
2899         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
2900         Fixed bug that returned NULL if a filename was selected.
2901
2902 2001-03-24  Havoc Pennington  <hp@pobox.com>
2903
2904         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
2905         to contain the word "theme"
2906
2907 2001-03-24  Havoc Pennington  <hp@pobox.com>
2908
2909         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
2910         slower but finer-grained
2911         (gtk_hsv_focus): get initial focus on the ring or triangle 
2912         according to tab direction
2913
2914         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
2915
2916 2001-03-23  Havoc Pennington  <hp@pobox.com>
2917
2918         * gtk/gtkhsv.c: make this somewhat key-navigable
2919
2920         * gtk/gtkfontsel.c: mnemonics
2921
2922         * gtk/gtkgamma.c: mnemonics
2923
2924         * gtk/gtkcolorsel.c: add mnemonics to labels
2925
2926 2001-03-22  Havoc Pennington  <hp@pobox.com>
2927
2928         Applied big patch from Seth Lytle to fix event handler return
2929         values, slightly modified.
2930
2931         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
2932         handled.
2933         (gtk_calendar_key_press): return TRUE for GDK_space triggers
2934         select_day
2935
2936         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
2937         (gtk_clist_button_release): return TRUE if handled
2938
2939         * gtk/gtkcolorsel.c (mouse_release):
2940         (palette_activate): 
2941         (palette_press): 
2942         (palette_new): 
2943         (mouse_press): 
2944         (get_screen_color): 
2945         fixed return type (void to gboolean), return TRUE,
2946         added GTK_SIGNAL_FUNC cast
2947
2948         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
2949         (void to gboolean), and return TRUE
2950         (gtk_combo_button_release): changed return value to TRUE after
2951         gtk_grab_add on combo->popwin
2952
2953         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
2954         collapse or expand
2955
2956         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
2957         button/motion
2958
2959         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
2960         press/release and motion that trigger act
2961
2962         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
2963
2964         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
2965         for GDK_Return
2966         
2967         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
2968         (gtk_list_button_release): return TRUE if selection
2969
2970         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
2971         press
2972
2973         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
2974         (gtk_menu_shell_button_release): chain parent_menu_shell retval
2975
2976         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
2977         nothing triggered
2978         (gtk_notebook_button_release): return TRUE if we do anything
2979
2980         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
2981         (gtk_spin_button_button_release): return TRUE or chained retval
2982
2983         * gtk/gtktext.c (gtk_text_button_press): 
2984         (gtk_text_button_release): return TRUE
2985         (gtk_text_key_press): remove redundant retval code
2986         
2987         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
2988         and sensitive
2989         (gtk_tree_item_subtree_button_click): changed type to gint, and return
2990         TRUE if sensitive
2991
2992         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
2993         return TRUE
2994
2995 2001-03-23  Havoc Pennington  <hp@redhat.com>
2996
2997         * gtk/testgtk.c: fix warnings
2998
2999         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
3000
3001         * gtk/gtktextview.c: fix warnings
3002
3003         * gtk/gtktext.c (find_cursor_at_line): fix warning
3004
3005         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
3006
3007         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
3008         of this function
3009
3010         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3011         fix warning
3012
3013         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
3014
3015         * gtk/gtkfontsel.c: fix warning
3016
3017         * gtk/gtkcolorsel.c: fix warnings
3018
3019 2001-03-23  Havoc Pennington  <hp@redhat.com>
3020
3021         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
3022
3023         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
3024
3025         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
3026         and deprecated gtk_check_menu_item_set_show_toggle().
3027         
3028         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
3029
3030         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
3031
3032         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
3033
3034 2001-03-23  Havoc Pennington  <hp@redhat.com>
3035
3036         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
3037         some docs
3038
3039 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
3040
3041         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
3042         this.
3043
3044         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
3045         set_cell to set_value
3046
3047         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
3048         set_cell to set_value
3049
3050 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
3051
3052         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3053         fix braino.
3054         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
3055         support.
3056
3057         * gtk/gtktreeview.c: Addition of initial sortable support.
3058
3059         * gtk/gtktreestore.c: Addition of initial sortable support.
3060
3061         * gtk/gtkliststore.c: Addition of initial sortable support.
3062
3063         * gtk/gtkmarshal.list: yet another marshaller.
3064
3065         * gtk/gtktreedatallist.[ch]: shared code between the store models
3066         for handling sorting headers.
3067
3068 2001-03-22  Havoc Pennington  <hp@redhat.com>
3069
3070         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
3071         (gtk_container_unset_focus_chain): Add ability to override the 
3072         focus chain for a container explicitly
3073
3074 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
3075
3076         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
3077         added PROP_MNEMONIC_WIDGET.
3078
3079         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
3080         (gtk_window_remove_mnemonic): 
3081         (gtk_window_add_mnemonic): fixed assertions.
3082         (gtk_window_activate_mnemonic): constrain modifier checks to those
3083         permitted by gtk_accelerator_get_default_mod_mask().
3084         got rid of gtk_window_get_default_accel_group().
3085
3086         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
3087         activatable widgets either by focussing or a warning.
3088         added a signal accumulator to ::activate_mnemonic which stops the
3089         emission once a handler returned TRUE.
3090
3091 2001-03-22  Havoc Pennington  <hp@pobox.com>
3092
3093         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
3094         the stock item label
3095
3096         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
3097
3098         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
3099
3100         * demos/gtk-demo/*.c: Add mnemonics all over the place
3101
3102         * gtk/gtklabel.h: mark parse_uline deprecated
3103
3104 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3105
3106         * gtk/gtkitemfactory.[ch]:
3107         Add support for stock and normal imagemenuitems.
3108         
3109         * gtk/testgtk.c:
3110         Add some tests for mnemonics, stock toolbars, stock
3111         and image menuitems in itemfactory and gdk_window_scroll.
3112
3113 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3114
3115         * gtk/gtkbutton.[ch]:
3116         * gtk/gtkdialog.c:
3117         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
3118         removed accel_group argument. Renamed gtk_button_new_accel() to
3119         gtk_button_new_with_mnemonic() and removed accel_group argument.
3120
3121         * gtk/gtkcheckbutton.[ch]:
3122         New function gtk_check_button_new_with_mnemonic().
3123
3124         * gtk/gtkentry.c:
3125         Override activate_mnemonic and just grab focus.
3126
3127         * gtk/gtkitemfactory.c:
3128         Don't add menu uline accel group, instead use mnemonics support.
3129
3130         * gtk/gtklabel.[ch]:
3131         New support for mnemonics.
3132
3133         * gtk/gtkmarshal.list:
3134         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
3135
3136         * gtk/gtkmenu.[c]:
3137         * gtkmenushell.c:
3138         Use mnemonics instead of accel groups for uline
3139         support in menu items.
3140         Removed gtk_menu_get_uline_accel_group() and
3141         gtk_menu_ensure_uline_accel_group().
3142
3143         * gtk/gtkmenuitem.c:
3144         Override activate_mnemonic to handle switching between
3145         menu items if there are collisions.
3146         
3147         * gtk/gtknotebook.c:
3148         Connect to activate_mnemonic on the tab_label, so that
3149         activating it switches to that notebook page.
3150
3151         * gtk/gtkwidget.[ch]:
3152         Add activate_mnemonic signal. New function
3153         gtk_widget_activate_mnemonic() to emit it.
3154         Default implementation does activate/grab_focus.
3155
3156         * gtk/gtkwindow.[ch]:
3157         Add support for mnemonics in windows.
3158         New functions:
3159         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
3160         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
3161
3162         * gtk/testgtk.c:
3163         Update to function name changes.
3164         
3165 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3166
3167         * gtk/gtkimagemenuitem.[c]:
3168         Add gtk_image_menu_item_new_from_stock()
3169
3170 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
3171
3172         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3173         Fix buglet in meeting.
3174
3175 2001-03-19  Havoc Pennington  <hp@redhat.com>
3176
3177         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
3178         add a bunch of accessor functions. This is because we have
3179         reasonable expectations of extending what fields it contains in
3180         the future.
3181
3182         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
3183         changes
3184
3185         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
3186         GtkIconSource   
3187
3188 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
3189
3190         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
3191         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
3192
3193         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
3194           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
3195           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
3196           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
3197         Change float to double everywhere with the exception of 0<->1.0 alignment
3198         and GtkCurve.
3199
3200 2001-03-19  Tor Lillqvist  <tml@iki.fi>
3201
3202         * gdk/win32/gdkdrawable-win32.c
3203         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
3204         output.
3205
3206         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
3207         gdkwin32.h.
3208
3209 2001-03-18  Tor Lillqvist  <tml@iki.fi>
3210
3211         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
3212         print_event_state, print_event): Use preprocessor macro to make
3213         code more compact. Print also GDK_WINDOW_STATE events.
3214         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
3215         
3216         * gtk/gtk.def
3217         * gtk/makefile.mingw.in: Update.
3218
3219         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
3220         to catch also Cygwin.
3221
3222 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
3223
3224         * gtk/gtkspinbutton.[hc]: added rc-style argument
3225         GtkSpinButton::shadow_type.
3226         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
3227         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
3228         rc-style settings.
3229
3230         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
3231
3232         * gtk/gtkwidget.c: quark cleanups.
3233
3234         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
3235         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
3236         to create_rc_style() (we don't do cloning in standard OO sense).
3237         added per rc style properties.
3238         
3239         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
3240         property values and for caching those. some cleanups.
3241         
3242         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
3243         
3244         * gtk/gtksettings.[hc]: new file for global rc-file properties
3245         (at least currently, should get extended to support X properties
3246         and other communication mechanisms).
3247         
3248         * gtk/gtkwidget.[hc]: added style property support:
3249         (gtk_widget_class_install_style_property_parser): install style
3250         property pspec with parser function for rc-file values other
3251         than LONG, DOUBLE or STRING.
3252         (gtk_widget_class_install_style_property): same as above without
3253         parser (parsers are going to be needed quite infrequently).
3254         (gtk_widget_style_get_property): retrive style property value.
3255         (gtk_widget_style_get_valist): same as above with varargs support,
3256         has NOCOPY semantics.
3257         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
3258
3259 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
3260
3261         * demos/gtk-demo/main.c (row_activated_cb): modified to use
3262         "row_activated" signal.
3263
3264         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
3265         stupidity.  Lets actually pass in the row with this signal...
3266
3267 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
3268
3269         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
3270
3271         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
3272
3273         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
3274         everything into the ::destroy function, and freed a lot more.
3275
3276 2001-03-16  Havoc Pennington  <hp@redhat.com>
3277
3278         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
3279         instead of gint16, to avoid overflow issues, since sizes > 16-bit
3280         are now allowed.
3281
3282 2001-03-16  Havoc Pennington  <hp@redhat.com>
3283
3284         * Applied patch from Nils Barth (bug # 51041) to 
3285         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
3286         in various places.
3287
3288 2001-03-15  Havoc Pennington  <hp@redhat.com>
3289         
3290         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
3291         for properties to set on the tag.
3292
3293         * gtk/testtext.c: fixups to reflect create_tag change
3294         
3295         * gtk/gtktexttag.c (gtk_text_tag_set_property):
3296         background/foreground stipple are objects, not boxed.
3297
3298         * demos/gtk-demo/textview.c: intellihancing
3299
3300 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
3301
3302         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
3303         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
3304
3305 2001-03-16  Alexander Larsson  <alexl@redhat.com>
3306
3307         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
3308         Fix sign error with queued region translations.
3309
3310 2001-03-15  HideToshi Tajima  <tajima@happy>
3311
3312         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
3313         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
3314         * gtk/gtkentry.c (update_im_cursor_location): 
3315         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
3316         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
3317         set_cursor_pos to set_cursor_location in GtkInputContext class
3318
3319 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
3320
3321         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
3322         the location of the cell relative to its area.
3323         * gtk/gtkcell*: modified for above change
3324         * gtk/gtktreeview.c: modified for above change.
3325
3326 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
3327
3328         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
3329          (gtk_tree_view_finalize): actually unref the model.  Thanks to
3330         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
3331
3332 2001-03-14  Havoc Pennington  <hp@redhat.com>
3333
3334         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
3335         
3336         * gtk/gtk.h: remove gtkdata.h
3337
3338         * gtk/Makefile.am: remove gtkdata
3339         
3340         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
3341         not "disconnect" on the adjustments.
3342         
3343         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
3344         GtkData
3345
3346         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
3347         not GtkData
3348
3349         * configure.in: handle case where X render exists, but Pango lacks
3350         Xft support.
3351
3352 2001-03-15 Alexander Larsson  <alexl@redhat.com>
3353
3354         * gtk/gtktoolbar.[ch]:
3355         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
3356         to add stock items to toolbars.
3357
3358         * gtk/Makefile.am:
3359         Remove ../gdk/gdkim.h from gdk_headers.
3360
3361 2001-03-15  Sven Neumann  <sven@gimp.org>
3362
3363         * gdk/gdkim.h: removed
3364         
3365         * gdk/gdkprivate.h
3366         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
3367
3368 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
3369
3370         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
3371         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
3372         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
3373         set_cursor_pos() virtual method
3374
3375         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
3376         (gtk_im_context_xim_set_cursor_pos): add implementation for
3377         set_cursor_pos() method
3378
3379         * gtk/gtkentry.c (recompute_idle_func): set current cursor
3380         position to input methods
3381
3382 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
3383
3384         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
3385         code a lot.
3386
3387         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
3388         g_mem_chunk.
3389         (_gtk_tree_data_list_alloc): use g_mem_chunk.
3390         (_gtk_tree_data_list_node_to_value): Fix to switch on
3391         G_TYPE_FUNDAMENTAL.
3392         (_gtk_tree_data_list_value_to_node): Fix to switch on
3393         G_TYPE_FUNDAMENTAL.
3394         (_gtk_tree_data_list_node_copy): Fix to switch on
3395         G_TYPE_FUNDAMENTAL.
3396
3397 2001-03-12  Havoc Pennington  <hp@redhat.com>
3398
3399         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
3400         to convert to new property API. Also, change default_width and
3401         default_height get_property to return 0 as the flag value for
3402         "unset"; -1 is not a valid value for these fields.
3403
3404 2001-03-12  Havoc Pennington  <hp@redhat.com>
3405
3406         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
3407         enum with registration for icon sizes, instead of strings.
3408
3409         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
3410         gtkwidget.c: Fix to reflect GtkIconSize
3411         
3412 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3413
3414         Make GtkFB compile and link.
3415         
3416         * gdk/linux-fb/gdkdrawable-fb2.c:
3417         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3418         
3419         * gdk/linux-fb/gdkwindow-fb.c:
3420         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3421         Added gdk_window_shape_combine_region.
3422         Added assorted placeholders for unimplemented new GdkWindow API calls.
3423
3424 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3425
3426         * gtk/gtkfilesel.c:
3427         Add more test when converting filenames from/to utf-8.
3428         Don't allow entering text in the filename entry which isn't allowed in
3429         a filename. Just beep instead.
3430
3431 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3432
3433         * gtk/gtkclist.c:
3434         Scroll using gdk_window_scroll(). Don't wait for exposes.
3435         Move the column headers in an order that makes them flash less.
3436
3437 2001-03-10  Hans Breuer  <hans@breuer.org>
3438
3439         * gdk/gdk.def : updated
3440
3441         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
3442         to offseting the clip_mask at the right place
3443
3444         * gdk/win32/gdkwindow-win32.c : don't create background brushes
3445         for all the gdkClasses, especially not for the input_only case.
3446         Otherwise flickering wont be avoidable, because we don't get
3447         WM_ERASEBKGND message for these windows.
3448
3449         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
3450         and fixed massive redraw problems apparently triggered by Alexanders 
3451         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
3452         but it seems to work quite well :-)
3453
3454         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
3455         prototype
3456
3457 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
3458
3459         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
3460         (gtk_list_store_set_cell): Fix a stupid typo.
3461
3462 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
3463
3464         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
3465         select_all not work if you're in SINGLE mode (it doesn't make that
3466         much sense, anyway.)
3467
3468         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3469         handle types more sanely.
3470         (_gtk_tree_data_list_value_to_node): handle types more sanely.
3471         (_gtk_tree_data_list_node_copy): handle types more sanely.
3472
3473         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
3474         GValue better. Converts the type as well.
3475
3476         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
3477         GValue better. Converts the type as well.
3478
3479 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
3480
3481         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
3482         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
3483         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
3484         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
3485
3486         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
3487         gdk_im/gdk_ic.
3488
3489 2001-03-09  Hans Breuer  <hans@breuer.org>
3490
3491         * gdk/gdk.def : updated
3492
3493         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
3494         for their palette
3495
3496         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
3497         removing
3498
3499         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
3500         removing and implemented Havoc's GdkWindow state functions; 
3501         stick/unstick only as no-op, cause I don't know how to emulate 
3502         on win32 ...
3503
3504         * gtk/gtk.def : updated
3505
3506         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
3507
3508         * gtk/gtktypeutils.c : #include <string.h>
3509
3510         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
3511
3512 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
3513
3514         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
3515         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
3516         not a boxed.
3517
3518 2001-03-09  Alexander Larsson  <alexl@redhat.com>
3519
3520         * docs/Changes-2.0.txt:
3521         Document expose event->region change and that gtk_widget_event
3522         doesn't allow passing expose events.
3523
3524         * gdk/gdkevents.h:
3525         Add region to expose event.
3526         
3527         * gdk/gdkevents.c:
3528         Handle event->region in gdk_event_copy() and gdk_event_free().
3529
3530         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
3531         Generate expose_event->region when creating expose events.
3532
3533         * gdk/x11/gdkevents-x11.c:
3534         Generate expose events with regions when translating X events.
3535
3536         * gtk/gtkcontainer.[ch]:
3537         Default expose handler that propagates expose events to NO_WINDOW
3538         children. New function gtk_container_propagate_expose()
3539
3540         * gtk/gtkwidget.[ch]:
3541         Moved gtk_widget_event implementation to gtk_widget_event_internal.
3542         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
3543         expose events. New function gtk_widget_send_expose() to send expose
3544         events. New function gtk_widget_region_intersect() to calculate
3545         window/region intersections.
3546         
3547         * gtk/gtkmain.c (gtk_main_do_event):
3548         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
3549         Use gtk_widget_send_expose() to send expose events.
3550         
3551         * gtk/gtkbin.c:
3552         * gtk/gtkbox.c:
3553         * gtk/gtkfixed.c:
3554         * gtk/gtkimagemenuitem.c:
3555         * gtk/gtklist.c:
3556         * gtk/gtkpacker.c:
3557         * gtk/gtktable.c:
3558         * gtk/gtktree.c:
3559         Remove expose handler, using the default container implementation
3560         instead.
3561         
3562         * gtk/gtkbutton.c:
3563         * gtk/gtkcheckbutton.c:
3564         * gtk/gtkeventbox.c:
3565         * gtk/gtkfixed.c:
3566         * gtk/gtkhandlebox.c:
3567         * gtk/gtklayout.c:
3568         * gtk/gtklistitem.c:
3569         * gtk/gtkmenu.c:
3570         * gtk/gtkmenubar.c:
3571         * gtk/gtkmenuitem.c:
3572         * gtk/gtknotebook.c:
3573         * gtk/gtkoptionmenu.c:
3574         * gtk/gtkpaned.c:
3575         * gtk/gtkscrolledwindow.c:
3576         * gtk/gtktogglebutton.c:
3577         * gtk/gtktoolbar.c:
3578         * gtk/gtktreeitem.c:
3579         * gtk/gtkviewport.c:
3580         Chain expose handler to parent class handler. Use
3581         gtk_container_propagate_expose() to propagate exposes.
3582
3583         * gtk/gtkclist.c (check_exposures):
3584         * gtk/gtktext.c (process_exposes):
3585         Use gtk_widget_send_expose instead of gtk_widget_event.
3586
3587 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
3588
3589         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
3590
3591 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
3592
3593         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
3594         unref the nodes.   Fixes bug #50058.
3595
3596         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
3597         "::ref_iter" to "::ref_node".
3598         (gtk_tree_model_unref_node): change "::unref_iter" to
3599         "::unref_node". Fixes bug #50064.
3600
3601 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
3602
3603         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
3604         support for invisible cells.
3605          (gtk_tree_view_bin_expose): ditto
3606
3607 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
3608
3609         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
3610         on gobjects.
3611
3612         * tests/testtreefocus.c (main): New test file.
3613
3614         * tests/testtreeview.c: update to latest glib changes.
3615
3616         * tests/testtreecolumns.c: update to latest glib changes.
3617
3618 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
3619
3620         * gtk/testgtk.c: re-enabled event watcher emission hooks.
3621
3622 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
3623
3624         * *.c: added accumulator data argument to g_signal_newc()
3625         functions.
3626
3627         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
3628         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
3629         * gtk/treestoretest.c (make_window):
3630         s/g_signal_connect/g_signal_connectc/.
3631
3632         * gtk/gtktextbuffer.c: completed signal arg fixups,
3633         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
3634
3635 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
3636
3637         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
3638         G_CONST_RETURN.
3639
3640         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
3641         ::hierarchy-changed signal when a widget changes
3642         from anchored to unanchored or vice versa.
3643         (anchored means 
3644          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
3645         Use a private flag to keep track of this efficiently.
3646
3647 2001-03-07  Havoc Pennington  <hp@redhat.com>
3648
3649         * gtk/testgtk.c (create_spins): uglify so that size request gets
3650         tested.
3651
3652         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
3653         request on values for upper/lower, completes #6152
3654
3655 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
3656
3657         * Makefile.am: Remove gtk-config-2.0 again.
3658         (Grrrr, pkg-config. And stops make loops.)
3659
3660 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
3661
3662         * gtk/gtksignal.[hc]: removed old emission hook API.
3663         
3664         * docs/Changes-2.0.txt: fixed sections.
3665         
3666         * gtk/gtktextbuffer.c: signal arg fixups.
3667
3668 2001-03-07  Havoc Pennington  <hp@redhat.com>
3669
3670         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
3671
3672         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
3673         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
3674         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
3675         validation and the redraw which is higher priority than the
3676         validation.
3677
3678 2001-03-07  Havoc Pennington  <hp@redhat.com>
3679
3680         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
3681         (gtk_entry_set_property): remove trailer
3682
3683         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
3684         (gtk_entry_get_width_chars): new functions, to set size request to 
3685         a given number of characters
3686
3687         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
3688
3689         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
3690         (gtk_dialog_get_has_separator): new function
3691         (run_delete_handler): fix to not emit "response" signal
3692         because we already did in the delete event handler installed
3693         at dialog creation time.
3694         
3695         * gtk/gtkdialog.h: add a has_separator property,
3696         add GTK_DIALOG_NO_SEPARATOR flag
3697
3698 2001-03-07  Havoc Pennington  <hp@redhat.com>
3699
3700         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
3701         off decorations for a window.
3702
3703         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
3704         changes
3705
3706         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
3707         to get location of PangoLayout inside the label, closes #51198
3708
3709         * gtk/testgtk.c (create_bbox): fix up button box usage
3710
3711         * gtk/testcalendar.c (create_calendar): fix up button box usage
3712
3713         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
3714
3715         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
3716
3717         * gtk/gtkhbbox.h: deprecations
3718
3719         * gtk/gtkvbbox.h: deprecations
3720
3721         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
3722         emulate deprecated gtk_button_box_get_spacing
3723
3724         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
3725         the "set global default" functions
3726         (struct _GtkButtonBox): remove "spacing" field, use the one from 
3727         GtkBox base class
3728
3729         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
3730
3731         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
3732         render the icon, return the missing image icon.
3733
3734         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
3735         image icon if the load fails.   
3736
3737         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
3738         when no image is found; should be the Netscape "missing image"
3739         icon eventually but for now is a random image
3740
3741         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
3742         role for the session manager
3743
3744         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
3745
3746         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
3747         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
3748
3749         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
3750
3751 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
3752
3753         * gtk/*.c: marshaller fixes.
3754         
3755         * gtk/gtkmarshal.list: extreme cleanup.
3756
3757         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
3758         param spec for now.
3759
3760         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
3761         where appliable.
3762
3763         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
3764         special cased autogenerated boxed types from gtktypebuiltins_ids.c
3765         which are not reference counted:
3766         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
3767         PangoFontDescription, GtkTreeIter and GtkTreePath.
3768
3769 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
3770
3771         * gtk/gtktreeselection.h: 
3772         * gtk/gtktreemodel.c:
3773         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
3774         file should be included directly, and gobject/gmarshal.h
3775         as well as gtk/gtkmarshal.h even can't be included directly.
3776
3777         * Makefile.am: grr, install gtk-config-2.0.
3778
3779         * gtk/testgtk.c:
3780         * gtk/simple.c:
3781         * gtk/gtkmenu.c:
3782         * gtk/gtkitemfactory.c: use g_object_connect() instead of
3783         passing "*signal*::*" args to gtk_widget_set().
3784         
3785         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
3786         
3787         * gtk/*.c: removed trailer arg from property setters and getters.
3788         macro fixups.
3789
3790 2001-03-07  Alexander Larsson  <alexl@redhat.com>
3791
3792         * gtk/gtklabel.c (set_markup): Removed warning
3793
3794 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
3795
3796         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
3797         field to allow you to hide cell renderers.
3798
3799         * gtk/gtkcellrenderer.c: Add support for invisible cells.
3800
3801         * gtk/gtktreeview.c: Add support for invisible cells.
3802
3803 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
3804
3805         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
3806         Add "clicked" signal back to columns.
3807
3808         * ChangeLog: remove conflict markers.
3809
3810 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
3811
3812         * gtk/gtkbutton.c: Add animation of activation by, on 
3813         activate, pressing the button, and adding a timeout that 
3814         releases the button after 250ms or on key release and
3815         emits ::clicked. (#51501)
3816
3817         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
3818         action area, we connect to ::clicked instead of ::activate
3819         so the dialog stays up through the animation.
3820
3821 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
3822
3823         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
3824         check the ignore_enter flag for the menu shell that
3825         the item is actually a child of, not for attached
3826         submenus. (#51536)
3827
3828 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
3829
3830         * gtk/gtkmain.c (gtk_propagate_event): Only do special
3831         special key-press grab handling for widgets within
3832         GtkWindows. Otherwise, fall through to normal case.
3833
3834         This prevents key events being sent twice to GtkInvisible
3835         widgets, which can cause all sorts of mischief.
3836
3837 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
3838
3839         * gtk/gtkmain.c (gtk_propagate_event): When a grab
3840         widget is in effect, give the grab widget a first
3841         crack at KEY_PRESS/RELEASE events. (#424)
3842
3843 2001-03-06  James Henstridge  <james@daa.com.au>
3844
3845         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
3846         offset for the window_state_event to point at window_state_event
3847         rather than no_expose_event.
3848
3849 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
3850
3851         * gtk/gtkimmodule.h: fix busted /* comment */
3852
3853 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
3854
3855         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
3856         object properties.
3857
3858 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
3859
3860         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
3861         add object properties.
3862
3863         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
3864         to add object properties.
3865
3866         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
3867         object properties.
3868
3869         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
3870         add object properties.
3871
3872         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
3873         object properties.
3874
3875 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
3876
3877         * gtk/gtktreemodel.c: renamed "child_toggled" to
3878         "has_child_toggled".
3879
3880         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
3881         handle new signal name.
3882
3883         * gtk/gtktreestore.c: Updated to handle new signal name.
3884         * gtk/gtklisttore.c: Updated to handle new signal name.
3885         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
3886
3887 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3888
3889         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
3890         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
3891
3892 2001-03-05  Michael Natterer  <mitch@gimp.org>
3893
3894         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
3895         pixbuf-engine coincidentially also failed to make one of it's
3896         parent_class pointers static, causing overwriting of GtkLabel's
3897         parent_class pointer in pixbuf_style_class_init().
3898         (Will commit the fix to the pixbuf-engine too).
3899
3900 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3901
3902         * gdk/gdkwindow.h:
3903         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
3904         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
3905         gdk_window_set_icon_list for net wmspec functionality.
3906
3907         * gdk/x11/gdkwindow-x11.c:
3908         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
3909         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
3910         gdk_window_set_icon_list.
3911         Added gdk_wmspec_change_state helper function and used it in the code.
3912         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
3913
3914         * gtk/gtkdialog.c (gtk_dialog_init):
3915         Set GDK_WINDOW_TYPE_HINT_DIALOG.
3916
3917         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
3918         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
3919
3920         * gtk/gtkwindow.c:
3921         new function gtk_window_set_type_hint.
3922         On realize, set type hint and modal hint.
3923
3924         * gtk/gtkwindow.h:
3925         Added type_hint field and gtk_window_set_type_hint.
3926
3927 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3928
3929         * gtk/gtklabel.[ch]:
3930         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
3931         New function gtk_label_get_accel_keyval () to get the underline accelerator
3932         of the label. Setting the label pattern overrides other attributes.
3933
3934 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
3935
3936         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
3937         Added missing initializers to gtk_rc_style_init().
3938
3939 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
3940
3941         * gtk/gtktextview.c: fixed bug #51097 about setting 
3942         gtk_text_view_set_border_window_size() if the widget is 
3943         already realized.
3944
3945 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
3946
3947         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
3948
3949         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
3950         comment. Won't do to have duplicated doc comments between
3951         the platform subdirs.
3952
3953 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
3954
3955         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
3956           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
3957
3958         Detectable auto-repeat - make a repeating key generate
3959         press/press/press/release instead of press/release pairs.
3960
3961         If we have Xkb and XkbSetDectableAutoRepeat supports
3962         that, we do it that way. Otherwise, when we get
3963         a release event, we check ahead with XPending to see
3964         if the next key is a KeyPress with the same keycode
3965         and timestamp. (Not 100% reliable, but pretty close.)
3966           
3967 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
3968         
3969         * gtk/gtkmain.c (gtk_propagate_event): Only do special
3970         special key-press grab handling for widgets within
3971         GtkWindows. Otherwise, fall through to normal case.
3972  
3973         This prevents key events being sent twice to GtkInvisible
3974         widgets, which can cause all sorts of mischief.
3975  
3976 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
3977  
3978         * gtk/gtkmain.c (gtk_propagate_event): When a grab
3979         widget is in effect, give the grab widget a first
3980         crack at KEY_PRESS/RELEASE events. (#424)
3981  
3982 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
3983
3984         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
3985         to extend the selection. (Roughly based on patch
3986         from Jay Cox, #50939)
3987
3988         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
3989         to properly handle previous GDK_BUTTON_PRESS. 
3990         (Patch from Jay Cox, #50938)
3991
3992         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
3993         '\0' back along with the deleted text. (#51148)
3994
3995 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
3996
3997         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
3998         the group when extracting it from the X keyboard event.
3999
4000         * modules/input/Makefile.am modules/input/imipa.c: 
4001         Simple module for entering IPA. (Do we need a 
4002         gtk-stupid-input-tricks CVS module?)
4003
4004 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
4005
4006         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
4007         const.
4008
4009         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
4010
4011         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
4012         is no focus widget for the dialog currently, grab the focus as well
4013         as the default.
4014
4015         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
4016         the action area's children to iterate through, not the
4017         dialog's children.
4018
4019 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
4020
4021         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
4022         Add plug-socket tests. (Won't work worth a darn until I commit
4023         the rest of the plug-socket changes, but no reason these
4024         can't go into CVS now.)
4025
4026 2001-03-02  Havoc Pennington  <hp@redhat.com>
4027
4028         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
4029         _gdk_region_get_xrectangles()
4030
4031         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
4032
4033         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
4034
4035         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
4036         function, contributed by Ron Steinke    
4037
4038         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
4039         gdk_net_wm_supports
4040
4041         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
4042         New function, contributed by Ron Steinke
4043
4044         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
4045         used to line up the text in the entry when using the entry for
4046         editable sheet cell hacks
4047
4048         * gtk/testgtk.c (create_entry): test the activate_default setting
4049         on GtkEntry
4050
4051         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
4052         cause the entry to activate the default button for a dialog when 
4053         activated
4054         (gtk_entry_get_activates_default): new function
4055
4056 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
4057
4058         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
4059         Hwang to move call to sync_selection() up a few lines
4060         to before the row list is modified, to fix crash when
4061         removing rows in the undo_selection list.
4062
4063         (Test case provided by Daniel Elstner:
4064
4065         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
4066
4067 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
4068
4069         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
4070         of tree->root_tree in parent_set rather than _map(), 
4071         fixing #50892 in a bit better manner.
4072
4073 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
4074
4075         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
4076
4077 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
4078
4079         * gtk/gtkstyle.c : Remove duplicate fwd decl for
4080         gtk_default_draw_shadow.
4081
4082 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
4083
4084         * gdk/gdkimage.c (gdk_image_new): Remove excess 
4085         warning, make warnings more verbose, treat a error
4086         in shmat as permanent, and don't try again.
4087         (#51163, Ed Randall.)
4088
4089 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
4090
4091         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
4092         delay for the first click before starting to scroll.
4093         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
4094
4095         * gtk/gtktext.c: GtkText should have I-beam cursor. 
4096         (based on gtk-enf-990513-1.patch, Eric Fisher.)
4097
4098 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
4099
4100         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
4101         cleanup to remove some references to unused
4102         ->xoffset, ->yoffset.
4103
4104 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
4105
4106         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
4107         mask. (#51039, fix from Martin Maierhofer)
4108
4109 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
4110
4111         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
4112         for unshifted + and shifted = for non-us keyboards.
4113         Make <Control>+ and <Control>- work as well as 
4114         <Control>KP_Plus, <Control>KP_Minus for recursive
4115         open/close.  (#2682, René Seindal)
4116
4117 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
4118
4119         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
4120         the active menu item before deactivating the menu,
4121         so gtk_menu_popdown doesn't change the history. (#50964)
4122         
4123 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
4124
4125         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
4126         draw lines with text_gc rather than black_gc.
4127         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
4128
4129 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
4130
4131         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
4132         Move handling of buttons fully in gtktreeviewcolumn.  This code is
4133         less interrelated then it was, but it still requires the
4134         GtkTreeView to map it.
4135
4136         * test/testtreecolumn.c: Now I can add a column to one view,
4137         remove it, add it to the another view, remove it, then re-add it
4138         to the first.  Nifty.
4139
4140 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
4141
4142         * docs/tutorial/gtk-tut.sgml: Minor corrections
4143
4144 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
4145
4146         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
4147         GtkRowReference.
4148
4149 2001-02-28  Havoc Pennington  <hp@redhat.com>
4150
4151         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
4152         draw_default
4153         (gtk_widget_draw_focus): remove this function; we could instead
4154         make it just gtk_widget_draw(), but in most cases I think the
4155         result would be broken user code, so think it's better to have
4156         that code not compile and get fixed
4157         (gtk_widget_draw_default): ditto
4158
4159         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
4160         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
4161         
4162         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
4163         widgets lose/get the default, instead of calling draw_default
4164         
4165         * docs/Changes-2.0.txt: note about all this
4166
4167         Then fixed every widget in GTK, I won't list all the filenames.
4168
4169 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
4170
4171         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
4172         _gtk_tree_row_reference_deleted.
4173         (inserted_callback): Proxy out to
4174         _gtk_tree_row_reference_inserted.
4175         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
4176         get around signal emission ordering problem.
4177
4178         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4179         fix to work with SINGLE 
4180         (_gtk_tree_selection_internal_select_node): Major sanitization on
4181         selections.  SINGLE now seems to work.
4182
4183         * tests/Makefile.am: add testtreecolumn.c:
4184
4185         * tests/testtreecolumn.c: New test.  Mostly points out selection
4186         bugs currently, but will test columns later.
4187
4188         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
4189         selection bug.  I hate touching this code -- it's scary.
4190
4191 2001-02-26  Havoc Pennington  <hp@redhat.com>
4192
4193         * gtk/testgtk.c: test the window state stuff
4194
4195         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
4196         window come to the user's attention as if it were just created
4197         (gtk_window_iconify): new function
4198         (gtk_window_deiconify): new function
4199         (gtk_window_stick): new function
4200         (gtk_window_unstick): new function
4201         (gtk_window_maximize): new function
4202         (gtk_window_unmaximize): new function
4203
4204         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
4205
4206         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
4207
4208         * gdk/x11/gdkevents-x11.c: create window state events when
4209         appropriate
4210         (gdk_wmspec_supported): new function
4211
4212         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
4213         iconification before showing the window
4214         (gdk_window_deiconify): new function
4215         (gdk_window_stick): new function
4216         (gdk_window_unstick): new function
4217         (gdk_window_maximize): new function
4218         (gdk_window_unmaximize): new function
4219
4220         * gdk/gdkwindow.c: store the window state in the window; 
4221         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
4222         window->mapped.
4223         (gdk_window_get_state): return the current window state
4224
4225         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
4226         (gdk_event_get_state): handle GDK_WINDOW_STATE
4227         (gdk_synthesize_window_state): function to create the window state
4228         events
4229
4230         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
4231         event, for changes to "window state" such as maximized, sticky, 
4232         etc.
4233         
4234         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
4235         focuses a window
4236
4237         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
4238         finds out if we support a given WM spec hint
4239
4240 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
4241
4242         * docs/faq/gtk-faq.sgml: New question re memory leaks.
4243
4244 2001-02-25  Hans Breuer  <hans@breuer.org>
4245
4246         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
4247         cause we want to loose those prototypes only in the latter case
4248
4249         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
4250         GdkPixmapImplWin32 because it itsn't derived from it. Use the
4251         impl member variable instead
4252
4253         * gtk/gtk.def : updated
4254
4255         * gtk/gtklist.c : 
4256         * gtk/gtkmenus.c : include <string.h> for memset ()
4257
4258         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
4259         for everthing built here, but for gtk-x.x.dll only. This solves
4260         problem of indifferent gtk type definitions
4261
4262 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
4263
4264         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
4265
4266 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
4267
4268         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
4269         column that is exposed.
4270
4271         (_gtk_tree_view_update_size): Changed name from set_size, and
4272         changed function to do more work, and not force people calling it
4273         to figure out the size.  Simplifies a lot of code elsewhere.
4274
4275 2001-02-23  Alexander Larsson  <alexl@redhat.com>
4276
4277         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
4278         return solid masks for xpms that have no transparent color.
4279         This makes the ..._create_from_xpm... API backwards
4280         compatible.
4281
4282 2001-02-23  Tor Lillqvist  <tml@iki.fi>
4283
4284         * README.win32: Update. Mention the gtk-1-3-win32-production
4285         branch.
4286
4287         * gdk/win32/bdfcursor.c: New file. A program that generates
4288         xcursors.h. Thanks to Stefan Ondrejicka.
4289
4290         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
4291         compact format.
4292
4293         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
4294
4295         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
4296         function, uses xcursors.h.
4297         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
4298         cursor from inline data instead of using LoadCursor() to generate
4299         it from a resource.
4300
4301         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
4302         event, must check the Windows message for mouse button state, as
4303         the GDK event state might not have been built if it is
4304         undelivered. Remove one goto.
4305
4306         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
4307         SetCursor() if the current cursor as returned by GetCursor() is
4308         the window's previous cursor. The ChildWindowFromPoint() test
4309         apparently didn't work correctly.
4310
4311         * gdk/win32/rc/*.cur: Remove.
4312
4313         * gdk/win32/rc/gdk.rc.in: Remove cursors.
4314
4315         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
4316
4317         * gtk/makefile.{mingw,msc}.in: Updates.
4318
4319 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
4320
4321         * gtk/gtktreemodel.h: add functions for signal emission.
4322
4323         * gtk/gtktreestore.c: move to use above functions instead of
4324         g_signal_emit.
4325
4326         * gtk/gtkliststore.c: ditto
4327
4328 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
4329
4330         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
4331         GObject instead of GtkObject.
4332
4333         * gtk/gtkliststore.c: ditto.
4334
4335         * gtk/gtktreemodelsort.c: ditto.
4336
4337         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
4338         GtkTreeModelIface, instead of in each model.
4339
4340 2001-02-21  Havoc Pennington  <hp@redhat.com>
4341
4342         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
4343         unbreak this function
4344
4345         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
4346         properties
4347
4348         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
4349         properties
4350
4351         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
4352         properties
4353
4354         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
4355         mean unset the max length
4356
4357 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
4358
4359         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
4360         Changed name to be set_cell_data_func to make it clear what
4361         the functino does.  Close bug #51069.
4362
4363 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
4364
4365         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
4366         have memory actually freed.  Keeps box running longer.
4367
4368 2001-02-21  Alexander Larsson  <alexl@redhat.com>
4369         
4370         * gtk/gtkseparatormenuitem.[ch]:
4371         Added new menu separator item. The drawing and size handling
4372         is still done in GtkMenuItem, but the API is a bit more sane.
4373         
4374         * gtk/Makefile.am:
4375         Add gtkseparatormenuitem.[ch].
4376
4377         * gtk/gtk.h:
4378         Add gtkseparatormenuitem.h.
4379         
4380         * gtk/gtkentry.c:
4381         * gtk/gtkmenufactory.c:
4382         * gtk/gtktextview.c:
4383         Use the new API for menu separators.
4384         
4385         * demos/gtk-demo/menus.c (create_menu):
4386         Add some GtkSeparatorMenuItem demo code.
4387
4388 2001-02-20  Havoc Pennington  <hp@redhat.com>
4389
4390         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
4391         Lee Mallabone
4392
4393         * gtk/gtkarrow.c: Convert to new property API, patch from 
4394         Lee Mallabone
4395
4396 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
4397
4398         * tests/testtreeview.c (toggled_callback): fix to reflect change
4399         in GtkTreeModelStore.
4400
4401 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
4402
4403         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
4404         function to create an icon set from a pixbuf.
4405
4406 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4407
4408         * gtk/gtkcellrenderertext.[ch]:
4409         Add a "markup" property.
4410
4411         * gtk/treestoretest.c:
4412         Use the markup property, remove some leftover stuff from
4413         GtkTreeModelMapping.
4414
4415 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4416
4417         * gtk/gtklabel.c (gtk_label_set_selectable):
4418         Queue a redraw if the selectable setting was changed.
4419
4420 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4421
4422         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
4423         Actually copy the whole gc, not just the public parts.
4424         
4425         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4426         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
4427         labels.
4428
4429 2001-02-19  Havoc Pennington  <hp@pobox.com>
4430
4431         * gdk/gdkwindow.c: docs
4432
4433         * gdk/gdkrgb.c: docs
4434
4435         * gdk/gdkregion-generic.c: docs
4436
4437         * gdk/gdkgc.c (gdk_gc_set_values): docs
4438
4439         * gdk/gdkdraw.c: docs
4440
4441         * gdk/gdkdrawable.h: deprecate drawable get/set data
4442
4443 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
4444
4445         * demos/gtk-demo/dialog.c: Add simple new demo.
4446
4447 2001-02-19  Havoc Pennington  <hp@redhat.com>
4448
4449         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
4450         insert_child_anchor signal, bug #50245
4451
4452         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
4453         from create_child_anchor, so the anchor is passed in
4454
4455         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
4456         (_gtk_widget_segment_new): have the child anchor object passed in, 
4457         instead of creating it.
4458
4459         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
4460         to gtk_text_buffer_get_modified
4461
4462 2001-02-19  Havoc Pennington  <hp@redhat.com>
4463
4464         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
4465         changed GLib without fixing GTK
4466
4467         * gtk/gtkrange.h: Rename all the stupid implementation detail 
4468         functions to have an underscore in front. Most of them should 
4469         probably just go away, but for starters don't export them.
4470         Bug #50482
4471
4472 2001-02-19  Havoc Pennington  <hp@redhat.com>
4473
4474         * gdk/gdkcolor.h: test was backward, so deprecated functions were
4475         excluded by default
4476
4477         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
4478         clean up the old code a bit
4479
4480         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
4481         inconsistent state
4482
4483         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
4484         draw inconsistent state
4485
4486         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
4487         (create_menu): add inconsistent test
4488
4489         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
4490         new function
4491         (gtk_check_menu_item_get_inconsistent): new function
4492         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
4493         state (using etched in for now)
4494
4495         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
4496         draw inconsistent state
4497
4498         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
4499         function, used when the user has selected a range of stuff in
4500         different states
4501         (gtk_toggle_button_get_inconsistent): accessor for that
4502         (gtk_toggle_button_paint): draw inconsistent state (etched in?
4503         don't know what else to do)
4504
4505 2001-02-19  Hans Breuer <hans@breuer.org>
4506
4507         * gtk/gtk.def : updated exported symbols
4508
4509         * gtk/makefile.msc.in : updated
4510
4511         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
4512         a colormap, when invoked from testgtk::entry. I'm not sure where
4513         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
4514         avoids immediate crashing ...
4515
4516         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
4517         any objections ?
4518
4519         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
4520         0 parameter. At least msvc doesn't like macros with var args. 
4521         I simply removed the extra 0, was it a feature or a typo ?
4522
4523         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
4524         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
4525         because the value assignment to the internal struct wasn't working.
4526         I'm not absolutely sure. The problem could have been resolved by
4527         changing the "func" declartion in the struct, but was the pointer
4528         to the function pointer intended ?
4529
4530         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
4531
4532         * gdk/gdk.def : updated exported symbols
4533
4534         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
4535         only use SetDIBitsToDevice if there is a palette at the drawable
4536         and the image is GDK_VISUAL_PSEUDO_COLOR
4537
4538         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
4539
4540         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
4541
4542         * gdk/*/makefile.msc : updated
4543
4544 2001-02-19  Havoc Pennington  <hp@redhat.com>
4545
4546         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
4547         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
4548
4549         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
4550         (gdk_key_repeat_restore): nuke
4551
4552         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
4553         (gdk_init_check): no atexit func
4554
4555         * gdk/gdkrgb.h: mark some stuff deprecated
4556
4557         * gdk/gdkcolor.h: mark some stuff deprecated
4558         
4559         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
4560
4561         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
4562
4563 2001-02-16  Havoc Pennington  <hp@redhat.com>
4564
4565         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
4566         scroll steps.
4567
4568         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
4569         steps, and add Ctrl-arrow shortcuts for paging visually as with
4570         HScale, since Page Up and Page Down move logically.
4571
4572         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
4573         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
4574         
4575         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
4576         steps
4577         (gtk_range_scroll): handle the visual steps
4578
4579         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
4580         scroll steps
4581
4582         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
4583         steps, not the logical ones.
4584
4585         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
4586         (scroll_vertical): handle up/down steps
4587
4588 2001-02-19 Alexander Larsson  <alexl@redhat.com>
4589
4590         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
4591         Copy data and free data with free().
4592
4593         * gdk-pixbuf/gdk-pixbuf.c:
4594         * gdk-pixbuf/io-jpeg.c:
4595         * gdk-pixbuf/io-png.c:
4596         Use g_try_malloc/g_free instead malloc/free.
4597         
4598         * gdk-pixbuf/test-gdk-pixbuf.c:
4599         Must... initialize... gobject...
4600         
4601         * gdk-pixbuf/pixops/timescale.c:
4602         * gtk/gtkcalendar.c:
4603         Use g_malloc instead of malloc.
4604         
4605 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
4606
4607         * gtk/testgtkrc:
4608         Comment out property assignments, these don't work yet.
4609
4610 2001-02-17  Havoc Pennington  <hp@pobox.com>
4611
4612         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
4613         bit.
4614
4615 2001-02-17  Havoc Pennington  <hp@pobox.com>
4616
4617         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
4618         shadowed variables that had broken size request in some cases,
4619         leading to bogus tooltips (#50996)
4620
4621 2001-02-06  Jon K Hellan  <hellan@acm.org>
4622
4623         Implement fast browsing of tooltips, bug #50619
4624         
4625         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
4626         and last_popdown
4627         
4628         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
4629         use_sticky_delay and last_popdown.
4630         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
4631         time of popdown.
4632         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
4633         is NULL.
4634         (gtk_tooltips_recently_shown): New static function.  Return true
4635         if < sticky_delay has elapsed since last popdown.
4636         (gtk_tooltips_event_handler): Display window after sticky_delay
4637         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
4638         since last popdown.
4639         
4640 2001-02-17  Havoc Pennington  <hp@pobox.com>
4641
4642         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
4643         instead of (). #6394
4644
4645         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
4646         G_CONST_RETURN, make it return by reference, #50473
4647         
4648 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
4649
4650         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
4651         generated ENTER_NOTIFY event with 0, otherwise not explicitely
4652         setup fields contain garbage (e.g. subwindow, breaking
4653         gdk_drawable_ref() upon event copy).
4654         (gtk_menu_stop_navigating_submenu_cb): same here.
4655
4656         * gtk/gtklist.c (gtk_list_vertical_timeout): 
4657         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
4658         * gtk/gtkclist.c (vertical_timeout): 
4659         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
4660         default-zero-intialization for unions to memset(,0,), as unions are
4661         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
4662         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
4663
4664         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
4665         g_closure_sink() warning.
4666
4667         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
4668         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
4669         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
4670         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
4671         
4672 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
4673
4674         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
4675         gtk_*_store_get, and moved to GtkTreeModel.
4676
4677         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
4678
4679         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
4680
4681         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
4682
4683         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
4684         set the func.
4685
4686         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4687         freeze/thaw notify between setting all the properties for a cell.
4688
4689         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
4690
4691 2001-02-15  Havoc Pennington  <hp@redhat.com>
4692
4693         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
4694         the X coordinates so they're with respect to the line, rather than 
4695         with respect to the layout.
4696
4697         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
4698         Mallabone
4699
4700         * gtk/testgtk.c (create_range_controls): add vscale tests, 
4701         and inverted test
4702
4703         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
4704         #50806
4705
4706         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
4707
4708         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
4709         gtk_text_iter_is_end
4710
4711         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
4712         rename gtk_text_buffer_get_end_iter
4713
4714         * gtk/testgtk.c (create_labels): Add test for selectable
4715
4716         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
4717         the selection stuff. This code is kind of broken since it doesn't 
4718         use the theme engine.
4719
4720         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
4721         fix infinite loop and y offset problem
4722         (gdk_draw_layout_line_with_colors): fix foreground color handling
4723
4724         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
4725         that makes the label selectable.
4726         
4727         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
4728         layout when the style is set, since fonts etc. could have changed.      
4729
4730 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
4731
4732         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
4733
4734         * gtk/gtktreemodelsimple.[ch]: removed.
4735
4736 2001-02-16  Alexander Larsson  <alexl@redhat.com>
4737
4738         * gtk/gtktreemodelmapping.[ch]:
4739         New files. Implement GtkTreeModelMapping.
4740         
4741         * gtk/Makefile.am:
4742         Add gtktreemodelmapping.[ch].
4743         
4744         * gtk/gtk.h:
4745         Add gtktreemodelmapping.h
4746
4747         * gtk/treestoretest.c:
4748         Test the GtkTreeModelMapping
4749
4750 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
4751
4752         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
4753         have a demo, we might as well pass in real values.  Thanks to
4754         clahey for pointing this out.
4755
4756 2001-02-14  Havoc Pennington  <hp@pobox.com>
4757
4758         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
4759         "static" to a private function
4760         (gtk_image_menu_item_class_init): remove destroy handler,
4761         add "image" object property
4762
4763 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
4764
4765         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
4766         Add a shortcut if the window and the current clip_region doesn't
4767         overlap. This is needed when there are a lot of windows in a
4768         window. The layout test in testgtk is a good test.
4769
4770         * gdk/linux-fb/gdkwindow-fb.c:
4771         Whitespace fix.
4772
4773 2001-02-13  Sven Neumann  <sven@convergence.de>
4774
4775         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
4776
4777 2001-02-13  Alexander Larsson  <alexl@redhat.com>
4778
4779         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
4780         Don't reference last_cursor if it is null. Fixes crash when rotating
4781         the screen before having moved the mouse.
4782
4783         * gdk/linux-fb/gdkcc-fb.c: Zapp!
4784
4785         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
4786
4787         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
4788         when using 90 or 270 degrees rotation.
4789
4790 2001-02-12  Havoc Pennington  <hp@pobox.com>
4791
4792         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
4793         it always set the foreground, even if we were only using
4794         a stipple.
4795         (gdk_draw_layout_line_with_colors): new function, allow
4796         override colors
4797         (gdk_draw_layout_with_colors): new function, allow override
4798         colors
4799         (gdk_pango_layout_line_get_clip_region): function to get the clip
4800         region for a logical text range
4801         (gdk_pango_layout_get_clip_region): get the clip region for a
4802         logical text range
4803
4804         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
4805         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
4806         the right number of arguments.
4807
4808         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
4809         enhance the function to check that node data corresponds to a 
4810         view still belonging to the tree.
4811
4812         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
4813         GtkTreePath
4814         (gtk_tree_view_inserted): ditto
4815         (gtk_tree_view_child_toggled): ditto
4816
4817         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
4818         simplify this code.
4819
4820         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
4821         a PangoAttrList
4822
4823         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
4824
4825         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
4826
4827         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
4828         size in the size request 
4829         (gtk_menu_bar_size_allocate): consider toggle size here
4830
4831         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
4832         that displays a widget in the toggle slot
4833
4834         * gtk/testgtk.c: test GtkImageMenuItem
4835
4836         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
4837         
4838         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
4839         request and allocation
4840
4841         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
4842
4843         * gtk/gtkcheckmenuitem.c
4844         (gtk_check_menu_item_toggle_size_request): ditto
4845         
4846 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
4847
4848         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
4849         reference.
4850
4851         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
4852         and refuse to initialize GTK+ if they fail.
4853
4854 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
4855
4856         * configure.in: Add check for gtk-doc version.
4857
4858 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
4859
4860         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
4861         where the xpad/ypad was only being used on one side!
4862
4863 2001-02-11  Tor Lillqvist  <tml@iki.fi>
4864
4865         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
4866         function, copied from X11 version.
4867
4868         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
4869         DestroyCursor failures. The reason for the problem (despite the
4870         inconsistent messages from GetLastError()) was that
4871         DestroyCursor() cannot be called while a cursor is set in a
4872         window. Set the new cursor first and then destroy the old one.
4873         Thanks to jpe@archaeopteryx.com.
4874
4875         * gdk/win32/gdkcc-win32.c: Remove.
4876
4877         * gdk/win32/Makefile.am: Remove from here, too.
4878         
4879         * gdk/gdk.def
4880         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
4881
4882         * gtk/gtk.def
4883         * gtk/makefile.mingw.in: Updates.
4884
4885 2001-02-08  Havoc Pennington  <hp@redhat.com>
4886
4887         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
4888         add a widget to a bin that already has a child.
4889
4890         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
4891
4892         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
4893         
4894         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
4895
4896         * gdk/gdk.h: remove gdkcc.h
4897
4898         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
4899
4900         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
4901         GdkPixbuf, since the previous implementation was GdkColorContext
4902         dependent.
4903
4904         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
4905         
4906 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
4907
4908         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
4909         a sane value!
4910
4911 2001-02-08  Havoc Pennington  <hp@redhat.com>
4912
4913         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
4914         lighten them.
4915
4916 2001-02-08  Havoc Pennington  <hp@redhat.com>
4917
4918         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
4919         validation idle
4920
4921         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
4922         cell renderer
4923
4924         * demos/pixbuf-demo.c (timeout): remove deprecated
4925         gtk_widget_draw
4926
4927         * demos/testpixbuf-save.c (main): remove deprecated
4928         gtk_drawing_area_size
4929
4930         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
4931         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
4932         at the start of the allocation.
4933         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
4934         unsetup or NULL model.
4935
4936         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
4937         even/odd/sorted cells in the tree view.
4938
4939         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4940         bugfixes
4941
4942         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
4943         backgrounds with draw_flat_box using different detail for even/odd
4944         rows.
4945
4946         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
4947         row, so we can draw the alternating colors thing
4948
4949         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
4950         property from a synonym property, notify for the synonym.
4951         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
4952         (gtk_text_tag_get_property): Always return the font, even if
4953         all its fields aren't set
4954
4955         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
4956         store the attr list; it leaves us with no way to change attributes
4957         in _render according to the render flags, and no way to implement
4958         get_property. Instead store all the specific text attributes. 
4959         Separate whether an attribute is enabled from its value. Sync all
4960         properties with GtkTextTag, make them all consistent, etc.
4961
4962         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
4963         renderers can highlight the sort row/column     
4964
4965         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
4966         accessor functions to get values; this has the side effect of
4967         showing up which accessor functions were missing. Added those.
4968
4969         * gtk/gtktreeviewcolumn.h: Replace set_justification with
4970         set_alignment, to be consistent with GtkLabel, GtkMisc
4971
4972         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
4973         arrow.
4974
4975         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
4976
4977         * gtk/gtktreesortable.h: updates in here
4978
4979 2001-02-07  Sven Neumann  <sven@convergence.de>
4980
4981         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
4982         pango dimensions after painting the background. We used to draw
4983         gigantic flat boxes here.
4984
4985 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
4986
4987         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
4988         error introduced with earlier commit) (pointed out by
4989         Ollie Lho)
4990
4991 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
4992
4993         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
4994         which are no longer necessary.
4995
4996 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
4997
4998         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
4999
5000 2001-02-04  Tor Lillqvist  <tml@iki.fi>
5001
5002         * gdk/gdk.def
5003         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
5004         Provide dummy implementations.
5005
5006 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
5007
5008         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
5009
5010         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
5011         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
5012         deprecated this function.
5013
5014         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
5015         argument.
5016
5017 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
5018
5019         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
5020
5021 2001-02-03  Havoc Pennington  <hp@pobox.com>
5022
5023         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
5024         Mikael Hermansson with patch from Mikael (if there was a toggle
5025         start one after the first character in the range, this function
5026         was broken). Bug #50380
5027
5028 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
5029
5030         * configure.in: Remove confusing comment about X11.
5031
5032 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
5033
5034         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
5035         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
5036         
5037 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
5038
5039         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
5040         it breaks things on BSD. If you want to compile GTK+ with
5041         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
5042         when configuring, since GTK+ simply can't be "pure ANSI" 
5043         in the header files it uses. (#8170, Greg Hudson)
5044
5045 2001-02-02  Havoc Pennington  <hp@redhat.com>
5046
5047         * gtk/gtkwindow.c: docs
5048
5049         * gtk/gtkwidget.c: docs
5050         (gtk_widget_set_colormap): add a reference to the colormap
5051         (gtk_widget_get_default_colormap): add a reference to the colormap
5052
5053         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
5054
5055         * gtk/gtktextiter.c: docs
5056
5057         * gtk/gtkmain.c (gtk_propagate_event): docs
5058
5059         * gtk/gtkpaned.c (gtk_paned_get_position): docs
5060         (gtk_paned_set_position): docs
5061
5062         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
5063         sort interface, no implementation yet.
5064
5065         * demos/testpixbuf.c (new_testrgb_window): replace
5066         gtk_drawing_area_size() with gtk_widget_set_usize()
5067
5068         * demos/testpixbuf-drawable.c (main): ditto
5069         
5070         * gtk/testgtk.c: remove use of GtkStatusbarMsg
5071
5072         * gtk/gtktextbuffer.c: docs
5073
5074         * gtk/gtkstock.c: docs
5075
5076         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
5077
5078         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
5079
5080         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
5081         
5082         * gtk/gtkimage.c: add some docs in here
5083         (gtk_image_size_request): change name of
5084         gtk_widget_render_stock_icon
5085         (gtk_image_get_icon_set): don't dup returned string
5086         (gtk_image_get_icon_set): don't dup returned string
5087
5088         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
5089         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
5090         and gtkiconfactory.h functions
5091
5092         * gtk/gtkiconfactory.c: add some docs in here
5093
5094         * gtk/gtkmain.c (gtk_get_default_language): document
5095         (gtk_get_current_event): document
5096         (gtk_get_current_event_state): document
5097         (gtk_get_event_widget): document
5098
5099         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
5100
5101         * gtk/gtkcontainer.c: Add some documentation
5102         (gtk_container_add): give a more explanatory warning on adding an
5103         already-parented widget, this is kind of a FAQ and also a common
5104         typo that's easier to debug with a nice warning 
5105
5106         * gtk/gtkcellrenderertoggle.c
5107         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
5108         adding this, it's useless
5109         (gtk_cell_renderer_toggle_set_active): remove
5110         (gtk_cell_renderer_toggle_get_radio): add
5111
5112         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
5113         the NULL cell renderer, that doesn't make any sense to me. 
5114
5115         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
5116         demo code should never use deprecated features.
5117
5118         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
5119         code should never use deprecated features.
5120
5121         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
5122         gtk_widget_queue_clear_area deprecated
5123
5124         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
5125         deprecated
5126
5127         * gtk/gtklabel.h: mark gtk_label_get() deprecated
5128
5129         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
5130         a GdkImage deprecated, replaced by new consistently-named
5131         functions       
5132
5133         * gtk/gtkmain.h: Mark gtk_exit() deprecated
5134
5135         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
5136
5137         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
5138         deprecated
5139
5140         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
5141         so it won't appear in docs and confuse people.
5142
5143         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
5144
5145         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
5146         macros deprecated. (can't mark the type itself deprecated, since
5147         GtkProgressBar is not deprecated and we need the type decl to use
5148         GtkProgressBar)
5149
5150         * gtk/gtkpixmap.h: Mark deprecated
5151
5152         * gtk/gtkoldeditable.h: Mark deprecated
5153
5154         * gtk/gtklist.h: Mark deprecated
5155
5156         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
5157         for anything anymore.
5158
5159         * gtk/gtkctree.h: Mark deprecated
5160
5161         * gtk/gtkclist.h: Mark deprecated
5162
5163         * gtk/gtkpreview.h: Mark deprecated
5164
5165         * gtk/gtkpacker.h: Mark deprecated
5166
5167         * gtk/gtktipsquery.h: Mark deprecated
5168
5169         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
5170
5171         * gtk/gtkvruler.h: Add comment that it will move out of GTK
5172
5173         * gtk/gtkhruler.h: Add comment that it will move out of GTK
5174
5175         * gtk/gtkruler.h: Add comment that it will move out of GTK
5176
5177         * gtk/gtkgamma.h: Add comment that it will move out of GTK
5178
5179         * gtk/gtkcurve.h: Add comment that it will move out of GTK
5180
5181 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
5182
5183         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
5184         gdk_colormap_sync private since it was never exported
5185         in a header file.
5186
5187         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
5188         colormap->colors[] for StaticGray, StaticColor colormaps.
5189
5190         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
5191         was being used as if it was image->bits_per_pixel.
5192
5193         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
5194         for the image in the GdkImage structure since it isn't
5195         reconstructable, and we need it to handle packed types
5196
5197         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
5198         the assumption that on Win32 image->bits_per_pixel == image->depth,
5199         always.
5200
5201         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
5202
5203         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
5204         warning message if no converter can be found. 
5205
5206 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
5207
5208         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
5209         chars to isupper() / tolower(). (#567)
5210
5211         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
5212         to clear up 64-bit warnings. (#567)
5213
5214 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
5215
5216         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
5217         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
5218
5219         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
5220         since some people set $(libdir) separately. (#1290, David Kaelbling)
5221
5222 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
5223
5224         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
5225         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
5226         MAXPATHLEN, but the code here depends on a fixed value.)
5227         (#4524)
5228
5229 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
5230
5231         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
5232         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
5233
5234 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
5235
5236         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
5237         viewable there is no way that moving the node will cause the 
5238         focus row to become not viewable, so omit check on the visibility
5239         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
5240
5241 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
5242
5243         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
5244         selection before inserting new text.
5245
5246 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
5247
5248         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
5249         Make the sensitivity of the reparented child track that of
5250         the original parent menu item. (#34218, David Hodson)
5251
5252         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
5253         the case where the current item is destroyed properly.
5254
5255         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
5256         some edge cases with child-less menuitems.
5257         
5258 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
5259
5260         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
5261         key pop down window. (#12074, Jon K Hellan)
5262
5263 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
5264
5265         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
5266         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
5267         The solution here isn't perfect - you get an extraneous
5268         emission of "toggle", which could conceivably confuse an app,
5269         but better than the current situation. LXR search seems to
5270         indicate that no apps in GNOME CVS connect to "toggle".
5271
5272 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
5273
5274         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
5275         gtk_public_h_sources to directly here to avoid warning when
5276         building srcdir != builddir. (#9656)
5277
5278 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
5279
5280         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
5281         handlers in gtkrange.c return the proper values (TRUE == handled)
5282         (#10316).
5283
5284         This is just the tip of the iceberg, but gtkrange.c is the
5285         most common place where the propagation is problematical,
5286         and also a place where it is almost certainly safe to change
5287         this in the stable branch.
5288
5289         (You don't want right click popups on a range control or anything...)
5290
5291 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
5292
5293         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
5294         area on focus out, even if a background pixmap isn't set.
5295         (#13941)
5296         
5297 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
5298
5299         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
5300         to deal with setting the shape properly when scrolling arrows are
5301         turned on, but not visible because there is sufficient space.
5302         (#13432)
5303
5304 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
5305
5306         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
5307         items with submenus, destroy the item along with the submenu.
5308         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
5309         properly.
5310
5311         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
5312         later.
5313
5314 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
5315
5316         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
5317         the focus widget sometimes wasn't drawn with the default if there
5318         was no default widget.
5319
5320         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
5321         unreference pixmaps. 
5322
5323         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
5324         for some extra safety.
5325
5326 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
5327
5328         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
5329         the text of a cell to the old pointer value better, by
5330         copying the new text before freeing the old text. Some code
5331         cleanup. (#8079, Karl Nelson)
5332
5333 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
5334
5335         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
5336         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
5337
5338 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
5339
5340         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
5341         item from a menu, check to see if it matches 
5342         menu->old_active_menu_item, and if so, unref and clear
5343         old_active_menu_item (Patch from Pavel Cisler)
5344
5345         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
5346         menu_shell->active_menu_item, if it is the child being
5347         removed. (Patch based on that of Gene Ragan, #50337)
5348
5349 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
5350
5351         * gdk/linux-fb/gdkselection-fb.c: 
5352         * gdk/linux-fb/gdkcolor-fb.c: 
5353         * gdk/linux-fb/gdkdrawable-fb2.c: 
5354         * gdk/linux-fb/gdkfont-fb.c: 
5355         * gdk/linux-fb/gdkim-fb.c: 
5356         * gdk/linux-fb/gdkinput.c: 
5357         * gdk/linux-fb/gdkkeyboard-fb.c: 
5358         * gdk/linux-fb/gdkmain-fb.c: 
5359         * gdk/linux-fb/gdkrender-fb.c: 
5360         A bunch of whitespace cleanup.
5361         
5362 2001-01-30  Havoc Pennington  <hp@pobox.com>
5363
5364         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
5365         #ifdef GTK_ENABLE_BROKEN.
5366
5367         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
5368         GTK_ENABLE_BROKEN just before including the broken headers.
5369         
5370         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
5371         deprecated types registered.
5372
5373         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
5374         we have to test the broken stuff.
5375
5376         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
5377         
5378 2001-01-30  Havoc Pennington  <hp@redhat.com>
5379
5380         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
5381         here where prev pointer was set to the wrong thing
5382
5383         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
5384         (gtk_tree_path_is_descendant): new function
5385
5386         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
5387         cached length
5388         (gtk_list_store_get_iter): don't modify iter if we can't get the
5389         path.
5390
5391         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
5392         
5393         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
5394         GtkTreeDragDest
5395
5396         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
5397         was causing segfault
5398
5399         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
5400         pointer to NULL
5401
5402         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
5403
5404         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
5405         on returning FALSE
5406         (gtk_list_store_iter_children): ditto
5407         (gtk_list_store_iter_nth_child): ditto
5408         (gtk_list_store_iter_nth_child): ditto
5409         (gtk_list_store_iter_parent): ditto
5410
5411         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
5412         on iter->user_data != NULL instead of silently accepting it.
5413         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
5414         we are returning TRUE.
5415         (gtk_tree_store_iter_children): ditto
5416         (gtk_tree_store_iter_nth_child): ditto
5417         (gtk_tree_store_iter_parent): ditto
5418         (gtk_tree_store_insert): remove handling of parent->user_data ==
5419         NULL, replace with parent == NULL       
5420
5421         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
5422         and a comment explaining things
5423
5424         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
5425         interface support to GtkTreeStore.
5426
5427         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
5428         FALSE if no prev, fix
5429
5430         * gtk/gtktreeview.c (set_source_row): use a row reference
5431         (set_dest_row): use a row reference
5432
5433 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
5434
5435         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
5436         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
5437         (gtk_tree_selection_select_iter): The same as above.
5438
5439 2001-01-26  Havoc Pennington  <hp@redhat.com>
5440
5441         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
5442         which holds a handle to a specific row (particular set of values
5443         in the model, i.e. pointer-identity row).
5444
5445         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
5446         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
5447         Still need to use it for the src/dest row saved on the drag context.
5448
5449 2001-01-26  Havoc Pennington  <hp@redhat.com>
5450
5451         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
5452
5453         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
5454         not offset by TREE_VIEW_HEADER_HEIGHT
5455         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
5456         TREE_VIEW_HEADER_HEIGHT
5457
5458         * configure.in (included_loaders): for me, --with-included-loaders
5459         generates the error "the specified loader yes does not exist",
5460         i.e. the arg defaults to "yes", so change test for value ""
5461         to test for value "yes", and include all loaders in that case.
5462
5463         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
5464
5465         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
5466         handle TREE_VIEW_VERTICAL_SEPARATOR
5467         (gtk_tree_view_bin_expose): fix to consider the row offset as
5468         pointing halfway into vertical separator.       
5469         (gtk_tree_view_draw_node_focus_rect): ditto
5470
5471         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
5472         --gtk-debug=updates, which causes gdk_window_set_debug_updates
5473         (TRUE) to be called.
5474
5475         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
5476         debug mode where the invalid region is colored in on invalidate,
5477         so you can see the flicker and know whether your redraw code is 
5478         doing a good job.
5479
5480         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
5481         tree window coordinates (clip rect is in tree window coords)
5482
5483         * gtk/Makefile.am: add gtktreednd.[hc]
5484
5485         * gtk/gtkliststore.c: implement gtktreednd interfaces.
5486
5487         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
5488         drag-and-drop data operations on a model (so we can set up tree
5489         drag-and-drop automatically)
5490
5491         * gtk/testgtk.c: Add a window to change sensitivity in the
5492         GtkLabel test; add a way to change the entry frame in GtkEntry
5493         test
5494
5495         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
5496         (gtk_entry_get_has_frame): new functions to remove the frame
5497         around an entry
5498         (gtk_entry_size_request): shrink requisition if no frame
5499         (gtk_entry_draw_focus): don't draw frame if no frame
5500
5501         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
5502         checks inside a cell renderer
5503         (gtk_default_draw_option): ditto for options
5504
5505         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
5506         children from the alignment, not the button
5507         (gtk_tree_view_column_init): ref/sink the column, to emulate
5508         GObject refcounting.
5509
5510         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
5511         
5512         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5513         Use theme functions to draw the toggles 
5514
5515         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
5516
5517         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
5518         GdkPangoAttrEmbossed to use in rendering insensitive text
5519
5520         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
5521
5522         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
5523         using new GDK features
5524         
5525 2001-01-24  Alexander Larsson  <alexl@redhat.com>
5526
5527         * gtk/gtkimage.c:
5528         Splitted gtk_image_clear into gtk_image_clear() and
5529         gtk_image_reset(). Call gtk_image_clear() in ::destroy
5530         to avoid leaks.
5531
5532         * gtk/gtklabel.c (set_markup):
5533         Don't leak text.
5534
5535         * gtk/gtktextlayout.c:
5536         Always free display->shaped_objects.
5537
5538         * gtk/testgtk.c (create_clist):
5539         Don't leak custom style.
5540
5541 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5542
5543         * gtk/gtkcolorsel.c (grab_color_at_mouse):
5544         Don't leak image. Simplify using gdk_colormap_query_color().
5545         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
5546
5547         * linux-fb/gdkcolor-fb.c:
5548         Implemented gdk_colormap_query_color.
5549
5550 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5551
5552         * linux-fb/gdkcursor-fb.c:
5553         Don't leak built-in cursors.
5554
5555         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
5556         Don't leak tmp_points.
5557
5558         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
5559         Don't modify desc. Don't leak font if the PangoFont
5560         isn't found.
5561         
5562         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
5563         Free dash_list.
5564
5565         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
5566         Don't leak string.
5567         
5568 2001-01-20  Havoc Pennington  <hp@pobox.com>
5569
5570         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
5571         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
5572         me, matches Pango
5573
5574 2001-01-22  Havoc Pennington  <hp@redhat.com>
5575
5576         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
5577
5578         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
5579
5580         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
5581         Remove, move back to gdk-pixbuf
5582
5583         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
5584         to all the word functions
5585
5586         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
5587         before doing anything on NULL layout or if we don't have the focus
5588
5589         * gtk/testtext.c (fill_example_buffer): "justification"
5590
5591         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
5592         to be called "justification" not "justify"
5593
5594         * demos/gtk-demo/textview.c (create_tags): "justification"
5595         
5596         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
5597
5598 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5599
5600         * gdk/gdkwindow.c (gdk_window_invalidate_region):
5601         Don't leak visible_region. Use visible_region instead of region.
5602         
5603         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
5604         Don't do extra gdk_drawable_ref(). This is not X.
5605         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
5606         gdk_fb_focused_window is ref:ed.
5607         (gdk_fb_window_send_crossing_events): Watch out for destroyed
5608         windows.
5609
5610 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5611
5612         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
5613         Don't leak the PangoFontDescriptor.
5614
5615 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
5616
5617         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
5618         when not realized.
5619         (gtk_tree_view_scroll_to_cell): Make work when not realized.
5620         (gtk_tree_view_realize): add scroll_to support
5621         (gtk_tree_view_finalize): add a finalize method.  Populate.
5622         (gtk_tree_view_insert_column): ref and sink the column.
5623         (gtk_tree_view_append_column): ref and sink the column.
5624         (gtk_tree_view_queue_draw_node): New function to handle redrawing
5625         individual nodes.  Should make the code much more efficient, if
5626         actually used.
5627
5628 2001-01-19  Havoc Pennington  <hp@redhat.com>
5629
5630         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
5631         byte_offset variable was being used to mean both "offset into
5632         layout" and "offset into buffer line" which was no longer true
5633         with addition of preedit string; fix
5634
5635 2001-01-19  Havoc Pennington  <hp@redhat.com>
5636
5637         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
5638
5639         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
5640         function
5641
5642         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
5643         implement
5644
5645         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
5646         scroll_to_cell, matches TextView scroll functions better
5647         (gtk_tree_view_tree_to_widget_coords): new function
5648         (gtk_tree_view_widget_to_tree_coords): new function
5649         (gtk_tree_view_get_visible_rect): new function
5650         (gtk_tree_view_get_path_at_pos): accept negative coordinates
5651         (gtk_tree_view_draw_node_focus_rect): new function moved from
5652         draw_focus, also, use width of bin_window as width of the focus
5653         rect
5654         (gtk_tree_view_expand_row): fix bug where it didn't recognize
5655         already-expanded rows
5656         (gtk_tree_view_get_cell_rect): new function
5657         (gtk_tree_view_get_path_at_pos): return the click position
5658         relative to the passed-in cell
5659         (gtk_tree_view_set_expander_column): new function
5660
5661         * configure.in: remove gtk-config-2.0 chmod
5662
5663         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
5664         and properly handle drags with targets we don't understand
5665         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
5666         scrolling anyway
5667         (gtk_text_view_drag_drop): stop scrolling here though, and set the
5668         mark invisible
5669
5670         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
5671         function
5672         (gtk_drag_dest_get_target_list): new function
5673         (gtk_drag_dest_set_target_list): new function
5674         
5675         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
5676
5677         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
5678         related to drag-and-drop
5679
5680 2001-01-19  Alexander Larsson  <alexl@redhat.com>
5681
5682         * gdk/linux-fb/gdkprivate-fb.h:
5683         Define EMULATE_GDKFONT.
5684         Add extra pango_font stuff to GfkFontPrivate.
5685         
5686         * gdk/linux-fb/gdkdrawable-fb2.c:
5687         * gdk/linux-fb/gdkfont-fb.c:
5688         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
5689         emulation using PangoFont.
5690
5691 2001-01-17  Havoc Pennington  <hp@pobox.com>
5692
5693         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
5694         all the non-deprecated set_foo functions. Added missing object
5695         properties, and added g_object_notify() to setters. 
5696         Wrote docs.
5697         
5698 2001-01-18  Tor Lillqvist  <tml@iki.fi>
5699
5700         * gtk/gtkmain.c
5701         * gtk/gtkrc.c: (Win32) Use the new
5702         g_win32_get_package_installation_(sub)directory() functions.
5703
5704         * config.h.win32.in: New file.
5705         
5706         * config.h.win32: Removed.
5707
5708         * configure.in: Output config.h.win32.
5709
5710         * Makefile.am: Add it to EXTRA_DIST.
5711
5712         * gtk/gtk.def: Update.
5713
5714 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
5715
5716         * gtk/gtklabel.c (gtk_label_size_request): Set the
5717         attributes onto the PangoLayout even if they are newly
5718         created from label->pattern.
5719
5720 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
5721
5722         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
5723
5724         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
5725         structures in functions. Fixes bug where gtk_dataset_*
5726         was accidentally still being used in one place, causing
5727         every dest side event to be treated independently.
5728
5729         * gtk/gtkdnd.c: Remove last vestages of handling
5730         ::draw (fixes warning)
5731         
5732         * gtk/gtkentry.[ch]: Add drag and drop support.
5733
5734         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
5735         new function gtk_check_drag_threshhold() for checking
5736         to check if (dx,dy) has exceeded the threshhold for starting
5737         a drag and use it everywhere.
5738
5739 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
5740
5741         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
5742         add -I{includedir}/gtk-2.0.
5743
5744         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
5745         gdk/gdk-pixbuf.h: Doc fixups.
5746         
5747         * gtk/gtkobject.h: Remove trailing , from enum
5748
5749 2001-01-17 Alexander Larsson <alexl@redhat.com> 
5750
5751         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
5752         Doh! Mixed up x and y.
5753
5754         * gdk/linux-fb/gdkglobals-fb.c:
5755         Removed gdk_fb_pointer_grab_window_events,
5756         added _gdk_fb_pointer_grab_owner_events and
5757         _gdk_fb_keyboard_grab_owner_events.
5758
5759         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
5760         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
5761         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
5762         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
5763         Send crossing events after ungrab finished.
5764         (gdk_keyboard_grab): Set ..._owner_events
5765         (type_masks): Move out of function.
5766         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
5767         gdk_fb_keyboard_event_window): New functions, return the
5768         window an event should be targeted at. Handles grabs and
5769         event propagation. Can return NULL.
5770         (gdk_event_make): Remove event_mask checking. Now always
5771         returns an event.
5772                 
5773         * gdk/linux-fb/gdkkeyboard-fb.c:
5774         * gdk/linux-fb/gdkproperty-fb.c:
5775         * gdk/linux-fb/gdkselection-fb.c:
5776         Use new event_window/gdk_event_make() behaviour.
5777         
5778         * gdk/linux-fb/gdkmouse-fb.c:
5779         Use new event_window/gdk_event_make() behaviour.
5780         Only send motion events if in the same window.
5781         If grabbed, use cursor from window if sibling of grabbed
5782         window, and cursor from grabbed window otherwise.
5783
5784         * gdk/linux-fb/gdkprivate-fb.h:
5785         Update gdk_fb_window_send_crossing_events, gdk_event_make
5786         and grab varaible declarations. Add gdk_fb_*_event_window().
5787
5788         * gdk/linux-fb/gdkwindow-fb.c:
5789         Use new event_window/gdk_event_make() behaviour.
5790         Keep correct track of focus window.
5791         (gdk_window_set_events): Set all specific button motion masks
5792         if GDK_BUTTON_MOTION_MASK set.
5793
5794         * gtk/gtkdnd.c (gtk_drag_update):
5795         Free info->last_event if gdk_drag_motion returned FALSE.
5796
5797 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5798
5799         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
5800         Eliminate redraws when input-only windows are shown or
5801         hidden. Thanks to jpe@archaeopteryx.com.
5802
5803 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
5804
5805         * docs/faq/gtk-faq.sgml: FAQ update:
5806           - Update to bugzilla
5807           - Add GTK+ and security/SUID/SGID
5808           - Add DnD question
5809
5810 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
5811
5812         * gdk/linux-fb/gdkdnd-fb.c:
5813         Some cleanups.
5814         
5815 2001-01-15  Havoc Pennington  <hp@pobox.com>
5816
5817         * tests/testtreeview.c: add test stuff for CellRendererToggle
5818
5819         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
5820         accessor
5821
5822         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
5823         only toggle on button press (would do release like GtkButton, but
5824         we'd need implicit grab code for treeview cells)
5825
5826 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5827
5828         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
5829
5830         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
5831         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
5832
5833         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
5834         to g_{locale,filename}_{to,from}_utf8 to match current API.
5835
5836         * gtk/makefile.msc.in (gtk_OBJECTS)
5837         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
5838
5839         * gtk/gtk.def: Update.
5840
5841 2001-01-15  Tor Lillqvist  <tml@iki.fi>
5842
5843         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
5844         implementaion that more closely mimics the events that an X server
5845         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
5846         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
5847         with nested preview widgets, for instance, more responsive when
5848         you move the mouse quickly into them.
5849         (find_window_for_pointer_event): Make it actually compile.
5850         (gdk_event_translate): Set send_event to the value of
5851         InSendMessage (). This doesn't really mean the same as X11's
5852         send_event flag, but is close enough, says jpe@archaeopteryx.com
5853
5854 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5855
5856         * gdk/linux-fb/gdkdnd-fb.c:
5857         Implemented drag and drop.
5858         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
5859         when it tries to free and then copy the same event (info->last_event).
5860         I am not sure about why this happens, but will continue looking.
5861
5862 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5863
5864         * gdk/linux-fb/gdkwindow-fb.c:
5865         Use gdk_window_invalidate_rect instead of
5866         gdk_window_invalidate_rect_clear to minimise flashing.
5867         When hiding windows you need to clear the root window though.
5868
5869 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5870
5871         * gdk/linux-fb/gdkdrawable-fb2.c:
5872         For optization, add an full_shapes argument to gdk_fb_clip_region.
5873         If this is false, only the cliprects of the shapes are used.
5874
5875         * gdk/linux-fb/gdkprivate-fb.h:
5876         Export gdk_fb_window_peek_shape.
5877         Add full_shapes to gdk_fb_clip_region.
5878
5879         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
5880         When moving a window, don't clear everything under the it, just the
5881         root window. Makes stuff faster and flash less.
5882         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
5883         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
5884         offset of the shape.
5885         
5886
5887 2001-01-12  Havoc Pennington  <hp@redhat.com>
5888
5889         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
5890         current invalid region, fixes redraw bug while scrolling the 
5891         text widget
5892
5893         * gtk/gtktextview.c, gtk/gtktextview.h:
5894         Rearrange the scrolling/validation/etc. code in a major way, 
5895         so it seems to make sense to me. Probably isn't genuinely that
5896         much better, but...
5897
5898         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
5899         notifies
5900
5901         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
5902
5903 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
5904
5905         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
5906         Hide mouse pointer while rotation. Show it afterwards.
5907
5908 2001-01-12  Alexander Larsson  <alexl@redhat.com>
5909
5910         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
5911         windows in consideration when generating clip region.
5912
5913         * gdk/linux-fb/gdkfb.h:
5914         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
5915
5916         * gdk/linux-fb/gdkprivate-fb.h:
5917         Add shape to GdkWindowFBDatat.
5918         exported gdk_fb_window_get_abs_shape().
5919         removed gdk_fb_draw_lines declaration.
5920
5921         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
5922         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
5923         send focus changes when there is a grabbed window.
5924         (gdk_window_get_pointer): Handle shaped windows.
5925         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
5926         (gdk_fb_window_peek_shape): Returns the shape for a window,
5927         handles GDK_FB_USE_CHILD_SHAPE.
5928         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
5929         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
5930         (gdk_window_shape_combine_mask): Implement.
5931
5932         * gtk/gtkwindow-decorate.c:
5933         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
5934         setting the shape of a window makes the window transparent.
5935
5936 2001-01-11  Havoc Pennington  <hp@redhat.com>
5937
5938         * gtk/gtktreemodelsimple.h: Oops, broke some macros
5939
5940 2001-01-10  Havoc Pennington  <hp@redhat.com>
5941
5942         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
5943         add this function, bug 40251
5944
5945         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
5946         of type macro   
5947
5948 2001-01-11  Alexander Larsson  <alexl@redhat.com>
5949
5950         * acconfig.h:
5951         Added ENABLE_SHADOW_FB
5952
5953         * configure.in:
5954         Added --disable-shadowfb
5955
5956         * gdk/linux-fb/gdkcursor-fb.c:
5957         Update shadowfb when updating cursor
5958
5959         * gdk/linux-fb/gdkdrawable-fb2.c:
5960         Added wrappers for shadowfb that calls  the normal drawable
5961         methods, but calls gdk_shadow_fb_update(bounding box) when
5962         GdkWindows are drawed to.
5963         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
5964         which also returns the bounding box.
5965
5966         * gdk/linux-fb/gdkfb.h:
5967         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
5968
5969         * gdk/linux-fb/gdkgeometry-fb.c:
5970         Update shadowfb when scrolling window.
5971
5972         * gdk/linux-fb/gdkglobals-fb.c:
5973         Add _gdk_fb_screen_angle.
5974         
5975         * gdk/linux-fb/gdkkeyboard-fb.c:
5976         Test code for screen rotation. Shift-F2 in the xlate driver
5977         rotates the screen.
5978
5979         * gdk/linux-fb/gdkmain-fb.c:
5980         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
5981
5982         * gdk/linux-fb/gdkmouse-fb.c:
5983         Use fb_width/height instead of modeinfo.xres/yres.
5984
5985         * gdk/linux-fb/gdkprivate-fb.h:
5986         Added fb_men, fb_width, fb_height & fb_stride. When using
5987         shadow fb these can differ from the framebuffer stuff.
5988         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
5989         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
5990         _gdk_fb_screen_angle. Removed CM, RP.
5991
5992         * gdk/linux-fb/gdkrender-fb.c:
5993         Added code for shadowfb handling and screen rotation using
5994         shadowfb.
5995
5996         * gdk/linux-fb/gdkwindow-fb.c:
5997         Use fb_mem, fb_stride, fb_width, fb_height.
5998         Added recompute_rowstride to reset the rowstride of all windows.
5999         Added gdk_fb_recompute_all() which recomputes rootwindow size,
6000         window abs positions and window rowstrides. Usefull when the
6001         rotation has changed.
6002
6003 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
6004
6005         * docs/faq/gtk-faq.sgml: update to make web site updating easier
6006
6007 2001-01-10  Havoc Pennington  <hp@redhat.com>
6008
6009         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
6010         where sibling == iter
6011         (gtk_tree_store_insert_after): handle sibling == iter
6012         (gtk_tree_store_prepend): remove stamp checks
6013         (gtk_tree_store_insert_before): ditto
6014         (gtk_tree_store_append): ditto
6015         (gtk_tree_store_get_path): ditto
6016         (gtk_tree_store_get_value): ditto
6017         (gtk_tree_store_iter_has_child): ditto
6018         (gtk_tree_store_iter_n_children): ditto
6019         (gtk_tree_store_iter_nth_child): ditto
6020         (gtk_tree_store_insert_after): ditto
6021         (gtk_tree_store_is_ancestor): ditto
6022         (gtk_tree_store_iter_depth): ditto
6023         (gtk_tree_store_insert_before): assert that sibling's parent is
6024         the same as the passed-in parent
6025         (gtk_tree_store_insert_after): assert that sibling's parent is
6026         the same as the passed-in parent
6027
6028         
6029         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
6030         function to get the first iterator in a model
6031         
6032         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
6033         conventionally the "root" in this sense is just NULL afaict.
6034
6035         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
6036         where sibling == iter
6037         (gtk_list_store_insert_after): handle case where sibling == iter
6038
6039         * tests/testtreeview.c (run_automated_tests): fairly lame basic
6040         automated tests for ListStore, TreeStore
6041
6042         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
6043         (gtk_list_store_insert): update tail pointer, and fix it to work
6044         (gtk_list_store_insert_before): update tail pointer, and fix it to work
6045         (gtk_list_store_append): use tail to be faster
6046         (gtk_list_store_prepend): fix it, update tail pointer
6047         (gtk_list_store_insert_after): fix it, update tail pointer
6048
6049         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
6050         the list
6051
6052 2001-01-09  Havoc Pennington  <hp@redhat.com>
6053
6054         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
6055         is NULL due to a pending resize
6056
6057         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
6058         column width to values less than 1
6059
6060         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
6061         width to be between min/max width, and still set the width 
6062         even if autosize is turned on, so the tree view can use this 
6063         function in order to autosize.
6064         (gtk_tree_view_column_init): set initial width to 1 not 0
6065
6066         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
6067         setter function to modify column width, so we get notification
6068         (gtk_tree_view_insert_iter_height): ditto
6069         (gtk_tree_view_calc_size): ditto
6070         (gtk_tree_view_check_dirty): ditto
6071
6072         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
6073         properties to change all the interesting attributes of the tree
6074         view column.
6075         (gtk_tree_view_column_set_header_clickable): rename set_clickable
6076         (gtk_tree_view_column_get_clickable): add
6077         (gtk_tree_view_column_set_cell_renderer): don't unset the current
6078         attributes; assume a cell renderer with equivalent object
6079         properties has been swapped in. Do g_object_notify().
6080         (gtk_tree_view_column_set_visible): g_object_notify
6081         (gtk_tree_view_column_get_sizing): rename from get_col_type
6082         (gtk_tree_view_column_set_sizing): g_object_notify
6083         (gtk_tree_view_column_set_width): add g_object_notify
6084         (gtk_tree_view_column_set_min_width): ditto
6085         (gtk_tree_view_column_set_max_width): ditto
6086         (gtk_tree_view_column_set_title): ditto
6087         (gtk_tree_view_column_set_clickable): ditto
6088         (gtk_tree_view_column_set_widget): ditto
6089         (gtk_tree_view_column_set_justification): ditto
6090
6091 2001-01-09  Havoc Pennington  <hp@redhat.com>
6092
6093         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
6094         there are no rows in the model
6095
6096         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
6097         NULL, then return the start of the list
6098
6099         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
6100         if we can't get any rows from an empty model 
6101
6102         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
6103         extraneous * after function pointer typedef usage
6104
6105         * Makefile.am: don't specify full path to cp and rm
6106
6107         * gtk/gtkcellrenderertextpixbuf.c
6108         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
6109         NULL before dereferencing, fixes a segfault that happened from
6110         time to time
6111
6112         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
6113         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
6114         and reindent the function
6115         (gtk_cell_renderer_pixbuf_get_size): indentation
6116
6117         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
6118         we quit it
6119         (gtk_dialog_add_buttons_valist): add g_return_if_fail
6120         (gtk_dialog_set_default_response): New function, to set default
6121         button
6122         (gtk_dialog_set_response_sensitive): New function, to set 
6123         sensitivity of buttons
6124
6125         * gtk/gtkcellrendererpixbuf.c
6126         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
6127         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
6128
6129         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
6130         handle any G_TYPE_OBJECT subclass, not just the base class, and 
6131         also boxed types.
6132         (_gtk_tree_data_list_value_to_node): ditto
6133
6134         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
6135         --gtk-debug=tree
6136
6137         * gtk/gtkmain.c: add GTK_DEBUG_TREE
6138
6139         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
6140
6141 2001-01-09  Tor Lillqvist  <tml@iki.fi>
6142
6143         * gdk/win32/gdkevents-win32.c: Implement better mouse
6144         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
6145         (find_window_for_pointer_event): New function.
6146         (gdk_event_translate): Use it when handling mouse events.
6147
6148 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
6149
6150         * configure.in:
6151         Added --with-included-loaders option
6152
6153         * gdk-pixbuf/Makefile.am:
6154         * gdk-pixbuf/gdk-pixbuf-io.c:
6155         Add support for including selected gdk-pixbuf loaders only.
6156
6157         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
6158         gtk_window_set_has_frame):
6159         Added inline documentation.
6160
6161         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
6162         * docs/reference/gdk/tmpl/windows.sgml:
6163         Added inline documentation.
6164
6165 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
6166
6167         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
6168         realizing buttons that have already been realized.
6169
6170 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
6171
6172         * tests/testtreeview.c (main): Show menu items before adding to
6173         option menu.
6174
6175         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
6176         around if we kill them.
6177
6178         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6179         Return if we pass in a NULL model.
6180
6181 2001-01-08  Havoc Pennington  <hp@redhat.com>
6182
6183         * tests/testtreeview.c: hack on this some
6184
6185         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
6186         gtk_tree_store_set_valist, v is for arrays, valist for varargs
6187         list
6188         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
6189
6190         * gtk/gtkliststore.h: Add varargs set() and get() convenience
6191         functions
6192
6193 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6194
6195         * gtk/gtkwindow-decorate.[hc]:
6196         * gtk/Makefile.am:
6197         New files. Contains an implementation of a minimal WM for
6198         linux-fb.
6199
6200         * gtk/gtkwindow.h:
6201         Add the possibility for GtkWindows to specify a frame. This
6202         is used for the window decoration code, but could concievably
6203         be used for X programs too (xmms style windows).
6204         GtkWindow->frame is the toplevel window if the window is framed.
6205         The signal frame_event gets all events that are targeted to
6206         GtkWindow->frame.
6207         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
6208         
6209         * gtk/gtkwindow.c:
6210         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
6211         Call out to gtkwindow-decorate.c for WM support in linx-fb.
6212
6213 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6214
6215         * docs/README.linux-fb:
6216         Correct filename ~/.pangoft2_aliases
6217
6218         * gdk/gdkwindow.h:
6219         Added new function gdk_window_get_decorations.
6220
6221         * gdk/linux-fb/gdkfb.h:
6222         Removed _gdk_window_get_decorations declaration.
6223         Renamed _gdk_window_set_child_handler to
6224         gdk_fb_window_set_child_handler.
6225
6226         * gdk/linux-fb/gdkwindow-fb.c:
6227         Renamed _gdk_window_set_child_handler to
6228         gdk_fb_window_set_child_handler.
6229
6230         * gdk/x11/gdkwindow-x11.c:
6231         New function gdk_window_get_mwm_hints().
6232         Implemented gdk_window_get_decorations.
6233
6234         * docs/reference/gdk/tmpl/windows.sgml:
6235         * docs/reference/gdk/gdk-sections.txt:
6236         Added gdk_window_get_decorations docs.
6237         
6238 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
6239
6240         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
6241         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
6242         gdk_fb_window_send_crossing_events):
6243         Possibly send focus events when the mouse moves from one
6244         window to another.
6245
6246 2001-01-07  Tor Lillqvist  <tml@iki.fi>
6247
6248         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
6249         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
6250         to match current API.
6251
6252         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
6253         environment variable is set, don't call g_error when on a
6254         palettized (PseudoColor) display. Some people want to use GTK+ 
6255         in 256-colour mode even though works only partially.
6256
6257         * gdk/gdk.def
6258         * gtk/gtk.def
6259         * gtk/makefile.mingw.in: Update.
6260
6261 2001-01-05  Havoc Pennington  <hp@redhat.com>
6262
6263         * tests/testtreeview.c: hack on this a bit
6264
6265         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
6266         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
6267
6268         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
6269         was spelled incorrectly
6270         (GTK_IS_TREE_MODEL_SIMPLE): ditto
6271
6272         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
6273         from gtk_tree_view_set_headers_active   
6274
6275         * gtk/gtktexttag.c:
6276         (gtk_text_tag_get_property): handle PROP_DIRECTION
6277         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
6278         properties, bug 40235
6279
6280         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
6281         forward_to_line_end
6282
6283 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
6284
6285         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
6286         modules/input/gtkimcontextxim.c: Adapt to new prototypes
6287         for unicode,locale,filename conversion functions.
6288
6289 2001-01-05  Havoc Pennington  <hp@redhat.com>
6290
6291         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
6292         broken if called on the first position in the buffer.
6293
6294         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
6295         forward_to_delimiters to be called only if we aren't already at
6296         the delimiters.
6297
6298 2001-01-05  Havoc Pennington  <hp@redhat.com>
6299
6300         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
6301
6302 2001-01-05  Alexander Larsson  <alexl@redhat.com>
6303
6304         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
6305         colormap in here. Sync from X port.
6306         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
6307         Sync from X port.
6308         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
6309         This happens now and then, and i don't think it is a bug.
6310         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
6311         != endpoint.
6312         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
6313         GDK_LINE_SOLID.
6314
6315         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
6316         some of the fields filled in at least.
6317
6318         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
6319         miLineArcD is no more, remove it from the function definition.
6320
6321 2001-01-04  Havoc Pennington  <hp@redhat.com>
6322
6323         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
6324         this
6325
6326         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
6327         user_data instead of tree_node
6328
6329         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
6330         TREE_VIEW_COLUMN_SIZE
6331
6332         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
6333         "size" field to "width" finishes bug 40061
6334
6335         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
6336         for bitfields, bug 40268
6337
6338 2001-01-04  Havoc Pennington  <hp@redhat.com>
6339
6340         Rename some stuff:
6341         
6342         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
6343
6344         s/GtkModelSimple/GtkTreeModelSimple/g;
6345         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
6346         s/gtk_model_simple/gtk_tree_model_simple/g;
6347         s/gtkmodelsimple/gtktreemodelsimple/g;
6348
6349         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
6350
6351         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
6352         s/column_set_col_type/column_set_sizing/g;
6353
6354         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
6355         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
6356
6357         s/GtkCellRendererType/GtkCellRendererState/g;
6358         
6359         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
6360         (gtk_cell_renderer_toggle_class_init): change "state" property to
6361         "active", to match GtkToggleButton
6362         (gtk_cell_renderer_toggle_get_active): new function, bug
6363         40269
6364         (gtk_cell_renderer_toggle_set_active): new function
6365         (gtk_cell_renderer_toggle_set_property): route changes to toggle
6366         state through gtk_cell_renderer_set_active
6367
6368 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
6369
6370         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
6371         temporarily until they work again.  Brought up to date with
6372         changes in the model.
6373         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
6374         model.
6375
6376 2001-01-04  Havoc Pennington  <hp@redhat.com>
6377
6378         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
6379         equal to the line length, then position iterator before paragraph 
6380         separators. Fixes crash reported by Mikael Hermansson when
6381         pressing left arrow from the start of a line.   
6382
6383         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
6384         about byte indexes off the end
6385         (iter_set_from_char_offset): add g_error about char offsets
6386         off the end
6387
6388 2001-01-03  Havoc Pennington  <hp@redhat.com>
6389
6390         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
6391
6392         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
6393         of private functions; remove inclusion of private headers.
6394
6395         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
6396         function, so we don't need private functions in gtktextdisplay.c
6397
6398         * gtk/gtktextiterprivate.h: underscore-ification
6399
6400         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
6401         to instead say "only useful to implement widgets"
6402
6403         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
6404         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
6405         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
6406
6407         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
6408         This function was completely broken
6409
6410         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
6411
6412         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
6413
6414         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
6415
6416         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
6417
6418         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
6419
6420         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
6421
6422         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
6423         gtk_paint_layout
6424
6425         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
6426         gtk_paint_layout
6427
6428         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
6429         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
6430         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
6431         which were not implemented.     
6432
6433         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
6434         insert_pixbuf signal. Rename delete_text to delete_range since it
6435         also deletes pixbufs and child anchors. This almost closes bug
6436         40245 (still need to deal with child anchors)
6437
6438         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
6439         insert_pixbuf, change signal names as appropriate, change types of
6440         signals taking marks/tags to have the specific type, not just
6441         G_TYPE_OBJECT
6442         
6443         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
6444         closes bug 40051
6445
6446         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
6447         unnecessary remove_contents() call
6448         (gtk_option_menu_class_init): add a "changed" signal, closes
6449         bug 40039
6450         (gtk_option_menu_update_contents): emit "changed" if the 
6451         active menu item changes
6452
6453         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
6454         cast to GtkObject, reported by Jonas Borgstrom
6455         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
6456         we can't do stuff with side effects in finalize. Instead, spew a
6457         warning if the loader isn't closed.
6458
6459         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
6460         colormap in here, non-X ports probably need to sync to this change
6461
6462         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
6463         assertion that colormap != NULL, you can set the colormap to NULL
6464         if you like.
6465         
6466         * Makefile.am: remove gtk-config-2.0
6467
6468         * configure.in: Use pkg-config to locate GLib. Remove
6469         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
6470         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
6471         Use pkg-config to locate Pango. Output correct Pango libs to
6472         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
6473
6474         * Makefile.am (pkgconfig_DATA): install only target-specific pc
6475         files
6476         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
6477         X11 pc files
6478
6479         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
6480         unref from here
6481
6482 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
6483
6484         * configure.in:
6485         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
6486
6487 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
6488
6489         * gtk/gtktextlayout.c
6490         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
6491         variable when moving back onto a single line.
6492
6493 2001-01-01  Havoc Pennington  <hp@redhat.com>
6494
6495         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6496
6497         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6498
6499         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
6500         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
6501
6502 2001-01-01  Havoc Pennington  <hp@redhat.com>
6503
6504         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
6505
6506         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
6507         GtkTextAttributes
6508
6509         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
6510         #40246
6511         (gtk_text_attributes_copy_values): rename from 
6512         gtk_text_attributes_copy
6513         (gtk_text_attributes_copy): a more standard GTK copy function, 
6514         which returns a new object
6515
6516 2001-01-01  Havoc Pennington  <hp@redhat.com>
6517
6518         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
6519         
6520         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
6521         don't fill in tree_view->priv->selection, kind of an unexpected
6522         side effect
6523
6524         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
6525         gtkintl.h
6526         
6527         * gtk/gtkcellrenderer.c: Remove definition of _ and include
6528         gtkintl.h
6529         (gtk_cell_renderer_get_property): remove calls to g_value_init
6530
6531         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
6532         gtkintl.h
6533
6534         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
6535         and include gtkintl.h
6536         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
6537         property names
6538
6539         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
6540         GtkTreeSelection
6541         (_gtk_tree_selection_new_from_with_view): rename, return
6542         GtkTreeSelection
6543         (_gtk_tree_selection_set_tree_view): rename with uscore
6544         (gtk_tree_selection_get_selected): fill in the "model" out param
6545         first, so it gets filled in even if we return at the top of the 
6546         function
6547         (gtk_tree_selection_real_select_all): add a comment and an else{}
6548         to clarify this a bit
6549         (gtk_tree_selection_real_unselect_all): add the same else{}
6550
6551         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
6552         set_tree_view to have underscore prefixes, move them to the
6553         private header, fix return type of new_with_tree_view
6554         (struct _GtkTreeSelection): mark struct
6555         fields private  
6556
6557         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
6558         GtkTreeModelFlags, not a guint
6559         (gtk_tree_path_prev): return gboolean not gint
6560         (gtk_tree_path_up): return gboolean not gint
6561
6562         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
6563         return GtkTreeModelFlags, not a guint
6564
6565         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
6566         that child model is non-null before unrefing it
6567         (g_value_int_compare_func): make this a qsort compare func, not 
6568         a boolean predicate
6569
6570         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
6571         (add -umn to the end), and mark it unimplemented
6572         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
6573         I don't see what it's for - doesn't the model always sort itself?
6574         (gtk_tree_model_sort_set_compare): this had the wrong signature
6575
6576         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
6577         Fix the docs to say that it destructively replaces existing
6578         attributes (previously said that it added attributes).
6579         (gtk_tree_view_column_set_visible): canonicalize bool before
6580         equality testing. Also, check for realization before
6581         hiding/showing the tree_column->window; if this window could exist
6582         before realization, then it's busted and needs fixing, we can't 
6583         create GDK resources pre-realization. Also, remove
6584         superfluous queue_resize(), since set_size() does that for us.
6585         (gtk_tree_view_column_set_col_type): check realization before 
6586         using tree_column->window
6587
6588         * gtk/gtktreedatalist.c: fix filename in copyright notice
6589
6590 2000-12-31  Havoc Pennington  <hp@pobox.com>
6591
6592         * gtk/gtktextview.c: Rearrange all the
6593         scroll-while-dragging-or-selecting code to be different, not
6594         necessarily better. ;-)
6595         (gtk_text_view_scroll_to_mark): Change this
6596         function to take within_margin as a fraction instead of a pixel
6597         value, and to take alignment arguments (indicating where to align 
6598         the mark inside the visible area)
6599         
6600         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
6601         to GtkObject
6602
6603         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
6604         behavior so that offsets past the end of the line are not 
6605         allowed, and an offset equal to the line length moves the iterator
6606         to the next line
6607         (gtk_text_iter_set_line_index): make parallel change
6608         (gtk_text_iter_get_bytes_in_line): add this function
6609         
6610         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
6611         of byte indexes off the end of the line; byte index at the end of
6612         the line now returns FALSE and doesn't fill in the requested
6613         values, byte index past the end of the line is an error.  Also,
6614         don't allow -1 offset anymore, since its meaning is unclear.
6615
6616         This change exposes some bug in visual cursor motion, where we
6617         end up with a huge invalid byte index; needs fixing. Symptom of 
6618         bug is a crash when you hit up arrow.
6619         
6620         (_gtk_text_line_char_locate): match the change to byte_locate
6621
6622         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
6623         from start of line properly. fixes bug reported by Mikael
6624         Hermansson where backspace would delete all text before the
6625         cursor.
6626
6627 2000-12-30  Tor Lillqvist  <tml@iki.fi>
6628
6629         * gdk/win32/gdkwindow-win32.c
6630         (gdk_window_impl_win32_get_visible_region): New function, as in
6631         the X11 backend.
6632         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
6633         instead of duplicating the same code here.
6634
6635         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
6636         GDK_COLORMAP macro.
6637
6638         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
6639         destroy function.
6640         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
6641         access that.
6642
6643         * gtk/gtk.def: Update.
6644
6645         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
6646
6647 2000-12-30  Havoc Pennington  <hp@pobox.com>
6648
6649         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
6650         colormap on input only windows, to avoid special cases all over
6651         the code for these windows.
6652
6653 2000-12-26  Tor Lillqvist  <tml@iki.fi>
6654
6655         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
6656         we are on a palettized display ("PseudoColor" in X11), as the code
6657         for that doesn't work anyway, and never has.
6658
6659 2000-12-22  Alexander Larsson  <alexl@redhat.com>
6660
6661         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
6662         Don't use isprint() for chars > 255.
6663
6664 2000-12-21  Havoc Pennington  <hp@redhat.com>
6665
6666         * tests/testtreeview.c: more work
6667
6668 2000-12-21  Alexander Larsson  <alexl@redhat.com>
6669
6670         * docs/README.linux-fb:
6671         Update the docs to the new pangoft2 way.
6672
6673 2000-12-21  Alexander Larsson  <alexl@redhat.com>
6674
6675         * configure.in:
6676         For linux-fb get the pangoft2 cflags and libs. This needs a recent
6677         pango version.
6678         Remove modules/linux-fb/Makefile.
6679
6680         * gdk/linux-fb/gdkdrawable-fb2.c:
6681         Render glyphs using freetype.
6682
6683         * gdk/linux-fb/gdkfb.h:
6684         Add new fb-specific functions needed for managing windows.
6685
6686         * gdk/linux-fb/gdkmain-fb.c:
6687         Remove gdk_font_init/fini() calls.
6688
6689         * gdk/linux-fb/gdkpango-fb.c:
6690         Remove old implementation. Use pangoft2 instead.
6691
6692         * gdk/linux-fb/gdkprivate-fb.h:
6693         Remove PangoFBFont and related stuff.
6694
6695         * gdk/linux-fb/gdkwindow-fb.c:
6696         Implement drawable->get_visible_region.
6697         Implement support for _gdk_window_set_child_handler () and
6698         _gdk_window_get_decorations().
6699
6700         * modules/Makefile.am:
6701         Remove linux-fb subdir.
6702
6703         * modules/linux-fb/*:
6704         Removed all.
6705         
6706 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
6707
6708         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
6709         calls, as they are no longer needed.
6710
6711         * gtk/gtktreemodelsort.c: Fix up the comparison code.
6712         
6713         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
6714         figure out how to emit a signal on an interface.
6715
6716 2000-12-20  Havoc Pennington  <hp@redhat.com>
6717
6718         * tests: new directory to contain tests, gtk/test* should move
6719         here sometime (with appropriate on-cvs-server hackery)
6720
6721         * tests/testtreeview.c, tests/Makefile.am: a test
6722         
6723         * configure.in (AC_OUTPUT): add tests/Makefile
6724
6725         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
6726         and "invisible_set" which were missing
6727
6728         * gtk/gtkrbtree.h: some cheesy indentation fix
6729         
6730 2000-12-20  Alexander Larsson  <alexl@redhat.com>
6731
6732         * gtk/gtkinvisible.c (gtk_invisible_realize):
6733         Attach the style to the window so that the style it is not
6734         leaked when unrealizing the window.
6735
6736 2000-12-18  Havoc Pennington  <hp@redhat.com>
6737
6738         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
6739         begin/end user action where appropriate
6740         (gtk_text_view_commit_handler): add begin/end user action
6741
6742         * gtk/gtktextbuffer.c: add begin/end user action signals, and
6743         bracket interactive operations with begin/end user action pair.
6744         
6745         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
6746         "interactive" arg from insert_text and delete_text signals.
6747         Add begin_user_action, end_user_action signals
6748         (gtk_text_buffer_begin_user_action): 
6749         (gtk_text_buffer_end_user_action): New functions to delimit 
6750         a user-visible action
6751
6752         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
6753         signals.
6754         
6755 2000-12-18  Havoc Pennington  <hp@redhat.com>
6756
6757         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
6758         was pretty non-working.
6759
6760         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
6761         by passing the length to g_utf8_validate().
6762
6763 2000-12-16  Havoc Pennington  <hp@pobox.com>
6764
6765         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
6766         Port to GObject, can go back in gdk-pixbuf after setting up 
6767         a gdk-pixbuf-marshal.h header over there.
6768
6769         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
6770         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
6771         args
6772         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
6773         set
6774         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
6775         here, do it when we create the buttons later
6776         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
6777         (gtk_tree_view_map): paranoia checks that column->button is shown 
6778         and unmapped
6779         (gtk_tree_view_size_request): only request visible children.
6780         Move header size calculation in here, for cleanliness, and 
6781         to maintain invariants for child widgets if we eventually 
6782         let users set different children inside the buttons
6783         (gtk_tree_view_map_buttons): factor out code to map buttons,
6784         since it was being called several times
6785         (gtk_tree_view_size_allocate_buttons): move_resize the drag
6786         windows instead of just moving them; their height may change 
6787         if we allow random widgets in there, or the theme changes.
6788         (gtk_tree_view_size_allocate): move button size allocation 
6789         above emitting the scroll signals, to ensure a sane state when we
6790         hit user code
6791         (gtk_tree_view_button_release): remove queue_resize after
6792         tree_view_set_size(), set_size() will handle any resize queuing
6793         that's needed
6794         (gtk_tree_view_focus_in): just queue a draw, don't fool with
6795         draw_focus goo
6796         (gtk_tree_view_focus): use gtk_get_current_event() and
6797         gdk_event_get_state()
6798         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
6799         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
6800         semicolon
6801         (gtk_tree_view_create_button): show the button here
6802         (gtk_tree_view_button_clicked): actually emit the clicked signal
6803         on the column
6804         (_gtk_tree_view_set_size): return right away if the size is
6805         unchanged, as a cheesy optimization
6806         (gtk_tree_view_setup_model): rename set_model_realized to 
6807         setup_model to match the flag that indicates whether we've 
6808         called it
6809         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
6810         exist, because set_scroll_adjustment does that and it shouldn't
6811         matter what order you call these in
6812         (gtk_tree_view_get_vadjustment): ditto
6813         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
6814         for paranoia
6815         (gtk_tree_view_set_headers_visible): call
6816         gtk_tree_view_map_buttons() instead of using cut-and-paste code
6817         (gtk_tree_view_append_column): clarify whether the return value
6818         is the count of columns before or after, and do the increment 
6819         separately from the return statement so you can tell from the code.
6820         (gtk_tree_view_remove_column): ditto
6821         (gtk_tree_view_insert_column): ditto
6822         (gtk_tree_view_get_column): remove g_return_if_fail for columns
6823         outside the existing range, the docs say that outside-range
6824         columns are allowed, so we handle them as documented. (Presumably
6825         this allows a nice loop with column != NULL as test.)
6826         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
6827         mean (left/right/center etc.).
6828         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
6829         (gtk_tree_view_expand_row): add docs
6830         (gtk_tree_view_collapse_row): add docs
6831
6832         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
6833         function to emit the clicked signal on a column
6834         
6835         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
6836         state of an event
6837         (gdk_event_get_time): don't treat GDK_SCROLL 
6838         as a button event, remove default case from switch so gcc 
6839         will whine if we don't explicitly handle all event types
6840
6841         * gtk/gtktreeselection.h: added some FIXME 
6842         
6843         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
6844         "columns" to "n_columns" and "column" to "columns" for clarity
6845
6846 2000-12-16  Havoc Pennington  <hp@pobox.com>
6847         
6848         * gtk/gtktextiter.c: General cleanup of the log attr iteration
6849         stuff. This should make e.g. the delete key work again in the
6850         text widget...
6851         (gtk_text_iter_forward_cursor_positions): handle negative count
6852         (gtk_text_iter_backward_cursor_positions): handle negative count
6853         (gtk_text_iter_forward_word_ends): handle negative count
6854         (gtk_text_iter_backward_word_starts): handle negative count
6855
6856         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
6857         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
6858         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
6859         GObject. No doubt will cause breakage.
6860
6861         * demos/gtk-demo/textview.c: remove hacks around
6862         non-GObject-ification of the text objects
6863
6864         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
6865         the text tag
6866         
6867 2000-12-14  Havoc Pennington  <hp@pobox.com>
6868
6869         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
6870         that we have Xrender
6871
6872 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
6873
6874         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
6875         Add two virtualized functions gdk_drawable_get_clip_region - to
6876         get the clip region when drawing.
6877         
6878         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
6879         use invalidate_region.
6880
6881         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
6882         region.
6883
6884         * acconfig.h configure.in: Check for Xft. For now, assume
6885         that if Xft is found, Pango was compiled with Xft support
6886         as well.
6887
6888         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
6889         gdk_colormap_query_color().
6890         
6891         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
6892         with Xft if appropriate.
6893
6894         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
6895         a pangoxft context if we have XFT and the environment
6896         variable GD_USE_XFT is set.
6897         
6898         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
6899         and also possibly an XftDraw structure.
6900
6901         * gtk/gtkfontsel.c: Handle the case where the font from the
6902         style doesn't match any of the fonts a bit better.
6903         
6904         * gtk/testgtk.c: Add tabs between directional segments for
6905         hebrew/arabic test. (Not really necessary, just a little
6906         prettier.)
6907
6908 2000-12-14  Havoc Pennington  <hp@redhat.com>
6909
6910         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
6911         reading a file
6912
6913 2000-12-14  Havoc Pennington  <hp@redhat.com>
6914
6915         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
6916         unused call to get_last_line()
6917
6918         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
6919         here until boxed is working (and maybe after that - we should
6920         really not gratuitously break old code)
6921
6922         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
6923         specific types for font_desc and tabs args, move them to
6924         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
6925         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
6926
6927         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
6928         use GTK_TYPE_POINTER for signal signatures as a hack-around
6929
6930         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
6931         PangoTabArray
6932
6933         * gtk/gtktextlayout.c (line_display_iter_to_index): 
6934         make static
6935         (line_display_index_to_iter): make static
6936
6937         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
6938         to marshal a string not a boxed
6939
6940         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
6941
6942         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
6943         since the UTF-8 isn't validated yet
6944
6945         * gtk/gtktextsegment.c (char_segment_check_func): don't require
6946         lines to end in '\n'
6947         
6948         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
6949         forward_to_delimiters, and grapheme boundaries
6950         (gtk_text_view_delete_from_cursor): properly handle non-newline
6951         delimiters, and grapheme boundaries
6952
6953         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
6954         to gtk_text_iter_forward_to_delimiters, and make it work properly
6955         if empty lines end with a character other than '\n'
6956
6957         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
6958         position
6959
6960 2000-12-15  Tor Lillqvist  <tml@iki.fi>
6961
6962         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
6963
6964         * gtk/gtk.def
6965         * gdk/gdk.def: Update.
6966
6967         * gdk/win32/gdkmain-win32.c
6968         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
6969         gdkmain-win32.c here.
6970
6971         * gdk/win32/makefile.mingw.in (all): No need to make
6972         gdk-win32res.o here, the makefile one step up will call us to make
6973         it.
6974
6975         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
6976         gdkkeys-win32.
6977
6978         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
6979
6980         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
6981         call to g_source_add().
6982
6983         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
6984         leak. Thanks to Andreas Kemnade.
6985
6986 2000-12-13  Havoc Pennington  <hp@pobox.com>
6987
6988         * gtk/gtktextbtree.h: Remove double _ in front of some functions
6989
6990         * gtk/gtktext*.[hc]: update accordingly
6991         
6992 2000-12-13  Havoc Pennington  <hp@pobox.com>
6993
6994         * gtk/gtktextbtree.h: Put _ in front of every function in this 
6995         header file
6996
6997         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
6998
6999 2000-12-13  Alex Larsson  <alexl@redhat.com>
7000
7001         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
7002         Add support for ps2 intellimouse.
7003
7004         * gdkkeyboard-fb.c:
7005         Move shift-F1 repaint handling to xlate handler only.
7006         
7007         * docs/README.linux-fb:
7008         Add imps2 to docs.
7009         Document the new refresh keys.
7010         
7011 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
7012
7013         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
7014
7015         * gtk/gtkbox.c: change property types from (u)long to (u)int for
7016         ::position and ::padding.
7017
7018         * gtk/gtkcontainer.c: make ::border_width an INT property.
7019
7020         * gtk/gtkpacker.c: make ::position an INT property.
7021
7022         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
7023         guard against NULL h/v scrollbars, since this is used at construction
7024         time.
7025
7026         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
7027         internal gtk_clist_constructor().
7028
7029         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
7030         gtk_ctree_constructor().
7031
7032         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
7033         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
7034
7035         * docs/reference/Makefile.am: fun stuff, disabled docs generation
7036         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
7037
7038         * gtk/gtkwidget.[hc]:
7039         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
7040         and gtk_widget_get().
7041         (gtk_widget_new): use g_object_new_valist().
7042         (gtk_widget_set): use g_object_set_valist().
7043
7044         * gtk/gtkobject.[hc]:
7045         removed gtk_object_arg_get_info(), gtk_object_getv(),
7046         gtk_object_query_args(), gtk_object_newv(),
7047         gtk_object_class_add_signals(),
7048         gtk_object_class_user_signal_new(),
7049         gtk_object_class_user_signal_newv(),
7050         gtk_object_arg_set(), gtk_object_arg_get(),
7051         gtk_object_args_collect(),
7052         gtk_object_default_construct(),
7053         gtk_object_constructed(),
7054         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
7055         removed nsignals, signals and n_args members from GtkObjectClass.
7056         (gtk_object_new): use g_object_new_valist().
7057         (gtk_object_set): use g_object_set_valist().
7058         (gtk_object_get): use g_object_get_valist().
7059         
7060         * gtk/gtkcompat.h: define gtk_object_default_construct().
7061         
7062         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
7063         g_object_new().
7064
7065         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
7066         fucntions, cleaned up method assignments (make sure your structures
7067         are setup properly before calling out). removed all GTK_CONSTRUCTED
7068         hacks ;)
7069
7070 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
7071
7072         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
7073         off-by-one error in checks. (Dave Lambert)
7074
7075 2000-12-12  Alexander Larsson  <alexl@redhat.com>
7076
7077         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
7078         Don't free gdk_fb_keyboard twice.
7079
7080 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
7081
7082         * gtk/testgtk.c:
7083         (create_tooltips): 
7084         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
7085         use GObject swapped_signal:: properties instead.
7086
7087         * gtk/gtkcellrenderertoggle.c: 
7088         * gtk/gtkcellrenderertextpixbuf.c: 
7089         * gtk/gtkcellrenderertext.c: 
7090         * gtk/gtkcellrendererpixbuf.c: 
7091         * gtk/gtkcellrenderer.c:
7092         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
7093         missing warnings for invalid property ids, install properties
7094         with g_object_class_install_property() now.
7095         
7096         * gtk/gtksignal.c:
7097         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
7098         
7099 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
7100         
7101         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
7102         to determine if a window is the focus widget within
7103         its toplevel.
7104
7105         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
7106         to be boolean.
7107
7108         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
7109         of the case where the container CAN_FOCUS to here instead
7110         of having it in each individual move-the-focus place.
7111
7112         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
7113         focusing to be geometric in a much more obvious sense. Arrowing
7114         around is still non-intuitive because it isn't perfect and
7115         because entries, etc, grab the arrow keys, but it at least
7116         usually will do what you expect now.
7117         
7118         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
7119         file.
7120
7121         * gtk/gtknotebook.c: Change tabs to be a single item in
7122         the focus chain. Make movement of focus on tabs with arrow
7123         keys wrap around.
7124         
7125         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
7126         CHECK_FIND_CHILD macro to give informative error messages
7127         instead of silent returns.
7128
7129         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
7130         flag since we handle GdkReturn on the tabs.
7131
7132         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
7133         windows rather than sending expose events directly.
7134
7135         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
7136         definition for GtkNotebookPage into .c file, since it is private.
7137
7138         * gtk/testgtk.c (create_notebook): Add option for 
7139         testing borderless notebook.
7140
7141         * gtk/testgtk.c (page_switch): Removed egregious poking
7142         around in GTK+ internals.
7143
7144         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
7145
7146         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
7147         properly through gtk_clist_focus. Make the title headers a
7148         single item in the tab-focus chain, and make left-right wrap
7149         around.
7150
7151         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
7152         focus method so that wrapping around works properly.
7153
7154         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
7155         that is handled for the widget now. 
7156
7157 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
7158
7159         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
7160         widgets as TOPLEVEL.
7161
7162         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
7163         TOPLEVEL widgets are containers.
7164
7165         * gtk/gtkinvisible.h: Remove useless include.
7166
7167 2000-12-11  Havoc Pennington  <hp@redhat.com>
7168
7169         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
7170         Handle chopping off \r\n and 0x2029 in addition to \n before
7171         passing to PangoLayout
7172
7173         * gtk/gtkimcontextsimple.c
7174         (gtk_im_context_simple_get_preedit_string): 
7175         return an empty string if no match is pending
7176
7177         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
7178         assertion that the returned preedit string was sane
7179
7180         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
7181         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
7182         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
7183
7184 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
7185
7186         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
7187         Fix up finalizer to chain to its parent.
7188
7189 2000-12-11  Alexander Larsson  <alexl@redhat.com>
7190
7191         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
7192         Clearified the difference between the keyboard types. Wrote a note
7193         about the magic sysrq key to get out of raw mode.
7194
7195 2000-12-09  James Henstridge  <james@daa.com.au>
7196
7197         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
7198         member to hold masks for detecting the start of a protocol packet.
7199         (mouse_devs): add packet start masks for ps2 and ms device types.
7200         Left the mask for fidmour blank, as I have no idea what it should
7201         be.
7202         (handle_mouse_io): skip bytes until we get to the start of a
7203         packet.  My Logitech mouse seems to be passing an extra NULL pad
7204         byte, and GPM does a similar thing here.
7205         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
7206         this is the ms mouse driver.
7207         (gdk_fb_mouse_ms_packet): fix up button handling, which was
7208         completely broken except for button1.  It was checking the wrong
7209         bit in the packet for the status of the right mouse button, and
7210         wrongly assuming right == button2 rather than 3.  I fixed that and
7211         also added support for middle button (button2).
7212
7213 2000-12-08  Havoc Pennington  <hp@redhat.com>
7214
7215         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
7216         that cause a segfault on text insertion
7217
7218         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
7219         warning
7220
7221         * gtk/gtktextiter.c (test_log_attrs): use
7222         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
7223
7224         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
7225         Get log attrs for a line, using a cache stored on the buffer
7226         
7227         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
7228         reported by Jeff Franks
7229
7230 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7231
7232         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
7233         /dev/ttyS0 -> /dev/mouse
7234
7235 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7236
7237         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
7238         Added dummy gdk_fontset_load.
7239
7240 2000-12-08  Alexander Larsson  <alexl@redhat.com>
7241
7242         * docs/README.linux-fb:
7243         * docs/Makefile.am:
7244         Initial GtkFB docs.
7245         
7246         * gdk/linux-fb/Makefile.am:
7247         Define GDK_DATA_PREFIX.
7248
7249         * gdk/linux-fb/gdkmain-fb.c:
7250         Fix typo.
7251         Change default display to /dev/fb0.
7252
7253         * gdk/linux-fb/gdkpango-fb.c:
7254         Add $(prefix)/share/fonts/ to font path.
7255         
7256 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7257
7258         * gdk/linux-fb/gdkkeyboard-fb.c:
7259         New file containing the abstracted keyboard driver. Most code
7260         taken from gdkinput-ps2.c
7261
7262         * gdk/linux-fb/gdkinput-ps2.c:
7263         Removed file.
7264         
7265         * gdk/linux-fb/Makefile.am:
7266         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
7267
7268         * gdk/linux-fb/gdkcolor-fb.c:
7269         display->fb was renamed to display->fb_fd.
7270
7271         * gdk/linux-fb/gdkcursor-fb.c:
7272         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7273
7274         * gdk/linux-fb/gdkinput.c:
7275         Moved gdk_input_init here from gdkinput-ps2.c
7276
7277         * gdk/linux-fb/gdkmain-fb.c:
7278         display->fb was renamed to display->fb_fd.
7279         Now the tty and the console is opened here instead
7280         of in the keyboard driver. Also check GDK_VT to see what
7281         tty to open.
7282         Move gdk_beep () here from gdkinput-ps2.c
7283         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7284
7285         * gdk/linux-fb/gdkmouse-fb.c:
7286         Add header.
7287         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7288         Return correct keyboard modifiers.
7289         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
7290
7291         * gdk/linux-fb/gdkprivate-fb.h:
7292         Add tty and vt info to display.
7293         Add orignal modeinfo storage to display
7294         Update global functions
7295
7296         * gdk/linux-fb/gdkwindow-fb.c:
7297         Added gdk_fb_window_find_focus().
7298         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7299
7300 2000-12-07  Havoc Pennington  <hp@pobox.com>
7301
7302         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
7303         function, noticed by Alex
7304
7305 2000-12-06  Elliot Lee  <sopwith@redhat.com>
7306
7307         * configure.in: Detect freetype properly
7308
7309         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
7310         above.
7311
7312 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7313
7314         * gdk/linux-fb/Makefile.am:
7315         Add gdkmouse-fb.c
7316         
7317         * gdk/linux-fb/gdkmouse-fb.c:
7318         New file. Abstracted the mouse drivers a bit.
7319
7320         * gdk/linux-fb/gdkcursor-fb.c:
7321         The cursor hide/show functions was moved here from gdkinput-ps2.c.
7322
7323         * gdk/linux-fb/gdkinput-ps2.c:
7324         Removed old mouse handling code. Moved cursor handling code
7325         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
7326         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
7327         gdk_mouse_get_info.
7328
7329         * gdk/linux-fb/gdkmain-fb.c:
7330         Pass NULL pointers for x,y in gdk_mouse_get_info call.
7331
7332         * gdk/linux-fb/gdkprivate-fb.h:
7333         Removed public gdk_fb_find_common_ancestor, added and renamed
7334         functions for the new mouse handling code.
7335
7336         * gdk/linux-fb/gdkwindow-fb.c:
7337         Moved gdk_fb_window_send_crossing_events here. added global
7338         variable gdk_fb_window_containing_pointer. made
7339         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
7340         renamed to gdk_mouse_get_info.
7341
7342 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7343
7344         * gdk/linux-fb/gdkevents-fb.c:
7345         Update to match latest gmain/gsource changes.
7346
7347         * gdk/linux-fb/gdkinput-ps2.c:
7348         Bogus gdk_keymap_get_entries_for_keycode implementation so that
7349         it links. Will be implemented later.
7350
7351 2000-12-03  Havoc Pennington  <hp@pobox.com>
7352
7353         * gdk/Makefile.am: add gdkkeys.[hc]
7354
7355         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
7356         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
7357
7358         * acconfig.h, configure.in: add checks and command line options
7359         for XKB
7360
7361         * gdk/x11/gdkkeys-x11.c: Implement the above functions
7362         
7363         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
7364         and group in the key event
7365
7366         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
7367         field with the low-level hardware key code, and a group
7368         field with the keyboard group
7369
7370         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
7371         and declare a couple globals used for keymap handling
7372         
7373         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
7374         hold down Shift-Control and type a hex number to get a Unicode 
7375         character corresponding to the hex number
7376         (gtk_im_context_simple_get_preedit_string): Fix cursor position
7377         (return bytes not chars)
7378
7379 2000-12-05  Elliot Lee  <sopwith@redhat.com>
7380
7381         * gdk/gdkcolor.h: Make GdkColor specify element sizes
7382         to avoid waste on 64-bit platforms.
7383
7384 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
7385
7386         * INSTALL: Fix link to PNG home, remove reference
7387         to fribidi.
7388
7389         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
7390         
7391         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
7392         tested.)
7393
7394         * gtk/gtkcheckmenuitem.c: Permanently turn on
7395         always_show_toggle.
7396
7397         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
7398         be NULL. (Vladimir Klebanov, #26545)
7399
7400         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
7401         some signed/unsigned comparison problems. (#6510,
7402         David Kaelbling)
7403
7404         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
7405         return type to boolean (Oskar Liljeblad, #18648)
7406
7407 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7408
7409         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
7410         Remove bogus colormap setting.
7411
7412 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7413
7414         * gdk/linux-fb/gdkcolor-fb.c:
7415         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
7416
7417         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
7418         Must set colormap.
7419         
7420 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
7421
7422         * docs/tutorial/gtk-tut.sgml: DND updates
7423
7424 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
7425
7426         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7427         Remove old debug g_warning().
7428         (gdk_fb_draw_drawable): The src argument can be either a wrapper
7429         or an implementation, just pass the implementation to draw_drawable_2.
7430         
7431         * gdk/linux-fb/gdkprivate-fb.h:
7432         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
7433
7434         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7435         clear and invalidate area when window is destroyed.
7436         (send_map_events): Remove old commented out code.
7437
7438 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7439
7440         * gdk/linux-fb/gdkpango-fb.c:
7441         Use italic instead of oblique in font aliases.
7442         
7443         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
7444         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
7445         other unsupported functions.
7446
7447 2000-12-04  Havoc Pennington  <hp@redhat.com>
7448
7449         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
7450
7451         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
7452
7453         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
7454
7455         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
7456         hack to avoid infinite loops (synthetic expose event) - 
7457         Owen has more appropriate fixes in a branch he'll check in later.
7458
7459         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
7460         separator, CR, and CRLF as line ends
7461
7462         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
7463         into lines using pango_find_paragraph_boundary(); other bits of
7464         the widget are still going to be broken if the boundary isn't '\n'
7465         though
7466
7467 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7468
7469         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
7470         multiply.
7471
7472         * gdk/linux-fb/gdkpango-fb.c:
7473         Copied some 26.6 scaling macros from pango to clean up the rounding.
7474         (pango_fb_font_get_glyph_info): Correct sign on x value.
7475
7476         * gdk/linux-fb/gdkprivate-fb.h:
7477         Removed unreferenced external functions.
7478
7479         * modules/linux-fb/Makefile.am: Use ` instead of '.
7480
7481         * modules/linux-fb/basic.c:
7482         Remove dead code. In particular the dummy lang engine which broke all
7483         pango layouts in GtkFB. Don't include tables-big.i anymore.
7484
7485         * modules/linux-fb/tables-big.i:
7486         Upgrade to latest version from pango. Left for reference, basic_ranges
7487         moved to basic.c.
7488         
7489 2000-12-04  Havoc Pennington  <hp@redhat.com>
7490
7491         Fix bugs Alex found:
7492         
7493         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
7494         to "draw"
7495
7496         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
7497
7498         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
7499
7500         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
7501         implementation in here, apparently the expose() implementation was
7502         dead code.
7503
7504 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7505
7506         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7507         Return positive descent.
7508
7509 2000-12-02  Havoc Pennington  <hp@pobox.com>
7510
7511         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
7512         method and signal
7513         
7514         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
7515         calls gdk_window_process_updates() to push the exposes through
7516         (gtk_widget_class_init): No more draw signal, no
7517         gtk_widget_real_draw()  
7518         
7519         * gtk/gtkbin.c (gtk_bin_draw): remove
7520
7521         * gtk/gtkbox.c (gtk_box_draw): remove
7522
7523         * gtk/gtkbutton.c (gtk_button_draw): remove
7524
7525         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
7526
7527         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
7528
7529         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
7530
7531         * gtk/gtkclist.c (gtk_clist_draw): remove
7532
7533         * gtk/gtkentry.c (gtk_entry_draw): remove
7534
7535         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
7536
7537         * gtk/gtkfixed.c (gtk_fixed_draw): remove
7538
7539         * gtk/gtkframe.c (gtk_frame_draw): remove
7540
7541         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
7542
7543         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
7544
7545         * gtk/gtklayout.c (gtk_layout_draw): remove
7546
7547         * gtk/gtklist.c (gtk_list_draw): remove
7548
7549         * gtk/gtklistitem.c (gtk_list_item_draw): remove
7550
7551         * gtk/gtkmenu.c (gtk_menu_draw): remove
7552
7553         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
7554
7555         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
7556
7557         * gtk/gtknotebook.c (gtk_notebook_draw): remove
7558
7559         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
7560
7561         * gtk/gtkpacker.c (gtk_packer_draw): remove
7562
7563         * gtk/gtkrange.c (gtk_range_draw): remove
7564
7565         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
7566
7567         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
7568
7569         * gtk/gtktable.c (gtk_table_draw): remove
7570
7571         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
7572
7573         * gtk/gtktext.c (gtk_text_draw): remove
7574
7575         * gtk/gtktextview.c (gtk_text_view_draw): remove
7576
7577         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
7578
7579         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
7580
7581         * gtk/gtktree.c (gtk_tree_draw): remove
7582
7583         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
7584
7585         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
7586
7587         * gtk/gtkviewport.c (gtk_viewport_draw): remove
7588
7589         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
7590
7591         * gtk/gtkvscale.c (gtk_vscale_draw): remove
7592
7593         * gtk/gtkwindow.c (gtk_window_draw): remove
7594
7595 2000-20-01  Anders Carlsson  <andersca@gnu.org>
7596
7597         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
7598         a GtkToggleButton is both insensitive and active, it was being
7599         drawn by the GtkButton draw handler which doesn't check the
7600         state. Now it's calling gtk_toggle_button_paint instead.
7601         
7602 2000-12-01  Havoc Pennington  <hp@redhat.com>
7603
7604         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
7605         dangling pointers to the appearance attributes from the 
7606         line display
7607
7608         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
7609         width/height to mean "full width/height of drawable"
7610
7611         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
7612         click to select word/line
7613         
7614         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
7615         when getting log attrs. Get a slice, so that pixmaps and stuff
7616         are properly handled.
7617
7618         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
7619         paste into the selection (replaces selection now, previously
7620         crashed or added to selection). Reveals longstanding btree bug -
7621         select multiple lines, middle-click on the selection, boom. This
7622         isn't related to my changes though.
7623
7624         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
7625         PangoLogAttrs changes
7626         (gtk_entry_move_backward_word): ditto
7627
7628         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
7629         functions return bool whether the iter moved onto a
7630         dereferenceable position.
7631  
7632         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
7633         functions for motion in terms of display lines.
7634
7635         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
7636         get the buffer a mark is inside
7637         
7638 2000-12-01  Alexander Larsson  <alexl@redhat.com>
7639
7640         * gdk/linux-fb/Makefile.am:
7641         * modules/linux-fb/Makefile.am:
7642         Freetype 2 final uses freetype-config
7643
7644         * gdk/linux-fb/gdkpango-fb.c:
7645         Upgrade to use Freetype 2 final.
7646         More flexible support for font aliases, this also fixes a bug with
7647         GtkFontSelector, as the aliases must be visible in the font/family list,
7648         or GtkFontSelector reads uninitialized memory.
7649
7650 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
7651
7652         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
7653         XGetIMValues to properly terminate variable argument list, and do
7654         NULL return check for ic_values and xim_styles.
7655
7656         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
7657         Restore preedit state after XmbResetIC().
7658         
7659         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
7660         XvaCreateNestedList() should take XvaNestedList, but not
7661         XvaNestedList*.
7662
7663         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
7664         preedit_draw_callback, preedit_caret_callback): Match
7665         "preedit-changed" signal name to "preedit_changed" to be
7666         consistent to the spec.
7667
7668         * gtk/gtkimcontextsimple.c (check_table):
7669         Match "preedit-changed" to "preedit_changed" to be consistent
7670         to the spec.
7671
7672 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
7673
7674         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
7675         gc->clip_region == NULL>
7676
7677 2000-11-30  Tor Lillqvist  <tml@iki.fi>
7678
7679         Changes by Hans Breuer:
7680         
7681         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
7682         Dont't use negative width and height as max_hints. This fixes
7683         Owen's recent testgtk changes for win32.
7684
7685         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
7686         gdk_win32_hdc_release): These are exported and may be called with
7687         other drawable types than our GdkDrawableImplWin32 (?).
7688
7689         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
7690         so always #define USE_BACKING_STORE.
7691
7692         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
7693         of printf for debugging output.
7694
7695         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
7696         
7697         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
7698
7699         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
7700         declaration.
7701
7702         * gtk/gtktexttypes.h: Ditto.
7703
7704         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
7705         (GDK_VoidSymbol) also if in case of arg check failure.
7706
7707         * gtk/gtkimcontextsimple.c
7708         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
7709         position to the pointer, but to the variable it points to.
7710
7711         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
7712
7713         * gtk/gtk.def: Updates.
7714
7715 2000-11-29  Elliot Lee  <sopwith@redhat.com>
7716
7717         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
7718         GTK_TYPE_TREE_MODEL.
7719
7720 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7721
7722         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
7723         Set the size of the font from the description.
7724         (gdk_text_width): Gross hack that calculates the width
7725         of text by text_length * size/2. This is necessary because
7726         GtkLabel does some ugly gtk_string_width call to calculate
7727         an good size.
7728         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
7729
7730 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
7731
7732         * docs/tutorial/gtk-tut.sgml: DND updates
7733
7734 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7735
7736         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
7737         If you pass width or height == 0 to gdk_window_clear_area they
7738         should be calculated from the window size.
7739
7740 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7741
7742         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
7743         a grab, but no grab-cursor, use the cursor from the grabbed
7744         window. (gdk_fb_window_send_crossing_events): Send normal
7745         enter/leave notifications if grab and owner_events == TRUE.
7746
7747 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7748
7749         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7750         Do implicit button grabs, even if the window doesn't
7751         want the event.
7752         (gdk_fb_window_send_crossing_events): If there is a
7753         grab, only the grabbed window gets normal enter/leave
7754         notifications. On ungrab go from grabbed window to current.
7755         Don't send any notification to b when propagating from c -> b.
7756         If setting a grab on window, don't set prev_window.
7757         (handle_mouse_input): Send enter/leave events to the window the
7758         mouse is over, not the grabbed one.
7759         
7760 2000-11-28  Elliot Lee  <sopwith@redhat.com>
7761
7762         * gdk/gdkregion-generic.c: Zap warning.
7763         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
7764         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
7765
7766 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
7767
7768         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
7769         The cursor should be hidden if it is part of either the
7770         source or destination region. Not only if it is in both.
7771         (gdk_window_set_transient_for): Silence warnings.
7772
7773 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7774
7775         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
7776         The default mode in X is Pie Arcs, therefore that is
7777         what Gtk+ uses.
7778
7779 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7780
7781         * gdk/linux-fb/gdkinput-ps2.c:
7782         Implement correct EnterNotify/LeaveNotify:
7783         (gdk_fb_window_send_crossing_events): New function that sends
7784         all GdkCrossingEvents from the last mouse-window to the specified
7785         destination.
7786         (gdk_fb_window_visibility_crossing): Removed function.
7787         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
7788         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
7789         instead of gdk_window_get_pointer() for better readability.
7790
7791         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
7792         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
7793
7794         * gdk/linux-fb/gdkprivate-fb.h:
7795         removed gdk_fb_window_visibility_crossing, added
7796         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
7797
7798         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
7799         New function that finds the least common ancestor of two windows.
7800         (gdk_window_show, gdk_window_hide):
7801         Use gdk_fb_window_send_crossing_events.
7802         (gdk_fb_window_move_resize): Send configure events to toplevel
7803         windows. Use gdk_fb_window_send_crossing_events.
7804
7805 2000-11-27  Havoc Pennington  <hp@redhat.com>
7806
7807         * gtk/gtkprivate.h (enum): Remove a trailing comma
7808
7809 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
7810
7811         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
7812         the "changed" callback of the adjustment.  We need to redraw the
7813         spin button's arrows when the adjustment's range changes.
7814         (adjustment_changed_cb): Draw the arrows.
7815         (gtk_spin_button_value_changed): Draw the arrows.
7816
7817 2000-11-23  Alexander Larsson  <alexl@redhat.com>
7818
7819         * gdk/linux-fb/gdkselection-fb.c:
7820         Initial selection implementation.
7821
7822         * gtk/gtkselection.c:
7823         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
7824         requestor in gtk_selection_request.
7825         
7826         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
7827         Added gdk_selection_property atom.
7828
7829         * gdk/linux-fb/gdkprivate-fb.h:
7830         Export _gdk_selection_window_destroyed.
7831         Removed mask_off_x/y from GdkCursorPrivateFB.
7832         Removed hbearing, added top, left to PangoFBGlyphInfo.
7833
7834         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7835         Call _gdk_selection_window_destroyed
7836         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
7837         the root window has been created.
7838         (static_dx_hack, static_dy_hack, compare_draw_rects,
7839         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
7840         in region. They are already sorted. Instead just traverse them in
7841         reverse if draw_direction < 0.
7842         
7843         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7844         Double-clicks must be sent after the normal button_press.
7845         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
7846         
7847         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
7848         Pass _gdk_fb_screen_gc instead of NULL.
7849
7850         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
7851         Initialize gdk_selection_property.
7852         (gdk_event_make): Remove unused code.
7853
7854         * gdk/linux-fb/gdkcursor-fb.c:
7855         Make the pixmap for the cursor the same size as the mask. Also remove
7856         the mask_off_x/y fields in GdkCursorPrivateFB and combine
7857         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
7858         Now the whole cursor is visible.
7859
7860         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7861         Fix bug where xdest+height instead of ydest+height was used
7862         to calculate if the source and dest overlapped. This fixes the
7863         redraw bug when the main window in testgtk was scrolled when
7864         partially covered by a tall window.
7865         Copy rectangles in region in order depending on draw_direction.
7866         Also moved the draw_direction flipping of start_y and end_y into
7867         the gc functions, as this might not be what all of them want.
7868         (gdk_fb_draw_lines): Support dashed lines.
7869         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
7870         so that the text is positioned correctly (was 1 pixel high).
7871
7872         gdk/linux-fb/gdkgc-fb.c:
7873         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
7874         all lines were drawn a pixel to short. Also checked the default of
7875         the rest of the values, and they're the same as X now.
7876
7877         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
7878         Clean up pixel positioning of the glyphs. Just use bgy->top and
7879         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
7880         to all divisions to get correct rounding behaviour.
7881
7882         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
7883         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
7884         Moved start_y/end_y flip into draw_drawable implementations.
7885         Flip also x rendering when draw_direction < 0.
7886         Remove unneccesary multiply with draw_direction.
7887
7888 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
7889
7890         * docs/tutorial/gtk-tut.sgml:
7891           - get rid of gtk_toggle_button_toggled FUD
7892           - start DND section - needs work - based on:
7893                 http://wolfpack.twu.net/docs/gtkdnd/
7894
7895 2000-11-22  Alexander Larsson  <alexl@redhat.com>
7896
7897         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7898         Correct calculation of font metrics. Now GtkEntrys have sane
7899         size.
7900
7901 2000-11-22  Alexander Larsson  <alexl@redhat.com>
7902
7903         * gdk/gdktypes.h:
7904         Add new type GdkSpan
7905         
7906         * docs/reference/gdk/gdk-sections.txt,
7907         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
7908         gdk/gdkregion.h:
7909         Implement and document gdk_region_spans_intersect_foreach.
7910
7911         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
7912         Add new file gdkrender-fb.c which contains all core
7913         rendering code.
7914         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
7915         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
7916         (optimized rectangle fillers).
7917
7918         * gdk/linux-fb/gdkdrawable-fb2.c:
7919         Move all rendering code to gdkrender-fb.c.
7920         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
7921         Use the new span intersection functions in gdk_fb_fill_spans.
7922         gdk_fb_draw_rectangle() clips filled rectangles and calls
7923         gc->fill_rectangle with the result.
7924         gdk_fb_fill_spans() gets extra argument "sorted".
7925
7926         * gdk/linux-fb/gdkevents-fb.c:
7927         Remove unused includes and defines.
7928         New function gdk_fb_get_time() to get correct time for events.
7929
7930         * gdk/linux-fb/gdkinput-ps2.c:
7931         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
7932         Make sure to set the time of all events.
7933
7934         * gdk/linux-fb/gdkmain-fb.c:
7935         Use gdk_fb_get_time ().
7936
7937         * gdk/linux-fb/gdkprivate-fb.h:
7938         New virtual GC calls: fill_span & fill_rectangle.
7939         Export gdk_fb_get_time().
7940         gdk_fb_fill_spans() gets extra argument "sorted".
7941
7942         * gdk/linux-fb/mi*.c:
7943         Use GdkSpan instead of GdkRectangle.
7944         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
7945         from XFree 4 source)
7946         
7947 2000-11-22    <jrb@redhat.com>
7948
7949         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
7950         reversing the order in an if statement will do.  Doing so managed
7951         to make the treemodelsort half work.  Other half will follow after
7952         I get the insert function fully fixed.
7953
7954 2000-11-21  Elliot Lee  <sopwith@redhat.com>
7955         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
7956         more than 2 bits. Besides, I need to implement an evil hack. :)
7957
7958 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
7959
7960         * docs/tutorial/gtk-tut.sgml: minor corrections
7961
7962 2000-11-20  Jonathan Blandford <jrb@redhat.com>
7963         * gtk/gtktreemodelsort.h: Add convertion functions to let you
7964           convert to and from relative path's and iters.
7965
7966         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
7967           testing sorting functions a bit better.  Currently broken -- will
7968           fix in morning.
7969
7970 2000-11-20  Havoc Pennington  <hp@redhat.com>
7971
7972         * gtk/gtkwidget.c: Documented a bunch of functions in here
7973         (gtk_widget_realize): Warn if you try to realize
7974         a widget with no parent that isn't a toplevel
7975         (gtk_widget_intersect): return a gboolean
7976
7977 2000-11-20  Havoc Pennington  <hp@redhat.com>
7978
7979         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
7980         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
7981         scrolling to be implemented in GDK to finish. Also, right now
7982         we just size_allocate all children on every layout change,
7983         which is pretty lame. Test commented out of testtext.c, 
7984         until it works better.
7985
7986 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
7987
7988         * gdk/linux-fb/gdkdrawable-fb2.c:
7989         Removed unused arguments from gdk_fb_drawable_get_pixel().
7990
7991         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
7992         Renamed fidur specific mouse packet data in MouseDevice to
7993         generic. Used it in ps2 mouse handling code to avoid blocking
7994         reads.
7995
7996 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
7997
7998         * demos/gtk-demo/main.c: Changed to have the list become
7999         non-italic when the demo window is destroyed through an external
8000         event (like a close button).  Doing so found three bugs in the
8001         widget.
8002
8003         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
8004
8005         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
8006         we actually set the cell.
8007
8008         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
8009
8010         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
8011         free a leaked path.  Thanks memprof.
8012
8013 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
8014
8015         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
8016         off-by-one error when destroying allocated segments
8017         on failure. (Elliot)
8018
8019 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
8020
8021         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
8022         memleaks found by Evan Martin.
8023
8024 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
8025
8026         * Released 1.3.2
8027         
8028         * NEWS: Updates for 1.3.2
8029
8030 2000-11-17  Tor Lillqvist  <tml@iki.fi>
8031
8032         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
8033         but in general for window system specific events.
8034
8035         * gtk/gtk.def
8036         * gtk/makefile.mingw.in
8037         * gtk/makefile.msc.in: Update.
8038         
8039         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
8040
8041 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
8042
8043         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
8044         distribute gtk.immodules.
8045
8046         * gtk/Makefile.am (install-data-local): Don't install the
8047         gtk.immodules file created for the uninstalled modules;
8048         instead run gtk-query-immodules after install
8049
8050 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
8051
8052         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
8053         -rpath to the right install location.
8054
8055         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
8056         -export-dynamic.
8057
8058         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
8059         properly.
8060
8061 2000-11-15  Havoc Pennington  <hp@pobox.com>
8062
8063         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
8064         patch from Mikael Hermansson to temporarily stop blinking while
8065         the user is using the keyboard to type or navigate. 
8066
8067         Also, when blinking, stay on for longer than we stay off. Also,
8068         return from start_cursor_blink if !cursor_visible, to save
8069         checking that flag all over the place before we call
8070         start_cursor_blink.
8071
8072 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
8073
8074         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
8075         only contain a "fontset" line, which is now ignored.
8076
8077         * gtk/gtkentry.c (gtk_entry_button_release): Make 
8078         double-click-to-select-word work.
8079         
8080 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
8081
8082         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
8083         Don't move back one char when we are actually at the end of the 
8084         paragraph.
8085
8086 2000-11-15  Robert Brady  <robert@suse.co.uk>
8087
8088         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
8089         'o' < 'p'.
8090         
8091         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
8092         bind_textdomain_codeset.
8093
8094         (gtk_init_check): Make the warning about translating default:LTR
8095         sterner.
8096         
8097 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
8098
8099         * **/Makefile.am : remove unecessary rules for win32-specific
8100         config-substituted targets. If you want these rules, use
8101         --enable-maintainer-mode (called automatically by autogen.sh).
8102         Stops a lot of unneccessary make-time warnings.
8103
8104         * gtk/gtktext{layout,display}.c: Factor in total width as
8105         well as screen when figuring alignment for word-wrap as well as
8106         no wrap; this is necessary to handle lines that cannot be wrapped
8107         at all.
8108
8109 2000-11-15  Havoc Pennington  <hp@redhat.com>
8110
8111         * gtk/testtext.c: Implement essential color cycling feature
8112
8113 2000-11-15  Havoc Pennington  <hp@redhat.com>
8114
8115         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
8116         when we invalidate the main window.
8117
8118         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
8119         GtkTextView will now invalidate the side windows for us when text
8120         changes.
8121
8122 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
8123
8124         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
8125         unconditionally, since we may need to update the horizontal
8126         scrollbars even if the height didn't change.
8127
8128         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
8129         the extra attrs, since some of them affect size.
8130
8131         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
8132         x_offset correctly.
8133
8134 2000-11-15  Havoc Pennington  <hp@redhat.com>
8135
8136         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
8137         don't move the first line out into the margin, instead move the
8138         whole paragraph in order to make space for the first line within 
8139         the margin
8140
8141 2000-11-15  Havoc Pennington  <hp@redhat.com>
8142
8143         * gtk/gtktextview.c (changed_handler): offset redraw rect by
8144         xoffset in addition to yoffset, so horizontal scrolling doesn't
8145         break redraws
8146
8147 2000-11-15  Havoc Pennington  <hp@redhat.com>
8148
8149         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
8150         from the cursor
8151         (render_layout_line): fix reversed test that caused weird
8152         underlines to get drawn
8153
8154 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8155
8156         * gdk/linux-fb/gdkprivate-fb.h:
8157         Fix debug macros.
8158         
8159 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8160
8161         * gdk/linux-fb/gdkprivate-fb.h:
8162         Added virtual functions set_pixel, get_color,
8163         fill_span and draw_drawable to the GC.
8164         Added global _gdk_fb_screen_gc to use instead of
8165         NULL when drawing to the screen.
8166         Added _gdk_fb_gc_calc_state() prototype.
8167
8168         * gdk/linux-fb/gdkgc-fb.c:
8169         Call _gdk_fb_gc_calc_state() on any gc state change.
8170
8171         * gdk/linux-fb/gdkglobals-fb.c:
8172         Add _gdk_fb_screen_gc
8173                 
8174         * gdk/linux-fb/gdkdrawable-fb2.c:
8175         _gdk_fb_gc_calc_state() calculates best functions
8176         for the GC state and depth.
8177         Moved bpp specialized code to separate functions.
8178         Added optimized 24 bpp AA draw_drawable.
8179
8180         * gdk/linux-fb/gdkevents-fb.c:
8181         Silence gcc warning.
8182
8183         * gdk/linux-fb/gdkimage-fb.c:
8184         Use _gdk_fb_screen_gc
8185
8186         * gdk/linux-fb/gdkwindow-fb.c:
8187         Init and use _gdk_fb_screen_gc
8188
8189         * gdk/linux-fb/mitypes.h:
8190         Remove unused types.
8191
8192 2000-11-14  Havoc Pennington  <hp@pobox.com>
8193
8194         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
8195         to pixels
8196
8197 2000-11-14  Havoc Pennington  <hp@pobox.com>
8198
8199         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
8200
8201         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
8202         unknown char, no real reason we were using a variable. 
8203         Remove gtk_text_unknown_char variable. Fix all the text widget
8204         files accordingly.
8205
8206         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
8207         since the Unicode spec seems to prefer that character for our
8208         purposes.
8209
8210 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
8211
8212         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
8213         value of g_getenv() isn't freeable, so g_strdup it.
8214
8215         * modules/input/inuktitut.c: Inuktitut input method.
8216
8217         * modules/input/Makefile.am: Build this.
8218         
8219 2000-11-14  Elliot Lee  <sopwith@redhat.com>
8220
8221         * gtk/Makefile.am: Install gtk.immodules, needed for operation
8222         of gtk programs.
8223
8224 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
8225
8226         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
8227         reversed > that was causing Home to go to end of previous line.
8228
8229         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
8230         modified-keypresses (leave for bindings.)
8231
8232         * modules/input/Makefile.am: Remove useless -export-dynamic
8233         from module LDFLAGS.
8234
8235 2000-11-14  Havoc Pennington  <hp@redhat.com>
8236
8237         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
8238         higher.
8239
8240         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
8241         account. Also, render rise, underline, background, etc. for
8242         pixbufs as well as text. Also, draw underlines one pixel higher.
8243
8244         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
8245         PangoAttribute for the rise, so it gets drawn properly. Also,
8246         add the GtkTextAppearance attribute for pixbuf/widget segments
8247         as well; we should go ahead and have rise, underline, background,
8248         stipple work for those
8249
8250         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
8251         Pango
8252
8253 2000-11-15  Tor Lillqvist  <tml@iki.fi>
8254
8255         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
8256
8257         * gtk/gtk.def: Update.
8258
8259         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
8260         included.
8261         (gtk_rc_get_im_module_file): Use run-time installation directory
8262         on Win32.
8263
8264         * gdk/win32/rc/gdk.rc: Remove.
8265         * gdk/win32/rc/gdk.rc.in: New file.
8266         * gdk/win32/rc/Makefile.am: New file
8267         * gdk/win32/Makefile.am: Corresponding changes.
8268
8269         * gtk/gtk.rc: Remove.
8270         * gtk/gtk-win32.rc.in: New file.
8271         * gtk/Makefile.am: Corresponding changes.
8272
8273         * configure.in: Corresponding changes.
8274
8275         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
8276         has a built gtkcompat.h. Developers using CVS code on Win32 can
8277         hand-edit it from gtkcompat.h.in.
8278
8279         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
8280         gtkcompat.h from gtkcompat.h.win32.
8281
8282 2000-11-14  Havoc Pennington  <hp@redhat.com>
8283
8284         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
8285         to default to GDK_ACTION_MOVE if the drag is within a single
8286         widget. Defaults to GDK_ACTION_COPY between widgets.
8287
8288 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
8289
8290         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
8291
8292         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
8293
8294         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
8295         srcdir != builddir
8296
8297         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
8298
8299         * configure.in (GTK_VERSION): Up to 1.3.2
8300
8301         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
8302         gtkimcontextxim.h
8303
8304         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
8305         missing doc comment.
8306
8307 2000-11-14  Alexander Larsson  <alexl@redhat.com>
8308
8309         * modules/linux-fb/basic.c:
8310         Use the glib iconv wrappers.
8311
8312 2000-11-13  Havoc Pennington  <hp@pobox.com>
8313
8314         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
8315         still more bugs.
8316
8317         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
8318         scroll the GdkWindows before realization.
8319
8320 2000-11-13  Havoc Pennington  <hp@redhat.com>
8321
8322         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
8323         where GC didn't always get updated properly
8324
8325         * demos/gtk-demo/textview.c (create_tags): Use subattributes
8326         of fonts instead of setting the entire font
8327
8328         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
8329         setting entire font
8330
8331         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
8332
8333         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
8334         a bunch of individually-settable font attributes. You can still 
8335         use the "font" and "font_desc" args, they just set all the font
8336         attributes at once.
8337
8338 2000-11-13 Elliot Lee <sopwith@redhat.com>
8339
8340         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
8341
8342 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
8343
8344         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
8345         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
8346
8347         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
8348         work better.
8349
8350 2000-11-13  Havoc Pennington  <hp@redhat.com>
8351
8352         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
8353         the module file.
8354
8355         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
8356         dest->language
8357
8358         * gtk/testtext.c: Test pixels above/below/inside paragraphs
8359         settings
8360
8361         * gtk/gtktextview.c: Implement object args and setters/getters for
8362         all the aspects of the GtkTextAttributes that are not set from
8363         GtkWidget attributes. This is spacing, justification, margins,
8364         etc.
8365
8366         (gtk_text_view_set_arg)
8367         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
8368         args
8369         (gtk_text_view_class_init): Add args for justify, left_margin,
8370         right_margin, indent, and tabs
8371         
8372
8373         * gtk/gtktextlayout.c (set_para_values): fix to display indent
8374         attribute properly
8375
8376         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
8377         replace with indent attribute
8378
8379         * gtk/gtktextlayout.c (set_para_values): multiply indent by
8380         PANGO_SCALE
8381
8382         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
8383         rearranging code to do that
8384         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
8385         i.e. don't subtract the top_margin first, just to keep
8386         all margin-futzing in one place.
8387
8388         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
8389
8390         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
8391         special case of last line, Pango now handles this itself.
8392         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
8393         Y coordinate
8394         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
8395         (find_display_line_above): wasn't moving the byte index as it
8396         iterated over lines, so always returned byte 0. Also, port to use
8397         PangoLayoutIter.
8398         (find_display_line_below): same problem as
8399         find_display_line_above. Also, port to use PangoLayoutIter.
8400
8401 2000-11-13  Alexander Larsson  <alexl@redhat.com>
8402
8403         * gdk/linux-fb/*.[ch]:
8404         Massive reindent to gtk+ standard. My hands hurt.
8405
8406         * gdk/linux-fb/gdkcolor-fb.c:
8407         Move GdkColorPrivateFB from inherited to windowing_data
8408
8409         * gdk/linux-fb/gdkcursor-fb.c:
8410         _gdk_cursor_new_from_pixmap made static
8411
8412         * gdk/linux-fb/gdkdnd-fb.c:
8413         GdkDragContextPrivate moved to windowing_data
8414
8415         * gdk/linux-fb/gdkdrawable-fb2.c:
8416         Removed endian.h, use glib endianness macros instead
8417         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
8418         and GDK_DRAWABLE_IMPL_FBDATA
8419
8420         * gdk/linux-fb/gdkfont-fb.c:
8421         Add empty gdk_font_load(). Needed for linking of Gtk+.
8422
8423         * gdk/linux-fb/gdkimage-fb.c:
8424         Removed endian.h, use glib endianness macros instead
8425         Moved GdkImagePrivateFB to windowing_data
8426         gdk_image_new_bitmap didn't always allocate enough
8427         memory.
8428
8429         * gdk/linux-fb/gdkinput-ps2.c:
8430         Added semi-working support for MS serial mice.
8431
8432         * gdk/linux-fb/gdkprivate-fb.h:
8433         s/GdkWindowPrivate/GdkWindowObject/
8434         Removed GdkWindowPrivate typedef
8435         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
8436         Removed GDK_DRAWABLE_P
8437         Move GdkColorPrivateFB from inherited to windowing_data
8438         Moved GdkImagePrivateFB to windowing_data
8439
8440         * gdk/linux-fb/gdkvisual-fb.c:
8441         Removed some unused debug code.
8442
8443         * gdk/linux-fb/gdkwindow-fb.c:
8444         Use stock cursors instead of including X headers.
8445         s/GdkWindowPrivate/GdkWindowObject/
8446
8447         * gdk/linux-fb/mitypes.h:
8448         Removed unused types.
8449
8450         * modules/linux-fb/basic.c:
8451         Use the pango fribidi wrappers.
8452
8453 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8454
8455         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
8456         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
8457         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
8458         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
8459         GEqualFunc where applicable.
8460         
8461         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
8462         pango_font_description_equal as changed in pango.
8463         
8464         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
8465
8466         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
8467
8468         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
8469
8470         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
8471
8472         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
8473
8474         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
8475
8476         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
8477         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
8478
8479         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
8480         gtk_rc_styles_compare -> gtk_rc_styles_equal.
8481
8482 2000-11-12  Havoc Pennington  <hp@pobox.com>
8483
8484         * demos/gtk-demo/Makefile.am (democodedir): change demo install
8485         dir to datadir/gtk+-2.0/demo
8486
8487         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
8488         sorts of text widget and Pango font bugs. Urgh.
8489
8490         * demos/gtk-demo/Makefile.am (demos): Add textview.c
8491
8492         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
8493         tree that you should double click to see the demo. Fix 
8494         types of variables to reflect changed return values from 
8495         GtkTreeStore and GtkTreeViewColumn constructors.
8496
8497         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
8498         newly-created buffer to prepare for GObject semantics
8499
8500         * gtk/testtext.c: don't leak the buffer with GObject semantics
8501
8502         * gtk/testtextbuffer.c: ditto
8503         
8504 2000-11-12  Havoc Pennington  <hp@pobox.com>
8505
8506         Rename this testgtk to gtk-demo to avoid confusion, and 
8507         install it so people can use it as a supplement to 
8508         the documentation.
8509         
8510         * demos/gtk-demo: Moved from demos/testgtk
8511
8512         * demos/testgtk: Removed
8513
8514         * configure.in: make Makefile in gtk-demo
8515         
8516         * demos/gtk-demo/Makefile.am: Install sample source to 
8517         datadir/gtk-demo (maybe there's a better place?), and 
8518         rename the binary to gtk-demo
8519         
8520         * demos/gtk-demo/main.c (load_file): Load installed sample
8521         source if source isn't found in pwd.
8522
8523 2000-11-09  Havoc Pennington  <hp@pobox.com>
8524
8525         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
8526         argument to set the char displayed when visibility == FALSE
8527         (gtk_entry_create_layout): If !entry->visible, replace 
8528         all chars with the "invisible char"
8529
8530         * gtk/testgtk.c: Test the invisible_char deal
8531         
8532 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
8533
8534         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
8535         can't get a native font in the right encoding.
8536
8537 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
8538
8539         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
8540         respectively.
8541
8542 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
8543
8544         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
8545         Fix warning when moving between paragraphs.
8546
8547         * gtk/gtkentry.[ch]: Change move => move_cursor, 
8548         delete => delete_from_cursor, insert => insert_at_cursor
8549
8550 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
8551
8552         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
8553
8554         * modules/input/imthai-broken.c: A Thai input method for use if
8555         Thai keys are really generating Latin1 keysyms.
8556
8557         * modules/input/Makefile.am: Build these.
8558
8559 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
8560
8561         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
8562         g_filename_{to,from}_utf8 now takes an extra parameter.
8563
8564         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
8565         strftime into UTF-8.
8566
8567         (column_from_x, gtk_calendar_paint_day_names): Support RTL
8568         calendars.
8569
8570         (gtk_calendar_paint_day_names): Draw day names in the right 
8571         place.
8572         
8573 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
8574
8575         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
8576         problem with using result of g_get_charset() backwards -
8577         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
8578
8579         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
8580         negative min_width/height and max_width/height to
8581         mean "requisition"; this allows setting a window
8582         to be user-resizable in only one direction easily.
8583
8584         * gtk/testgtk.c (create_main_window): Remove hard-coded
8585         usize - set a default size in the vertical direction.
8586
8587 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
8588
8589         * gtk/gtkrange.c: Add some missing casts. Support 
8590         2 and 3 button clicks on the arrows to mean 
8591         "move by pages" and "jump to end". (Like gtkspinbutton)
8592
8593 2000-11-12 Hans Breuer <Hans@Breuer.Org>
8594
8595         * gdk/win32/makefile.msc : reflect build module changes
8596
8597         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
8598         from GdkPixmap*, cast implementation member instead.
8599
8600         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
8601         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
8602         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
8603         more Gdi functions return value checking. 
8604         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
8605         GdkImagePrivateWin32 *.
8606
8607         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
8608         menus useable again. Add #pragma message to keep reminded on this issue.
8609         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
8610         windows. This allows to enable backing store on Win32!
8611
8612         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
8613         in drawable is of impl type. Correct specific type checks appropriate.
8614  
8615         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
8616         GDK_WINDOW_DESTROYED before allocating new resources.
8617
8618         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
8619
8620         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
8621         (gdk_window_foreign_new) initialize parent handle.
8622         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
8623
8624         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
8625         Let the GDI invalidate the window on MoveWindow call to fix scrolling
8626         problems (e.g. main buttons in testgtk). 
8627
8628 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
8629
8630         * gtk/gtkentry.c (gtk_entry_key_press): Call 
8631         gtk_widget_activate for GDK_Return.
8632
8633         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
8634         of preedit cursor position.
8635
8636 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
8637
8638         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
8639         static.
8640
8641 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
8642
8643         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
8644         out support for multiple locales; that simple doesn't
8645         work reliably with current Xlib
8646
8647         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
8648         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
8649         Add support for positioning the cursor within the preedit string.
8650
8651 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
8652
8653         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
8654         at XIM input method module.
8655
8656         * gtk/gtktextview.c: Check for bindings after passing
8657         events to im context filter.
8658
8659 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
8660
8661         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
8662         empty attribute lists properly.
8663
8664 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
8665
8666         * gtk/queryimmodules.c (main): Return non-zero exit
8667         status if errors were encountered querying any
8668         modules.
8669
8670         * modules/input/Makefile.am (moduledir): remove
8671         leftover bin program target.
8672
8673         * docs/make-todo: Fix typo in error message.
8674
8675 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
8676
8677         * configure.in: Add modules/input/Makefile
8678
8679 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
8680
8681         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
8682         don't include gtkthemes.h.
8683
8684         * gtk/testgtk.c gtk/testtext.c: Set environment variables
8685         to point
8686
8687         * gtk/Makefile.am: Add new .c and .h files, build 
8688         gtk-query-immodules and use it to create a gtk.immodules
8689         file for use of test programs.
8690
8691         * gtk/gtkpreview.c: remove extra blank line.
8692
8693 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
8694
8695         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
8696         Add the ability to add extra tables beyond the default
8697         one, and also the ability to have compose sequences 
8698         that are prefixes of other compose sequences. 
8699
8700         * gtk/gtkimcontextsimple.c: Export a preedit string which
8701         consists of possible candidates for keystrokes that have
8702         been entered but not yet committed.
8703
8704         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
8705         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
8706
8707         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
8708         Add a function to add input-method switching menu items
8709         to a menu.
8710
8711         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
8712         when switching input methods.
8713
8714         * gtk/gtkimcontextsimple.[ch]: Change the format of
8715         the compose table to allow compose tables of different
8716         lengths / sequence.
8717
8718 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
8719
8720         * gtk/gtkimmodule.[ch]: Support routines for loading
8721         GtkIMContext implementations dynamically at runtime.
8722
8723         * modules/input/imcyrillic-translit.c: A sample input
8724         method (based on GtkIMContextSimple with an extra table),
8725         which demonstrates preedit strings and the module
8726         system for input modules
8727
8728         * gtk/queryimmodules.c: Program to query the available
8729         input modules and write the results into a file.
8730          
8731         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
8732         extra config options "im_module_file" (cache file for
8733         input method modules), and "im_module_path" - path
8734         to look for modules when generating cache file.
8735
8736         This doesn't scale.
8737
8738 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
8739
8740         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
8741         generic code from gtkthemes into a new abstraction
8742         GtkModule which has the logic for implementing
8743         a loadable module which implements a number of 
8744         GObject types.
8745
8746 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
8747
8748         * gtk/gtkeditable.[ch]: Convert GtkEditable from
8749         a class into an interface  
8750         
8751         * gtk/gtkoldeditable.[ch]: Move the old editable
8752         implementation into here, so legacy widgets can
8753         still rely on the implemenation. GtkOldEditable
8754         exports GtkEditable. Make selection handling
8755         code use new text conversion functions (and
8756         handle UTF-8 as a side-effect). Use GtkClipboard
8757         for CLIPBOARD.
8758
8759         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
8760         Adopt to match above changes.
8761
8762         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
8763         avoid GtkOldEditable implementation. Restructure
8764         to reduce number of places that modify state directly.
8765         Move to GtkBindingSet. Display the preedit string.
8766         Queue recomputation of PangoLayout and scroll position
8767         to improve effiency of doing complex changes naively.
8768         Add a menu with cut/copy/paste and input method selection.
8769
8770 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
8771
8772         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
8773         to set preedit string and attributes; display preedit string by
8774         inserting string and attributes at cursor when creating the
8775         GtkTextLineDisplay.
8776
8777         * gtk/gtktextlayout.c: Move all conversions between byte
8778         positions in PangoLayout and GtkTextIter into new functions
8779         line_display_iter_to_index/index_to_iter that properly
8780         handle the preedit string.
8781
8782         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
8783         it to return const char * (eventually will end up
8784         as GCONST char *, most likely.)
8785
8786         * gtk/gtktextview.[ch]: Handle the preedit string, call
8787         gtk_im_context_reset() as necessary, add a menu to switch
8788         input methods.
8789         
8790         * gtk/gtktextlayout.[ch]: Remove useless
8791         gtk_text_layout_get_log_attrs() function.
8792
8793 2000-11-11  Tor Lillqvist  <tml@iki.fi>
8794
8795         * gdk/gdk.def
8796         * gtk/gtk.def: Update.
8797
8798         * gdk/win32/*.c: Add last argument to g_type_register_static()
8799         calls.
8800
8801         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
8802
8803         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
8804         generated by older wheel mouse drivers. Get the correct y
8805         coordinate from WM_MOUSEWHEEL messages.
8806
8807         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
8808         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
8809         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
8810         Debugging functions.
8811
8812         * gdk/win32/gdkprivate-win32.h: Declare them.
8813
8814         * gdk/win32/gdkinput-win32.h: Add declaration for
8815         gdk_input_window_destroy().
8816
8817         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
8818
8819 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
8820
8821         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
8822         function to help handle keeping things in sync.
8823
8824 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
8825
8826         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
8827         BOXED marshallers.
8828
8829         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
8830         (gtk_list_store_class_init): use the new BOXED marshallers.
8831
8832         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
8833         new_with_values to new_with_types.
8834         (gtk_tree_store_get_column_type): add this.
8835         (gtk_tree_store_class_init): use the new BOXED marshallers.
8836
8837         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
8838         mirror some POINTER marshallers.
8839
8840 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
8841
8842         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
8843         allow more interesting iterators.  Also, made the lifecycle of
8844         iterators more explicit.
8845
8846         * gtk/gtktreemodelsort.[ch]: New model for sorting.
8847
8848         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
8849         types.
8850
8851 2000-11-09  Alexander Larsson  <alexl@redhat.com>
8852
8853         * demos/testgtk/menus.c:
8854         Changes to make the new testgtk compile after
8855         gtk_menu_append was removed.
8856
8857         * gdk/linux-fb/gdkdrawable-fb2.c
8858         (gdk_fb_get_depth, gdk_fb_get_visual,
8859         gdk_drawable_impl_fb_class_init): Implement
8860         these drawable functions. Now GtkImages work again.
8861
8862         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
8863
8864         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
8865         
8866         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
8867         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
8868         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
8869         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
8870
8871 2000-11-08  Havoc Pennington  <hp@pobox.com>
8872
8873         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
8874         visible_set args, don't know where these had gone, I thought they
8875         used to be there
8876
8877         * gtk/testtext.c: Add a menu item to apply invisibility tag;
8878         now we can test the feature and see that it's totally broken.
8879
8880 2000-11-08  Havoc Pennington  <hp@pobox.com>
8881
8882         Make DND copy pixbufs and tags when source and target share a 
8883         tag table.
8884         
8885         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
8886         in-process GTK_TEXT_BUFFER_CONTENTS target
8887         (gtk_text_view_drag_data_received): Paste from
8888         GTK_TEXT_BUFFER_CONTENTS if we receive it.
8889
8890 2000-11-08  Alexander Larsson  <alexl@redhat.com>
8891
8892         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
8893         API changes.
8894
8895         * gtk/gtkmenu.c: Add support for scrolling menus.
8896         Remove gtk_menu_append/prepend/insert, these have been moved to
8897         gtkcompat.h as #defines.
8898
8899         * gtk/gtkcompat.h.in:
8900         Add compatibility #defines for gtk_menu_append/prepend/insert
8901
8902         * gtk/gtkmenu.h: Add data needed for scrolling menus.
8903         GtkMenuPositionFunc gets an extra argument push_in.
8904         gtk_menu_append/prepend/insert removed.
8905         
8906         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
8907         positioning behaviour to fit to scrolling menus.
8908
8909         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
8910         into menuitem->submeny. That is wrong, and broke torn
8911         off submenus of torn off menus, since they were unrealized
8912         when the first menu was unrealized.
8913
8914         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
8915         gtk_menu_shell_select_item() since these need to be overridden in
8916         GtkMenu.
8917
8918         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
8919         positioning behaviour to fit to scrolling menus.
8920         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
8921         the current item so that it is prelighted when the menu pops up.
8922         This is a workaround to the fact that the menu doesn't get the
8923         initial enter event (due to grabs).
8924
8925         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
8926         s/gtk_menu_append/gtk_menu_shell_append/
8927
8928         * gtk/gtknotebook.c:
8929         s/gtk_menu_insert/gtk_menu_shell_insert/
8930
8931         * gtk/testgtk.c (create_menu, create_menus):
8932         Create the first menu with 50 items so that menu scrolling
8933         can be tested.
8934         
8935         
8936         Patch from Jonathan Blandford  <jrb@redhat.com>
8937
8938         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
8939         system to handle size requests.  First, we ask what the size of
8940         the toggle is.  Then, when allocating the size, we allocate the
8941         toggle_size first.  This way we can have multiple menu-item
8942         classes w/o needing a seperate class for each.
8943
8944         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
8945         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
8946
8947         * gtk/gtkcheckmenuitem.c
8948         (gtk_check_menu_item_toggle_size_request): New function to handle
8949         the toggle size-request.
8950
8951 2000-11-07  Havoc Pennington  <hp@redhat.com>
8952
8953         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
8954         Half-ass somewhat fix this function, so that scrolling to the
8955         insertion point works. Pango hacking is in the future to really
8956         fix it.
8957
8958         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
8959         length of data, no longer used.
8960
8961         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
8962         method contents in here, get rid of destroy method
8963         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
8964         that were backward. Remove debug spew.
8965         (cut_or_copy): Make the clipboard work with insert_range to
8966         preserve tags and pixbufs, not just the primary selection.
8967
8968 2000-11-07  Havoc Pennington  <hp@redhat.com>
8969
8970         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
8971         to gtk_text_mark_get_visible
8972
8973         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
8974         bug that was generating an invalid iterator
8975
8976         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
8977         ensure_char_offsets() in front of code placing the iter in an
8978         invalid state.
8979
8980         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
8981         make override_location arg const
8982         (paste): Replace the selection if we paste into the 
8983         current selection
8984
8985         * gtk/gtkselection.h: Remove "GtkSelectioData"
8986         (struct _GtkSelectionData): move the definition here.
8987
8988         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
8989         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
8990
8991         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
8992
8993         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
8994         (gtk_text_buffer_insert_range_interactive): implement
8995         (gtk_text_buffer_get_tags): Remove, replaced by
8996         gtk_text_iter_get_tags()
8997
8998         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
8999         limit parameter, to avoid infinite linear scan.
9000         (gtk_text_iter_backward_search): Add search limit
9001         (gtk_text_iter_forward_find_char): Add search limit
9002         (gtk_text_iter_backward_find_char): Add search limit
9003
9004 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
9005
9006         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9007         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
9008         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
9009         gdk/linux-fb/gdkwindow-fb.c:
9010         use g_object_new() instead of g_type_create_instance() which
9011         is a private function for fundamental type implementations.
9012
9013         * gdk/linux-fb/gdkinput-ps2.c:
9014         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
9015         instead just store the current modifier state. Add a (somewhat broken)
9016         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
9017         Rename exported function gdk_input_ps2_get_mouseinfo to
9018         gdk_input_get_mouseinfo.
9019
9020         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
9021         gdk/linux-fb/gdkwindow-fb.c:
9022         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
9023         
9024
9025 2000-11-02  Havoc Pennington  <hp@redhat.com>
9026
9027         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
9028         use stock buttons. Should be 100% source compatible, appropriate
9029         filesel fields now point to dialog->vbox and dialog->action_area.
9030         On the bizarre side, dialog->action_area and filesel->action_area
9031         are not the same widget.
9032         (gtk_file_selection_init): Put some padding around the selection
9033         entry, so it isn't touching the GtkDialog separator.    
9034
9035         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
9036         use stock buttons, etc. Should also be source compatible.
9037         Set the dialog default title in _init not _new().
9038         
9039         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
9040         Use stock buttons; don't put a button box inside the existing
9041         dialog button box. Don't bother with push/pop colormap anymore.
9042
9043         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
9044         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
9045         for message dialog, and necessary for the font selection and color
9046         selection with help and apply buttons.
9047         
9048         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
9049         to the created button widget. Set GTK_CAN_DEFAULT on the button.
9050         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
9051         between buttons, put less padding around the action area.
9052         (gtk_dialog_run): Exit on unmap rather than on destroy. 
9053         This will also exit the loop if the widget is hidden.
9054         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
9055         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
9056         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
9057         special-case delete event.
9058
9059         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
9060         formatting
9061         
9062 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
9063
9064         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
9065         button to temporarily disable position recording in the
9066         "saved position" test.
9067
9068 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
9069
9070         * gtk/gtkthemes.c: added compat code that temporarily implements
9071         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
9072         going to be revamped by owen's upcoming GtkModule patches, but
9073         untill then people want gtk to build, right? ;)
9074
9075 2000-11-04  Havoc Pennington  <hp@pobox.com>
9076
9077         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
9078         list
9079
9080         * docs/Changes-2.0.txt: Add note about
9081         gtk_container_get_toplevels()
9082
9083         * gtk/gtktextview.h: formatting
9084         
9085         * gtk/gtktextview.c: don't start descriptions with "Returns",
9086         confuses gtk-doc
9087
9088 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
9089
9090         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
9091         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
9092
9093 2000-11-03  Havoc Pennington  <hp@redhat.com>
9094
9095         * gtk/gtktexttagtable.c: Docs
9096         (gtk_text_tag_table_size): return a signed int
9097
9098         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
9099         (gtk_text_tag_event): make the event_object a GObject
9100
9101         * gtk/gtktextview.c: Write API docs for all functions.
9102
9103         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
9104         for gtk_text_view_get_window_type() called on one of the private
9105         windows.
9106
9107         * gtk/gtktextview.c: Instead of accessing text_view->buffer
9108         directly, call get_buffer() which demand-creates a default
9109         buffer. So gtk_text_view_new() can be used to create a view with a
9110         default buffer in it, if you just want an empty text box users can
9111         put data in. Useful for GUI builders also.
9112
9113 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
9114
9115         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
9116         the charset encodign portion MUST be in lowercase.
9117         * gtk/gtkrc.az: added file for Azeri language
9118
9119 2000-11-03  Havoc Pennington  <hp@redhat.com>
9120
9121         Get widgets working on the btree/buffer side. Display of them 
9122         still doesn't work.
9123         
9124         * gtk/gtktextview.c: start implementing child widget stuff
9125
9126         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
9127
9128         * gtk/gtktextlayout.c: handle embedded widgets
9129
9130         * gtk/gtktextdisplay.c: handle embedded widgets
9131
9132         * gtk/gtktextchild.c: Implement all the child anchor goo
9133
9134         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
9135         function
9136
9137         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
9138         (insert_pixbuf_or_widget_segment): abstract out common portions of 
9139         creating a child anchor or a pixbuf segment.
9140         (gtk_text_btree_create_child_anchor): new function
9141         (gtk_text_btree_unregister_child_anchor): new function
9142
9143         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
9144         allocate_child signal on GtkTextLayout
9145
9146         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
9147         values
9148         (gtk_text_iter_get_child_anchor): new function
9149
9150         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
9151         default handler for the changed signal, which calls
9152         gtk_text_buffer_set_modified(), instead of just always emitting
9153         changed then calling set_modified() manually. I guess this is
9154         maybe more flexible. It seems logical.
9155
9156 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
9157
9158         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
9159         now.
9160
9161         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
9162
9163 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
9164
9165         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
9166         been marked static.
9167
9168 2000-11-02  Havoc Pennington  <hp@redhat.com>
9169
9170         * gtk/testgtk.c (create_labels): had a test backward
9171
9172         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
9173         fields, so the dest GC ends up with the correct clip origin, 
9174         etc. Fixes a bug where colored labels didn't redraw 
9175         properly.
9176
9177 2000-11-02  Alexander Larsson  <alexl@redhat.com>
9178
9179         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9180         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
9181         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
9182         Add last argument to t_type_register_static call.
9183         
9184         * gdk/linux-fb/gdkdrawable-fb2.c:
9185         Add last argument to t_type_register_static call.
9186         export the get_image drawable virtual function.
9187
9188         * gdk/linux-fb/gdkimage-fb.c:
9189         Add last argument to t_type_register_static call.
9190         rename gtk_image_get to _gdk_fb_get_image and
9191         export it for use by gdkdrawable-fb2.
9192
9193         * gdk/linux-fb/gdkprivate-fb.h:
9194         export _gdk_fb_get_image.
9195
9196         * gdk/linux-fb/gdkselection-fb.c:
9197         Add new api call stubs.
9198
9199         * gtk/Makefile.am:
9200         Missing ( in linux-fb part.
9201
9202         * modules/linux-fb/Makefile.am:
9203         Must link with gdk_pixbuf or get unresolved symbol.
9204
9205 2000-11-01  Havoc Pennington  <hp@pobox.com>
9206
9207         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
9208         GTK_TYPE_TEXT_ITER and BOXED marshallers
9209
9210         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
9211
9212         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
9213         
9214         * gtk/gtk-boxed.defs: add GtkTextIter
9215
9216         * gtk/gtkmarshal.list: Add marshallers for text widget that 
9217         properly use OBJECT and BOXED
9218
9219 2000-11-01  Havoc Pennington  <hp@redhat.com>
9220
9221         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
9222
9223         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
9224         before returning it. 
9225         
9226 2000-11-01  Havoc Pennington  <hp@redhat.com>
9227
9228         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9229         Clip the rectangle to be rendered to the drawable, since
9230         get_from_drawable() requires a region within the drawable
9231
9232 2000-11-01  Havoc Pennington  <hp@redhat.com>
9233
9234         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
9235         from coordinates.
9236
9237 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
9238
9239         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
9240         it isn't NULL.
9241
9242 2000-11-01  Havoc Pennington  <hp@pobox.com>
9243
9244         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
9245         on a label
9246         (gtk_label_finalize): unref the attr list if any.
9247
9248         * gtk/testgtk.c (create_get_image): close test on second click
9249         (make_message_dialog): close dialog if it exists
9250
9251         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
9252
9253         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
9254         gdk-pixbuf
9255
9256         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
9257         from Pango markup format
9258         (gtk_label_set_markup_with_accel): ditto but with accelerator
9259         parsing
9260
9261         * gtk/gtkimage.c (gtk_image_expose): reformatting.
9262
9263         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
9264         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
9265         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
9266         call gdk_window_get_origin().
9267
9268         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9269         implement GDK_PIXBUF_ALPHA_FULL
9270         
9271 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
9272
9273         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
9274         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
9275         g_signal_handlers_disconnect_matched to block/unblock and disconnect
9276         multiple handlers respectively, instead of only treating the
9277         first handler found (bug reported by owen).
9278
9279 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
9280
9281         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
9282
9283         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
9284
9285         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
9286         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
9287         gtk/gtktreeviewcolumn.h: Fixed inline docs.
9288
9289         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
9290         widget.  Needs writing someday.
9291
9292         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
9293         the docs.
9294
9295 2000-10-30  Havoc Pennington  <hp@redhat.com>
9296
9297         * gtk/gtktextview.h, gtk/gtktextview.c:
9298         Rename delete_at_cursor delete_from_cursor, and 
9299         move to move_cursor.
9300
9301 2000-10-30  Havoc Pennington  <hp@redhat.com>
9302
9303         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
9304         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
9305         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
9306         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
9307         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
9308         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
9309         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
9310         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
9311         gtktexttypes.h, gtktextview.c, gtktextview.h:
9312
9313         Massive reindentation and reformatting. Arg alignment and comments
9314         still need fixing in various places.
9315
9316 2000-10-30  Havoc Pennington  <hp@redhat.com>
9317
9318         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
9319         to be named insert_at_cursor and delete_at_cursor so C++ can
9320         handle them.
9321
9322 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9323
9324         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
9325         to get a double directory separator in case the home directory
9326         ends with one. This would cause trouble especially on Windows,
9327         where the path will be confused with the syntax for an an UNC
9328         (network share) path \\server\share\path.
9329         (gtk_rc_add_initial_default_files): Ditto.
9330
9331 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
9332
9333         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
9334
9335         * gtk/gtktextview.c: Use correct marshallers.
9336
9337 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
9338
9339         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
9340         use new iter stuff, and added all the appropriate signals et al.
9341
9342         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
9343         code is internal to gtk only.
9344
9345 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9346
9347         * gtk/gtk.def
9348         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
9349         glib-genmarshal etc.
9350
9351 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
9352
9353         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
9354         parallel builds.
9355
9356 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
9357
9358         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
9359
9360 2000-10-27  Robert Brady  <robert@suse.co.uk>
9361
9362         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
9363         en_GB (British), ia (Interlingua).
9364
9365 2000-10-26  Havoc Pennington  <hp@redhat.com>
9366
9367         * gtk/gtktextiter.c (my_strrstr): fix constness warning
9368
9369         Fixed output of:
9370         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
9371         
9372         * gtk/gtktextsegment.c (char_segment_new): rename
9373         (_char_segment_new_from_two_strings): rename
9374         (_toggle_segment_new): rename
9375         
9376         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
9377         (make_clipboard_widget): make it static
9378         (text_get_func): static
9379         (text_clear_func): static
9380
9381         * gtk/gtkcolorsel.c (adjustment_changed): make this function
9382         static
9383         (hex_changed): make it static
9384         (hsv_changed): make it static
9385         (opacity_entry_changed): make it static
9386
9387         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
9388         (toggle_segment_check_func): rename with _gtk
9389
9390         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
9391         (_widget_segment_new): rename
9392         (_widget_segment_add): rename
9393         (_widget_segment_remove): rename
9394         (_widget_segment_ref): rename
9395         (_widget_segment_unref): rename
9396
9397         * gtk/gtktextmark.c (_mark_segment_new): Rename
9398         _gtk_mark_segment_new   
9399
9400 2000-10-26  Havoc Pennington  <hp@redhat.com>
9401
9402         * gtk/gtkmarshal.list: add new marshallers used by the text widget
9403         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9404         types
9405
9406         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
9407         marshaller types
9408
9409         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
9410         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
9411         license on these files.
9412
9413         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
9414         work.
9415
9416         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
9417         runtime random number different for each tree, instead of 
9418         a constant I made up.
9419
9420 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
9421
9422         * gtk/Makefile.am: buncha cleanups, kludged build sources
9423         dependencies with a Makefile: oldest-source-stamp dependancy
9424         for the moment. automake is really fighting us here, with
9425         intentionally not allowing user-defined rules or dependancies
9426         prior to it's -include $(DEP_FILES) statement. sucks rocks!
9427
9428         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
9429         to public headers. tehy have a comment stating that they are
9430         "semi-public" aren't included by gtk.h and if enums popup there,
9431         they can be /*< skip >*/-ed.
9432
9433         * gtk/gtktextlayout.h: 
9434         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
9435         added LGPL... <SIGH>
9436
9437 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
9438
9439         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
9440         GtkTreeIter.  Added iterators everywhere.
9441
9442         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
9443
9444         * gtk/gtktreeviewselection.c: Changed to use the iterators.
9445
9446         * gtk/gtktreestore.c: Changed to use the iterators.
9447
9448         * gtk/gtkliststore.c: Commented out the code.  Will convert to
9449         iterators tomorrow.
9450
9451         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
9452         iterators tomorrow.
9453
9454         * gtk/treestoretest.c: Changed to use iterators.
9455
9456         * demos/testgtk/main.c: Moved to use the new iterator system.
9457
9458 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
9459
9460         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
9461         localization misbehaviour.
9462
9463         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
9464         a useless type without copy/free.
9465
9466         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
9467         of GTK_TYPE_CTREE_NODE.
9468
9469 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
9470
9471         * gtk/gtksignal.c:
9472         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
9473         applicable.
9474
9475         * gtk/gtk-boxed.defs (GtkSelectionData): specify
9476         gtk_selection_data_copy and gtk_selection_data_free
9477         do GtkSelectionData work as params in signals.
9478
9479 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
9480
9481         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
9482         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
9483         couldn't they at least give it a non-standard name?
9484         
9485         * gtk/gtktextlayout.c: arg! yet another implementation of
9486         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
9487
9488         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
9489         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
9490         home. now i know this _is_ a conspiracy.
9491
9492         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
9493         ::state-changed.
9494
9495         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
9496         (gtk_accel_group_create_add): marshaller signature fixups.
9497
9498         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
9499         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
9500
9501         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
9502         anymore.
9503
9504 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
9505
9506         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
9507         due to the signal system changes, it wouldn't build currently. to
9508         be fixed soon.
9509
9510         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
9511
9512         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
9513         so it needs gtk_marshal_VOID__ENUM() instead of
9514         gtk_marshal_NONE__UINT().
9515
9516         * gdk/gdk*.c: adapted type registration functions.
9517
9518         * gtk/gtkbindings.c:
9519         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
9520         gone.
9521
9522         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
9523
9524         * gtk/gtkobject.c:
9525         (gtk_object_destroy):
9526         (gtk_object_shutdown): fixed recursion guards. basically we have to
9527         catch the case where any of GObject.shutdown() or gtk_object_destroy()
9528         is called during ::destroy, and avoid recursion there.
9529
9530         * gtk/gtktypeutils.c:
9531         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
9532         boxed_copy/boxed_free. this needs a more general solution based on a
9533         publically installed code-generator utility.
9534
9535         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
9536         glib's gobject has support for that now.
9537         define GtkSignalMarshaller in terms of GSignalCMarshaller.
9538
9539 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
9540
9541         * gtk/gtksignal.[hc]:
9542         * gtk/gtkmarshal.[hc]:
9543         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
9544         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
9545         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
9546         care of that.
9547
9548         * *.c: marshaller name fixups.
9549
9550         * gtk/gtkmarshal.list: added a comment briefing the format.
9551
9552 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
9553
9554         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
9555         compatibility macros here now. more specifically, most of
9556         the API is preserved (yes, _most_, nonwithstanding the
9557         following exceptions listed, the API is stil lHUGE ;)
9558         things that got removed completely:
9559         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
9560         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
9561         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
9562         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
9563         gtk_signal_remove_emission_hook().
9564         non-functional functions variants:
9565         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
9566         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
9567         not supported anymore.
9568         (gtk_signal_compat_matched): new internal function to aid
9569         implementation of the compatibility macros, it  provides
9570         functionality to block/unblock/disconnect handlers based
9571         on func/data.
9572
9573         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
9574
9575         * *.c: adaptions to new type registration API signatures.
9576
9577 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
9578
9579         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
9580
9581 2000-10-25  Robert Brady  <robert@suse.co.uk>
9582
9583         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
9584         gdk_property_delete): If window == NULL, assume the root window.
9585         (restoring the behaviour that was in 1.2).
9586         
9587         * gtk/testtext.c (save_buffer): Allow creation of new files when
9588         saving.
9589
9590         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
9591         calls to read().
9592
9593 2000-10-25  Tor Lillqvist  <tml@iki.fi>
9594
9595         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
9596
9597         * gdk/win32/gdkdrawable-win32.c
9598         * gdk/win32/gdkimage-win32.c
9599         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
9600         X11 backend.
9601
9602         * gdk/win32/gdkcc-win32.c
9603         * gdk/win32/gdkcolor-win32.c
9604         * gdk/win32/gdkfont-win32.c
9605         * gdk/win32/gdkinput-win32.c
9606         * gdk/win32/gdkmain-win32.c
9607         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
9608
9609 2000-10-24  Havoc Pennington  <hp@redhat.com>
9610
9611         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
9612         it a static function
9613
9614         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
9615         redraw text when a tag is applied to it.
9616
9617         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
9618         (gtk_text_tag_affects_nonsize_appearance): private functions to
9619         see if a tag requires various kinds of redraw/layout to be queued
9620         up.
9621
9622         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
9623
9624         * gtk/testtext.c (fill_example_buffer): Put the cursor 
9625         at the start of the buffer, so search works by default
9626
9627         * gtk/gtktextiter.c (lines_match): init match_start always
9628
9629         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
9630         function, get iter at a line + a byte index
9631
9632         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
9633         to set byte position within a line
9634         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
9635
9636 2000-10-23  Havoc Pennington  <hp@redhat.com>
9637
9638         * gtk/testtext.c: Re-enable the "find" dialog
9639
9640         * gtk/testgtk.c: Add test for gdk_drawable_get_image
9641         
9642         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
9643         the arguments to gdk_draw_drawable were in the wrong order
9644         (gdk_window_paint_init_bg): This function was ignoring the
9645         init_region, instead of clipping to it, so the entire backing
9646         pixmap was cleared on every begin_paint()
9647         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
9648         was in here again, the loop kept using the same GtkWindowPaint
9649         over and over.
9650         (gdk_window_begin_paint_region): Fix a bug where we had two
9651         x_offset instead of x_offset and y_offset
9652
9653         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
9654         before we get the image.
9655         (gdk_draw_drawable): get the composite before we draw the drawable.
9656         (gdk_drawable_real_get_composite_drawable): default
9657         get_composite_drawable implementation that returns the drawable 
9658         itself
9659
9660         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
9661         get_composite_drawable virtual function
9662
9663         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
9664         list-walking bug
9665
9666         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
9667         make this work if the source drawable is a GdkDrawableImplX11
9668         instead of a public drawable type. This is really broken; the
9669         problem is that GdkDrawable needs a virtual method get_xid(), but
9670         of course that doesn't work in practice. Enter RTTI.
9671
9672         Also, improve mismatched depth message.
9673
9674         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
9675         GdkPixmap
9676
9677         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
9678         install _gdk_x11_get_image as our implementation of get_image
9679         
9680         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
9681         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
9682
9683         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
9684         gdk_drawable_get_image
9685
9686         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
9687
9688         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
9689         get_image
9690
9691         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
9692         trailing semicolon after for loop
9693
9694 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
9695
9696         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
9697         where font_desc for widget's context lagged widget's font_desc by
9698         one step.
9699
9700 2000-10-22  Tor Lillqvist  <tml@iki.fi>
9701
9702         * gdk/win32/gdkgc-win32.c
9703         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
9704
9705         * gtk/makefile.mingw.in
9706         * gtk/gtk.def: Updates.
9707
9708         * gtk/testgtk.c: sleep() is called _sleep in MS's C
9709         library.
9710
9711         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
9712
9713         * gtk/makefile.msc: Remove
9714
9715         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
9716
9717         * gtk/Makefile.am: Add it.
9718
9719         * configure.in: Generate it.
9720
9721         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
9722         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
9723         something even if not implemented, to satisfy picky MSVC.
9724
9725         Patches by Hans Breuer:
9726         
9727         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
9728         SetBkMode() and SetTextAlign() before calling
9729         pango_win32_render().
9730
9731         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
9732         Set hcliprgn to NULL after destroying it.
9733         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
9734
9735         * gdk/win32/gdkgeometry-win32.c
9736         (_gdk_windowing_window_queue_antiexpose): More effective
9737         implementation.
9738
9739         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
9740         depth as default, not the visual's.
9741
9742         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
9743         against empty title.
9744
9745         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
9746         IMAGE_PRIVATE_DATA.
9747
9748         * gdk/win32/gdkimage-win32.c: Use it.
9749
9750 2000-10-22  Robert Brady  <robert@suse.co.uk>
9751
9752         * configure.in: Check for bind_textdomain_codeset
9753
9754         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
9755         present, make use of it.
9756
9757         Add a translatable string "default:LTR" which, if translated
9758         to "default:RTL", will cause the default direction to be
9759         Right-to-Left.
9760
9761         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
9762         direction if marked as flippable.
9763
9764         * gtk/gtkhscale.c: Mark widget as flippable.
9765         
9766 2000-10-04  Havoc Pennington  <hp@redhat.com>
9767
9768         * gtk/testgtk.c (create_buttons): create some stock buttons
9769         with the default accel group
9770         (create_image): test some new GtkImage features
9771         (make_message_dialog): test GtkMessageDialog
9772         (create_modal_window): fix someone's bizzarro indentation
9773
9774         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
9775         GTK_WIN_POS_CENTER_ON_PARENT. 
9776         Add "destroy with parent" setting, which means the window goes
9777         away with its transient parent.
9778         (gtk_window_get_default_accel_group): get the default accel group
9779         for the window.
9780         (gtk_window_set_destroy_with_parent): set/unset destroy with
9781         parent flag
9782         (gtk_window_read_rcfiles): invalidate icon set caches
9783         after reloading rcfiles 
9784
9785         * gtk/gtkenums.h (GtkWindowPosition): add
9786         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
9787         on its parent window when the dialog is mapped for the first time.
9788
9789         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
9790         a simple message dialog class
9791         
9792         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
9793         handler to emit response signal, and maybe later it would
9794         honor a hide_on_delete flag - though that isn't there yet.
9795         Set border width on the vbox to 2, so we get some padding.      
9796         Use a button box for the action area.
9797         (gtk_dialog_key_press): synthesize a delete event if Esc
9798         is pressed and the GtkWidget key press handler didn't 
9799         handle the escape key.
9800         (gtk_dialog_new_with_buttons): new function creates a dialog
9801         with some default buttons in it.
9802         (gtk_dialog_add_action_widget): add an activatable widget
9803         as a button in the dialog - you can also add a non-activatable
9804         widget by accessing the action area directly.
9805         (gtk_dialog_add_button): add a simple button - stock ID or 
9806         label - to the action area
9807         (gtk_dialog_response): emit response signal
9808         (gtk_dialog_run): block waiting for the dialog, return 
9809         the response. Override normal delete_event behavior, so that 
9810         delete_event does nothing inside gtk_dialog_run().
9811
9812         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
9813         emitted when an action widget is clicked or the dialog gets
9814         delete_event
9815
9816         * gtk/gtk.h: add gtkmessagedialog.h
9817
9818         * gtk/Makefile.am: add gtkmessagedialog.[hc]
9819
9820 2000-10-18  Havoc Pennington  <hp@redhat.com>
9821
9822         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
9823         where any number of empty lines would get skipped
9824
9825         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
9826         edge.
9827
9828         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
9829         warning about invalid iterators (explain more thoroughly)
9830         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
9831
9832         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
9833         big
9834
9835         * demos/*.c: Add error handling
9836
9837         * gtk/gtktextbuffer.c: don't modify const iterators
9838
9839         * gtk/gdk-pixbuf-loader.c: Add full error handling here
9840
9841         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
9842         on file load
9843
9844         * gtk/gtkiconfactory.c: Update to reflect addition of error
9845         handling to gdk-pixbuf loaders
9846
9847 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
9848
9849         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
9850         move to new modularized testgtk.
9851
9852 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
9853
9854         * gtk/gtktreeview.c: Draw the arrows correctly.
9855
9856         * gtk/gtktreemodel.c: Added user docs.
9857
9858         * gtk/gtk.h: remove gtktreedatalist.h.
9859
9860         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
9861         parent when generating my type.
9862
9863         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
9864         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
9865
9866 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
9867
9868         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
9869         GtkTreeModel from object to interface.
9870
9871 2000-10-16  Havoc Pennington  <hp@redhat.com>
9872
9873         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
9874         compilation
9875
9876 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
9877
9878         * gtk/gtktreeselection.c: Add API documentation to all public
9879         functions.
9880
9881         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
9882         functions.
9883
9884 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
9885
9886         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
9887         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
9888         docs to all public functions.
9889
9890         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
9891         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
9892         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
9893         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
9894         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
9895         issue.
9896
9897 2000-10-14  Robert Brady  <robert@suse.co.uk>
9898
9899         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
9900
9901 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
9902
9903         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
9904         values other then G_TYPE_STRING.
9905         * gtk/gtktreeselection.c: Minor commenting updates.
9906         * gtk/gtktreeview.c: Format updates.
9907
9908 2000-10-09  Tor Lillqvist  <tml@iki.fi>
9909
9910         * README.win32: Update.
9911
9912         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
9913         lines that had been deleted by mistake (?).
9914
9915         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
9916         also the case fg==white and bg==black (but still not randomly
9917         coloured cursors). Thanks to Wolfgang Sourdeau.
9918
9919         * gdk/win32/*.c: Silence gcc -Wall.
9920
9921         * gtk/gtk.def: Add missing entry points.
9922
9923         Fixes by Hans Breuer:
9924
9925         * gdk/makefile.msc
9926         * gdk/win32/makefile.msc: Update.
9927
9928         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
9929         some MSVC thing, presumably), cause breakpoint on failures. Add
9930         GDK_NOR case. Call g_log_set_always_fatal.
9931
9932         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
9933         should be pased by reference.
9934         
9935         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
9936         
9937         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
9938
9939         * gdk/win32/gdkevents-win32.c
9940         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
9941
9942         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
9943         implementation object.
9944
9945         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
9946         not just windows.
9947         
9948         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
9949         Use the wrapper object.
9950         
9951 2000-10-06  Havoc Pennington  <hp@redhat.com>
9952
9953         * Makefile.am (SRC_SUBDIRS): contrib subdir
9954
9955         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
9956         so it can be used in Xlib version
9957
9958         * demos/testpixbuf.c (update_timeout): error checking from 1.0
9959         tree
9960
9961         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
9962         change from 1.0 tree that returns first frame of animation
9963         if the loaded file is an animation.
9964
9965         * contrib: add new directory to hold stuff that comes with GTK+
9966         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
9967         
9968         * configure.in: add contrib/*
9969
9970 2000-10-05  Havoc Pennington  <hp@redhat.com>
9971
9972         * demos/testpixbuf-save.c: add pixbuf save test
9973
9974         * demos/Makefile.am: add testpixbuf-save.c
9975
9976 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
9977
9978         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
9979         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
9980         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
9981         * gtk/gtktreeselection.[ch]: Replaced
9982         "node_selected"/"node_unselected" signal with "selection_changed"
9983         signal.
9984
9985 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
9986
9987         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
9988         tree widget.
9989
9990 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
9991
9992         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
9993         drawing.
9994
9995 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
9996
9997         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
9998         Move list pointer forwards before removing item from
9999         list. (Crash reported by Salmaso Raffaele)
10000
10001         * gdk/gdkwindow.h: Remove spurious trailing ,
10002
10003         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
10004         dependencies on uninstalled libraries, sorry folks.
10005
10006 2000-10-04  Havoc Pennington  <hp@redhat.com>
10007
10008         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
10009         gtk/gtkiconfactory.c: Fix copyrights    
10010
10011         * demos/testpixbuf.c: add inline pixbuf test
10012         
10013 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
10014
10015         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
10016         Add gdk_window_iconify.
10017
10018         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
10019         (gdk_window_set_geometry_hints): Add win_gravity
10020         to geometry structure.
10021
10022         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
10023         Implement _NET_WM_PING.
10024
10025         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
10026         Set _NET_WM_PID on the client leader.
10027
10028         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
10029         Handle UTF-8 better.
10030
10031         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
10032         UTF-8 better, set _NET_WM_NAME as well. Only set
10033         icon name if it hasn't previously been explicitely 
10034         set.
10035
10036 2000-10-03  Havoc Pennington  <hp@redhat.com>
10037
10038         * gtk/testtextbuffer.c: clean up trailing whitespace,
10039         add extensive tests for tag toggle iteration.
10040         
10041         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
10042         distance
10043
10044         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10045         optimize case where the tag root is on level 1
10046         (gtk_text_line_previous_could_contain_tag): attempt to implement
10047         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
10048         functionality
10049
10050         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
10051         Implement this, though not very efficiently.
10052
10053         * gtk/gtktextiterprivate.h: reformat
10054
10055         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
10056         iterator
10057
10058         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
10059         this to properly revalidate the iterators.
10060
10061         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
10062         properly at the end of the line (and therefore on empty lines)
10063
10064         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
10065         maybe we should return a value...
10066
10067 2000-10-03  Tor Lillqvist  <tml@iki.fi>
10068
10069         * config.h.win32: Guard definition of alloca(). glib.h now handles
10070         that.
10071
10072         * gdk/gdk.def
10073         * gtk/gtk.def: Add new entry points.
10074
10075         Changes just to make GTK+ build without errors on Win32. No hope
10076         of it working in its current state, though...:
10077         
10078         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
10079         some functions from the X11 backend, just to make GTK+ build.
10080
10081         * gdk/makefile.mingw.in
10082         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
10083         number. Add new object files.
10084
10085         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
10086         GetMessageTime to get timestamp (where on X11 uses
10087         gdk_x11_get_server_time()).
10088
10089 2000-10-02  Havoc Pennington  <hp@pobox.com>
10090
10091         * gtk/gtktextview.c: text_window_* weren't static and should have
10092         been.
10093         Start work on child widgets; not yet complete, syncing to 
10094         office computer.
10095
10096         * gtk/gtktextchild.h: change this to contain a public interface,
10097         starting work on child interfaces.
10098         * gtk/gtktextchildprivate.h: move private interfaces here
10099
10100         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
10101
10102         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
10103         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
10104         gtk/gtktextmark.c: copyright notices
10105
10106         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
10107         internal functions      
10108
10109         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
10110         internal function
10111
10112         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
10113         Reformatting    
10114
10115 2000-09-30  Havoc Pennington  <hp@pobox.com>
10116
10117         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
10118         NULL start/end pointers
10119
10120         * gtk/gtktextbuffer.c: Write some docs
10121         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
10122         NULL, so you can just check whether there's a selection.        
10123
10124         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
10125         cleanup_line or segments_changed ourselves, it gets done 
10126         in unlink_segment
10127
10128         * gtk/gtktextmark.h:
10129         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
10130         
10131         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
10132
10133         * gtk/gtktextmark.c: delete some more old Tk cruft
10134
10135         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
10136         mark before removing it, so we can emit MARK_DELETED with a valid
10137         pointer.
10138         (gtk_text_buffer_mark_set): hold ref across signal emission
10139
10140         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
10141         whining about attempts to delete special marks
10142
10143         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
10144         underscore, since it's internal.
10145
10146         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
10147         now implemented in terms of iterators in gtktextiter.h
10148
10149         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
10150         New function, destructively sets contents of buffer. Also 
10151         a convenient way to clear the buffer by setting text to ""
10152
10153         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
10154         multiline string literal
10155
10156         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
10157         text changes.
10158
10159         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
10160         is not dereferenceable
10161         (gtk_text_iter_forward_lines): fix return value
10162
10163 2000-09-29  Havoc Pennington  <hp@redhat.com>
10164
10165         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
10166
10167         * gtk/gtktextview.c: Implement drag thresholding; change functions 
10168         that set border window size to have nicer name
10169         (gtk_text_view_mark_set_handler):  Fix this to have the 
10170         right signature.
10171
10172         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
10173
10174         * gtk/testtext.c: Update with API changes, put line numbers on 
10175         both sides.
10176         
10177         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
10178         with this
10179
10180         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
10181         pixbuf; delete a big block of #if 0 Tk code
10182
10183         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
10184         insert_pixmap with insert_pixbuf
10185
10186 2000-09-29  Martin Baulig  <baulig@suse.de>
10187
10188         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
10189         confusion with the GdkPixbuf of the GNOME 1.x platform.
10190
10191 2000-09-29  Havoc Pennington  <hp@pobox.com>
10192
10193         * gtk/gtktextview.c: Implement the side windows.
10194
10195         * gtk/testtext.c: Implement simple line numbering in the 
10196         left side window; seems to make scrolling sloooow. Oops.
10197         Also, cursor blink is for some reason causing redraws
10198         of the line numbers. Should investigate...
10199
10200 2000-09-28  Havoc Pennington  <hp@redhat.com>
10201
10202         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
10203         scrolling child windows, and draw focus rectangle properly.
10204         
10205         (gtk_text_view_buffer_to_window_coords):
10206         Coordinate transformation to deal with all these freaking windows
10207         and offsets
10208         (gtk_text_view_window_to_buffer_coords): transform the other way
10209
10210         * gtk/testtext.c (create_buffer): Update to match Pango API change
10211
10212         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
10213         anonymous tags
10214         (foreach_unref): don't emit remove signal from finalize, just
10215         set tag's parent to NULL
10216
10217 2000-09-26  Havoc Pennington  <hp@redhat.com>
10218
10219         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
10220         Fix some warnings       
10221
10222 2000-09-26  Havoc Pennington  <hp@redhat.com>
10223
10224         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
10225         headers into the private header list
10226
10227         * Makefile.am (pkgconfig_DATA): install pkg-config files
10228
10229         * configure.in: add pkg-config files
10230
10231         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
10232
10233         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
10234         outstanding icon caches on theme change.
10235
10236         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
10237         important types:
10238
10239         (GtkIconSource): Specification for creating a pixbuf 
10240         appropriate for a direction/state/size triplet from 
10241         a source pixbuf or filename
10242
10243         (GtkIconSet): List of GtkIconSource objects that are used to
10244         create the "same" icon (e.g. an OK button icon), and cache for
10245         rendered icons
10246
10247         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
10248         up the icon set for a given stock ID.  GTK maintains a stack of
10249         GtkIconFactory to search, and applications or libraries can add
10250         additional icon factories on top of the stack
10251         
10252         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
10253         the set of GtkIconSource specified for a given stock ID into 
10254         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
10255         RcStyle, under the specified stock ID.
10256
10257         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
10258         render_icon used to derive a GdkPixbuf from a GtkIconSource.
10259         This allows people to theme how prelight, insensitive, etc. are
10260         done.
10261
10262         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
10263         icon factories for a style, and return the resulting 
10264         icon set if any.
10265
10266         (gtk_style_render_icon): Render an icon using the render_icon 
10267         method in the GtkStyleClass.
10268
10269         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
10270         Use the style for a given widget to look up a stock ID, get the
10271         icon set, and render an icon using the render_icon method 
10272         of the style
10273
10274         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
10275         (contains information about a stock item), the built-in stock item
10276         IDs, and functions to add/lookup stock items.
10277
10278         * gtk/stock-icons/*: Stock icons that come with GTK
10279
10280         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
10281         a button based on a GtkStockItem
10282         (gtk_button_new_accel): Takes a uline string and accel group, and
10283         installs the accelerator.
10284
10285         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
10286         image-display widget.
10287
10288 2000-09-25  Havoc Pennington  <hp@redhat.com>
10289
10290         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
10291
10292         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
10293         Fix a bug when removing node data, we didn't properly 
10294         re-splice the linked list after removing the data.
10295
10296         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
10297         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
10298
10299         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
10300
10301         * gtk/gtktextlayout.c (set_para_values): Set tab array 
10302         for the layout from the GtkTextTag.
10303
10304         * gtk/gtktexttypes.h: delete tab and search cruft, 
10305         remove g_convert() in favor of GLib version
10306
10307         * gtk/gtktexttypes.c: remove tab implementation from here,
10308         move to Pango
10309
10310         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
10311         tab stuff using new PangoTabArray from Pango
10312
10313         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
10314         unused border_width stuff
10315
10316 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
10317
10318         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
10319         glib) and now useless utf_to_latin1() latin1_to_utf()
10320
10321         * gtk/gtktextview.[ch]: Change ::move_insert and
10322         ::delete_text action signals to ::move and ::delete;
10323         create the signals with the right enumeration type,
10324         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
10325         C-v bindings, change Home, End to move to beginning/end
10326         of line, Add C-Home C-End to move to beginning/end
10327         of buffer. Change ::cut_text to ::cut_clipboard, etc;
10328         combine ::scroll_text into ::move; use new GtkSelectionData
10329         functions to simplify DND text handling.
10330         
10331         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
10332         deletion enumerations here, rename enumeration values to 
10333         be consistently plural.
10334
10335         * gtk/gtktextbuffer.c: Use new clipboard interfaces
10336         for cut/copy/paste and primary selection.
10337
10338         * gtk/gtktextbuffer.[ch]: Remove excess time and
10339         'interactive' arguments from cut/copy/paste;
10340         rename cut to cut_clipboard, etc; remove
10341         gtk_text_buffer_get_clipboard_contents().
10342
10343         * gtk/gtktextlayout.[ch]: Add 
10344         gtk_text_layout_move_iter_to_line_end() to move the iter to 
10345         line ends.
10346
10347         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
10348         Functions to set or get a UTF-8 string on the selection
10349         data.
10350
10351         * gtk/gtkclipboard.[ch]: New, simplified selection handling
10352         interfaces.
10353
10354         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
10355         created widgets - one of these is useless if we don't.
10356
10357         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
10358         a public function clear all targets registered for the
10359         widget.
10360
10361         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
10362         Never call gtk_widget_realize() - that was just asking
10363         for bizarre side-effects.
10364
10365         * gtk/gtkselection.c (gtk_selection_owner_set): Call
10366         gdk_selection_owner_set even if the widget is the
10367         same so that we reliably update the timestamp on
10368         the server.
10369
10370         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
10371         gdk_x11_get_server_time() function.
10372         
10373         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
10374         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
10375         Add some tricky filtering on serial numbers for
10376         selection clear events to fix up long-standard
10377         race condition FIXME's in gtkselection.c.
10378
10379         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
10380         routines to convert from utf8 to compound text or
10381         STRING and from a text property to UTF-8.
10382
10383         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
10384         a convenience function gdk_get_current_event_time().
10385
10386         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
10387         and free selection_data->data properly
10388
10389 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
10390
10391         * gtk/gtkthemes.c: Remove some unecessary includes.
10392
10393 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
10394
10395         * gtk/gtktextdisplay.c
10396         * gtk/gtktextlayout.c
10397         * gtk/gtktexttag.c
10398         * gtk/gtktexttag.h
10399         * gtk/testtext.c: Change the overstrike property to strikethrough,
10400         to closer match pango.
10401
10402 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
10403
10404         * gtk/gtktextview.c: Fix up visibility so that focus,
10405         cursor_visible and blink interact properly.  Reenable cursor blink
10406         which had been roughly disabled. Make blink and focus
10407         properly per-view.
10408
10409         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
10410         Add a flag for whether to display insertion cursor and
10411         a function to set the flag.
10412
10413         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
10414         get_line_y() to get_line_yrange(), to be a bit more generally
10415         useful.
10416
10417 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
10418
10419         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
10420           do stop_navigating_submenu, to clear last timeout properly.
10421           Also in gtk_menu_motion_notify move ignore_enter above
10422           the conditional to make it always happen as suggested by Owen
10423
10424 2000-09-07  Tor Lillqvist  <tml@iki.fi>
10425
10426         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
10427
10428         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
10429         w32api headers.
10430
10431         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
10432         declarations.
10433
10434         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
10435         (gdk_win32_get_colormap): A line had been deleted by mistake.
10436
10437         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
10438         (gdk_event_translate): Handle more virtual keycodes to be able to
10439         generate GDK events for Control-comma, Control-period, etc.
10440
10441         * gtk/gtk.def: Add some missing entry points.
10442
10443 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
10444
10445         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
10446         Doc comment fixing. (Mostly non-matching parameter names.)
10447
10448         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
10449         comments a little to avoid looking like a doc comment.
10450
10451         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
10452         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
10453         conversions be changed to GError?)
10454
10455         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
10456         Move private #defines into .c file.
10457
10458         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
10459         order of argument addition, remove duplicates.
10460
10461         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
10462         parent class is FrameClass, not BinClass.
10463
10464         * gtk/gtk.h: Add gtkinvisible, which was missing.
10465         (It's occasionalyl useful for client apps, if seldom.)
10466
10467         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
10468         #define.
10469
10470 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
10471
10472         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
10473         coordinates when creating window, instead of GDK-space
10474         coordinates. (Avoid BadValue on too large windows.)
10475
10476 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10477
10478         * configure.in (use_mmx_asm): Remove conftest* after use along the
10479         lines of AC_TRY_COMPILE.        
10480         
10481         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
10482         of g_dirname, which is deprecated.
10483         (gtk_rc_parse_any): Removed calls to
10484         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
10485
10486         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
10487         Removed calls to g_hash_table_{freeze,thaw}, as they are
10488         deprecated now.
10489
10490         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
10491         instead of g_basename.
10492         
10493 2000-09-04 Elliot Lee <sopwith@redhat.com>
10494         
10495         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
10496         ANSI warning.
10497
10498 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
10499
10500         * gtk/gtkwidget.h:  Add some documenting comments about 
10501           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
10502           just as owen said on irc.
10503
10504         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
10505           set HAS_DEFAULT.  Only set it if there isn't another window
10506           holding it (a focus window which RECEIVES_DEFAULT) and only unset
10507           it if the widget is not the focused window with RECEIVES_DEFAULT.
10508           This fixes weird double default bugs in dialogs which has things
10509           call gtk_window_set_default at times.
10510
10511 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
10512
10513         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
10514         Nils Barth and David Santiago to improve submenu
10515         navigation. The patch does this by creating a triangular
10516         region from the point where the pointer leaves the
10517         menu to the submenu.  While the pointer is in
10518         that region and a timeout has not expired, events 
10519         that would cause the active submenu to change are
10520         ignored.
10521
10522 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
10523
10524         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
10525         moving a toplevel window immediately after sizing it would
10526         result in it being sized back to the old size since 
10527         impl->width, impl->height aren't updated until we hear
10528         back from the server. There is still a (longstanding) bug
10529         here that gdk_window_get_size() will give the wrong size
10530         until we do hear back.
10531
10532 2000-08-31  Havoc Pennington  <hp@redhat.com>
10533
10534         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
10535         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
10536         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
10537         Rename GtkTextStyleValues to GtkTextAttributes
10538
10539 2000-08-31  Havoc Pennington  <hp@pobox.com>
10540
10541         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
10542         for rapid testing whether an iterator is the end iterator
10543         (gtk_text_btree_new): init end line cache
10544         (gtk_text_line_is_last): use fast cached line to 
10545         see if we're the last line.
10546         (get_last_line): use cached line here too, should 
10547         speed up some random unrelated code.
10548         
10549 2000-08-30  Havoc Pennington  <hp@pobox.com>
10550
10551         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
10552         signals.
10553
10554         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
10555         delete_text signals. This allows the signals to be used for
10556         implementing undo.
10557
10558         * gtk/gtktextbuffer.c: Change signal handler signatures; 
10559         provide "interactive" argument when emitting insert_text or
10560         delete_text signal.
10561         
10562 2000-08-30  Havoc Pennington  <hp@pobox.com>
10563
10564         * gtk/gtktextbuffer.c: Docs
10565
10566 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
10567
10568         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
10569         from switch statements, since Tor removed the enumeration
10570         value.
10571         
10572         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
10573         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
10574
10575 2000-08-29 Elliot Lee <sopwith@redhat.com>
10576         * */*.h: Use G_GNUC_CONST.
10577
10578 2000-08-27  Havoc Pennington  <hp@pobox.com>
10579
10580         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
10581         minor indentation fixes, inserted some FIXME about stuff I
10582         realized was broken while documenting it.
10583         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
10584         GTK convention  
10585
10586 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
10587
10588         * gtk/testgtk.c (create_styles): Fix double free of
10589         font desc.
10590
10591 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10592
10593         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
10594         
10595         * gtk/testgtk.c (create_styles): Add a test for modifying
10596         the style through gtk_widget_modify_*.
10597
10598         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
10599         a function to get the current modifier style.
10600
10601         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
10602         of the passed in GtkRcStyle instead of ref'ing it.
10603
10604         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
10605
10606 2000-08-20  Tor Lillqvist  <tml@iki.fi>
10607
10608         * gdk/gdkimage.h
10609         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
10610         shared memory image+pixmap GdkImage type, or
10611         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
10612         I am dropping that.
10613
10614         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
10615         actually call gtk_init_abi_check(), passing also
10616         sizeof(GtkWindow). Ditto for gtk_init_check(). 
10617
10618         * gtk/gtk.def
10619         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
10620         New functions, used to check that the GTK+-using code has been
10621         compiled using the correct compiler and switches. In particular,
10622         with gcc one has to use the -fnative-struct switch as GTK+ is
10623         compiled with that.
10624
10625 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
10626
10627         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
10628         ->prev fields when merging lists. (Found simultaneously
10629         by Pawel Salek and Jakub Jelinek)
10630
10631 2000-08-12  Tor Lillqvist  <tml@iki.fi>
10632
10633         * gdk/gdk.def
10634         * gtk/gtk.def: Add missing entries.
10635
10636         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
10637         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
10638
10639         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
10640         function. Dummy implementation at this point.
10641
10642         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
10643         rules. Undefine GTK_COMPILATION when compiling the test programs.
10644         
10645         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
10646
10647 2000-08-11  Tor Lillqvist  <tml@iki.fi>
10648
10649         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
10650         to convert back and forth from UTF-8 and the "system" (or "current
10651         locale") charset when necessary. Indentation/spacing cleanup.
10652
10653 2000-08-10  Havoc Pennington  <hp@redhat.com>
10654
10655         * Makefile.am (snapshot): Change the format of the snapshot
10656         version to match glib
10657
10658         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
10659         from EXTRA_DIST since it doesn't seem to exist
10660
10661 2000-08-10  Tor Lillqvist  <tml@iki.fi>
10662
10663         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
10664         version of the directory name (not the UTF-8 one) when building
10665         the path name to stat().
10666
10667 2000-08-03  Elliot Lee  <sopwith@redhat.com>
10668
10669         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
10670         PANGO_ATTR_SHAPE set.
10671
10672 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
10673
10674         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
10675         Peter Osterlund to simplify the code while keeping the
10676         functionality the same.
10677
10678 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
10679
10680         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
10681         is_viewable() test further inside the function, since removing the 
10682         window from the redraw list without clearing ->update_area
10683         was also very broken.
10684
10685 2000-08-02  Tor Lillqvist  <tml@iki.fi>
10686
10687         * configure.in: Check for <unistd.h>.
10688
10689 2000-08-01  Martin Baulig  <baulig@suse.de>
10690
10691         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
10692         to display the message that this is a development version of GTK+.
10693
10694 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
10695
10696         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
10697         was depending on widget->allocation instead of the width of text_area,
10698         which was incorrect for subclasses like GtkSpinButton.
10699
10700         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
10701         with width == 1 tests that should be width == -1.
10702
10703 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
10704
10705         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
10706         (broken, Elliot, every single window blank on X) custom code with call
10707         to gdk_window_is_viewable() which a) prevents code duplicate and
10708         b) works. 
10709
10710 2000-07-31  Elliot Lee  <sopwith@redhat.com>
10711
10712         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
10713         to get the GDK_PARENT_ROOT() macro to work.
10714         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
10715         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
10716         of, windows that aren't shown.
10717         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
10718         pointer grab stuff.
10719
10720 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
10721
10722         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
10723           s/gtk_main_iteration/g_main_iteration/
10724
10725           Did this already in change:
10726                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
10727           don't know how it got reverted.
10728
10729 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
10730
10731         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
10732         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
10733
10734         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
10735         not gdk_pixbuf.
10736
10737 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
10738
10739         * configure.in,po/{sp,sr}.po: Added Serbian files
10740
10741 2000-07-30  Tor Lillqvist  <tml@iki.fi>
10742
10743         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
10744
10745         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
10746         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
10747         GIOChannel implementation.
10748
10749         * gdk/win32/gdkinput.c
10750         * gdk/win32/gdkpango-win32.c: Update license name here, too.
10751
10752         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
10753         definition to match prototype.
10754
10755         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
10756
10757 2000-07-27  Elliot Lee  <sopwith@redhat.com>
10758
10759         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
10760         function, to allow handling image formats that cannot be detected
10761         by looking at content alone.
10762
10763 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
10764
10765         * docs/tutorial/*.gif *.jpg *.eps
10766           Update these to the same look-n-feel.
10767           Why does including images in DocBook suck so badly?
10768
10769 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
10770
10771         * gtk/gtktable.c: applied patch from Phil Thompson
10772         <phil@river-bank.demon.co.uk> that enables space settings for
10773         the last row/columns as well.
10774
10775 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
10776
10777         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
10778         updates the license headers to the GNU Lesser General Public License,
10779         as well as updating the copyright year to 2000.
10780
10781 2000-07-26  Robert Brady  <rwb197@zepler.org>
10782
10783         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
10784           and po/Makefile, was installing and looking for them under gtk20
10785           and gtk2 respectively.
10786
10787 2000-07-25  Havoc Pennington  <hp@redhat.com>
10788
10789         * gtk/testtext.c: Comment out some stuff that depends on the rest
10790         of my patches.
10791
10792 2000-07-25  Havoc Pennington  <hp@redhat.com>
10793
10794         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
10795         buffer
10796
10797 2000-07-25  Havoc Pennington  <hp@redhat.com>
10798
10799         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
10800         widget changes.
10801
10802         * gtk/gtktextview.h: To be consistent with usage of "line"
10803         throughout the API to mean "newline-terminated thingy", change
10804         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
10805         to MOVEMENT_LINE.
10806
10807         (GtkTextView): Add flags for default editability, and whether to
10808         show the cursor. Add functions to get/set that. Add 
10809
10810         (gtk_text_view_get_iter_location): new function
10811
10812         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
10813         gtktextlayout.h
10814         (g_convert): Add g_convert temporarily, will go in glib in a bit
10815         
10816         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
10817         GtkTextTagTableForeach instead of brokenly using GHFunc.
10818         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
10819
10820         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
10821         moved to public header.
10822
10823         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
10824         "invisible", since "elide" was a bad name.
10825         (gtk_text_tag_get_priority): Added
10826
10827         (GtkTextStyleValues): put this in public header, along with
10828         functions to use it.
10829
10830         * gtk/gtktextmarkprivate.h: Include more headers, since we no
10831         longer include gtktextbtree.h.
10832
10833         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
10834         gtk_text_mark_deleted
10835
10836         * gtk/gtktextlayout.h: Don't include the "really private" headers,
10837         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
10838         to make this possible. Now we only need to install
10839         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
10840         (However the Makefile.am isn't changed yet because of the
10841         logistics of merging gtk-hp-patches piecemeal)
10842
10843         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
10844         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
10845         gtk_text_iter_get_line is now used in the public API for a
10846         different purpose.
10847
10848         * gtk/gtktextiter.h: Clean up function names to be more
10849         consistent. Always call char offset "offset" and byte index
10850         "index". A "line" is always a line number. 
10851
10852         (gtk_text_iter_is_last): new function, more efficient than 
10853         the existing way to check
10854         (gtk_text_iter_is_first): new function, also more efficient
10855
10856         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
10857
10858         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
10859         gtk_text_iter_forward_char, etc.
10860
10861         (gtk_text_iter_forward_to_tag_toggle): Renamed from
10862         forward_find_tag_toggle, since this isn't a linear search
10863
10864         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
10865
10866         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
10867         New functions, search for a buffer substring.
10868
10869         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
10870         interactive and default editable (since we need to store that info
10871         until we receive the selection data).
10872
10873         Remove all the _at_char and at_line etc. versions of functions;
10874         only have iterator versions.
10875
10876         Add _interactive() versions of functions, that consider the
10877         editability of text. (FIXME add interactive flag to the 
10878         insert/delete signals per Darin's suggestion)
10879
10880         (gtk_text_buffer_get_tag_table): new function, demand-creates the
10881         tag table if necessary
10882
10883         Remove declaration of gtk_text_buffer_get_iter_from_string
10884
10885         (_gtk_text_buffer_get_btree): private/internal function, added.
10886         
10887
10888         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
10889         (gtk_text_line_is_last): new function
10890
10891 2000-07-25  Havoc Pennington  <hp@redhat.com>
10892
10893         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
10894         using GtkProgressBar. See Changes-2.0.txt for details.
10895
10896         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
10897         "pulse_step" which are the equivalent of
10898         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
10899         Implement new API.
10900         
10901         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
10902         (use_text_format) to mark whether text set on the progress bar is
10903         a format string. Deprecate entire GtkProgress interface.
10904
10905         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
10906         (gtk_progress_build_string): make this a no-op if use_text_format
10907         is FALSE
10908
10909         * docs/Changes-2.0.txt: Describe progress bar changes.
10910
10911 2000-07-25  Tor Lillqvist  <tml@iki.fi>
10912
10913         * Makefile.am: Include the build directory.
10914
10915         * configure.in: Generate build/Makefile, build/win32/Makefile,
10916         gdk/, gdk/win32/, and gtk/makefile.mingw.
10917
10918         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
10919         Add GETTEXT_PACKAGE.
10920         
10921         * gdk/gdk.def
10922         * gtk/gtk.def: Updates.
10923
10924         * gdk/gdkfont.h
10925         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
10926         need them any longer.
10927
10928         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
10929
10930         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
10931         PANGOWIN32_LIBS and gdk_pixbuf.
10932
10933         * gdk/win32: Compiles, but no doubt doesn't work at all.
10934
10935         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
10936
10937         * gdk/win32/gdkinput.c: New file, temporarily.
10938         
10939         * gdk/win32/gdkinput-win32.h: New file
10940
10941         * gdk/win32/gdkinputprivate.h: Remove.
10942
10943         * gdk/win32/gdkpango-win32.c: New file.
10944
10945         * gtk/makefile.mingw.in: New file
10946
10947         * gtk/makefile.cygwin: Removed
10948         
10949         * gtk/Makefile.am: Update accordingly.
10950
10951         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
10952         made externally visible.
10953
10954         * gtk/gtkmain.c: Use it.
10955         
10956         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
10957         is enough.
10958
10959         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
10960
10961 2000-07-24 Elliot Lee <sopwith@redhat.com>
10962         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
10963         individual backends already.
10964         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
10965         again. Yes, there really is a good reason for this, if you are using the gdkregion
10966         internals, and if you're not, why do you care?
10967         * gdk/gdkwindow.c: Fix inverted condition
10968         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
10969         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
10970         * gtk/gtkrange.c: Redraw trough when moving.
10971         * gtk/gtktypeutils.c: Fix warning by adding const cast.
10972         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
10973
10974 2000-07-23  Tor Lillqvist  <tml@iki.fi>
10975
10976         * configure.in: Check for mkstemp and sigsetjmp. Output
10977         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
10978
10979         More work on GDK for Win32. Still in an intermediate state.
10980
10981         * gdk/makefile.cygwin
10982         * gdk/win32/makefile.cygwin: Removed.
10983         
10984         * gdk/makefile.mingw.in
10985         * gdk/win32/makefile.mingw.in: New files.
10986
10987         * gdk/Makefile.am
10988         * gdk/win32/Makefile.am: Generate and distribute them.
10989
10990         * gdk/win32/gdkwindow-win32.h
10991         * gdk/win32/gdkdrawable-win32.h
10992         * gdk/win32/gdkpixmap-win32.h: New files.
10993
10994         * gdk/win32/gdkcolor-win32.c
10995         * gdk/win32/gdkcursor-win32.c
10996         * gdk/win32/gdkdrawable-win32.c
10997         * gdk/win32/gdkgc-win32.c
10998         * gdk/win32/gdkimage-win32.c
10999         * gdk/win32/gdkprivate-win32.h
11000         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
11001         Rename fields and variables called xcursor, xid, etc (these names
11002         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
11003
11004 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
11005
11006         * gtk/gtkentry.[ch]: Fix some problems with vertical
11007         alignment.
11008
11009         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
11010         char/byte confusion.
11011
11012 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
11013
11014         * gtk/gtktextview.c (changed_handler): Fix bug where
11015         redraw wasn't being done properly when height of
11016         dirty region changed.
11017
11018         * demos/Makefile.am: Remove various references to
11019         -lgmodule
11020
11021 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
11022
11023         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
11024         PangoAttrShape to reserve space for pixmaps, add 
11025         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
11026         in the display functions.
11027         
11028         * gtk/testgtk.c (create_layout): Set some more exotic
11029         scrolled window options
11030
11031         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
11032         Add function to set the shadow type of a window, to allow
11033         putting a shadow around widgets such as GtkLayout or GnomeCanvas
11034         which don't draw their own frame.
11035
11036 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
11037
11038         * docs/tutorial/package-db-tutorial.sh: New file for
11039           packaging DocBook format tutorial
11040
11041 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
11042
11043         * docs/tutorial/gtk-tut.sgml: Minor updates
11044
11045         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
11046
11047 2000-07-19  Tor Lillqvist  <tml@iki.fi>
11048
11049         * gtk/gtksignal.c: Fix C++ comment.
11050
11051         * gtk/gtkimmulticontext.c
11052         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
11053         don't return value from void functions.
11054
11055         * gtk/gtk.def: Add gtk_rc_style_unref.
11056
11057 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11058
11059         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
11060         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
11061         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
11062         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
11063         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
11064         gtk/gtktypeutils.h: Include files outside of the extern "C"
11065         block. Makes some C++ compiler happy. Reported by Denis Vakatov
11066         <vakatov@peony.nlm.nih.gov>.
11067
11068 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
11069
11070         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
11071           Completes first pass. Hurrah!
11072
11073 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
11074
11075         * docs/tutorial/gtk-tut.sgml: More clean ups.
11076
11077 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
11078
11079         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
11080         paint the background of the text area which was accidentally
11081         removed at some point.
11082
11083         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
11084           
11085          - Move most of the functionality from the theme vtable
11086            into GtkRcStyleClass and GtkStyleClass. The moved
11087            vtable functions were changed a bit in the move to
11088            work better in their new home.
11089
11090          - Get rid of the engine and engine_data fields from
11091            GtkRcStyle and GtkStyle; instead the theme
11092            engine derives theme-specific subclasses of GtkRcStyle
11093            and GtkStyle
11094
11095          - Add extra dlsym() found entry point to themes,
11096            theme_create_rc_style().
11097
11098         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
11099         in gtk_style_real_copy.
11100
11101         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
11102         to register a type associated with an engine. (The engine
11103         won't be unloaded as there is an instance of the type.)
11104
11105
11106 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
11107
11108         * docs/tutorial/gtk-tut.sgml: Clean ups.
11109
11110 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
11111
11112         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
11113           of cleaning up to do.
11114
11115 2000-07-15  Tor Lillqvist  <tml@iki.fi>
11116
11117         * gdk/testgdk.c: New file, quick hack to test backends for
11118         pixel-by-pixel correctness of the most simple graphic operations.
11119
11120 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
11121
11122         * Really release 1.3.1
11123         
11124         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
11125         include structure.
11126
11127 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
11128
11129         * Released 1.3.1
11130
11131 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
11132
11133         * gtk/gtktextlayout.c: use FALSE for size_only most
11134         of the time when calling gtk_text_layout_get_line_display()
11135         to avoid causing double reshapes when a redraw follows
11136         immediately after.
11137
11138 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
11139
11140         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
11141         appropriate region and gdk_window_process_updates() so trough
11142         updating doesn't lag behind the window being scrolled.
11143
11144         * gdk/gdkgc.c: Make parent_class pointer static.
11145          
11146 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
11147
11148         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
11149         include <string.h>.
11150          
11151         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
11152         cut-and-paste error in computing memory offset for 4 channels.
11153
11154 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
11155
11156         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
11157         gtk_rc_append_default_pixmap_path(), since it wasn't
11158         adding an interesting path and we don't have a meaningful
11159         default for this value.
11160
11161 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
11162
11163         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
11164         gtk-config to gtk-config-2.0 move gtk_.m4 to
11165         gtk-2.0.m4
11166
11167         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11168         gdk/Makefile.am demos/Makefile.am: Change 
11169         library names to libgtk-1.3.la, etc, so that we
11170         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
11171
11172         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11173         gdk/Makefile.am gdk/x11/Makfile.am
11174         Move include files into /usr/include/gtk-2.0, 
11175         /usr/lib/gtk-2.0/include/
11176          
11177         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
11178         gtk/gtkintl.h: Change package for gettext from 
11179         gtk+ to gtk20. Put hack in autogen.sh to modify
11180         po/Makefile.in.in after gettextize to make this
11181         possible.
11182
11183         * gtk+.spec: Some updates, not tested.
11184
11185         * gdk-pixbuf/Makefile.am: Move loaders into
11186         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
11187
11188         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
11189         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
11190         to THEMENAME/gtk-2.0/. Move engine directory  to
11191         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
11192         
11193 2000-07-12  Tor Lillqvist  <tml@iki.fi>
11194
11195         Win32 changes, still doesn't build though.
11196
11197         * gdk/makefile.cygwin
11198         * gdk/win32/makefile.cygwin
11199         * gtk/makefile.cygwin: Updates.
11200
11201         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
11202         default values for fg and bg pixel as X11 does (0 and 1), not
11203         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
11204         Use 0 for pen width by default (treated as 1 anyway later, but for
11205         apps that might check the value in the GdkGC).
11206         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
11207         interface to gdk_gc_predraw and _postdraw.
11208
11209         * gdk/win32/gdkwin32.h
11210         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
11211
11212         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
11213         extraneous semicolon.
11214
11215         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
11216
11217         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
11218         not the Win32 bitspixel value.
11219
11220         * gdk/win32/gdkcc-win32.c:
11221         * gdk/win32/gdkcolor-win32.c 
11222         * gdk/win32/gdkprivate-win32.h
11223         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
11224         GDK object structure.
11225
11226 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
11227
11228         * docs/tutorial/gtk_tut_12.es.sgml (name): 
11229         * docs/tutorial/gtk_tut_it.sgml (name): 
11230         * docs/tutorial/gtk_tut_fr.sgml (name): 
11231         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
11232         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
11233
11234 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
11235
11236         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
11237           small changes.
11238
11239 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
11240
11241         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
11242         a bug here, never been here and never fixed anything ;(
11243         (don't segfault if tree->root_tree is NULL, which happens prior
11244         to widget realization, but puke instead).
11245
11246 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
11247
11248         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
11249         add the necessary tokens.
11250
11251         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
11252         (gtk_rc_style_to_style): copy thicknesses.
11253         (gtk_rc_init_style): apply thicknesses.
11254         (gtk_rc_parse_style): parse xthickness and ythickness.
11255
11256         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
11257
11258         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
11259         (gdk_window_new): 
11260         (_gdk_windowing_window_init): 
11261         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
11262         (gdk_pixmap_create_from_data): 
11263         (gdk_bitmap_create_from_data): 
11264         (gdk_pixmap_new): 
11265         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11266         (gdk_image_new): 
11267         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
11268         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
11269         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
11270         (gdk_colormap_get_system): 
11271         (gdk_colormap_new): 
11272         * gdk/gdkwindow.c (gdk_window_init): 
11273         * gtk/gtkstyle.c (gtk_style_new):
11274         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
11275         * gdk/gdkpixmap.c (gdk_pixmap_init): 
11276         * gtk/gtkrc.c (gtk_rc_style_new):
11277         use g_object_new() instead of g_type_create_instance() which
11278         is a private function for fundamental type implementations.
11279
11280 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
11281
11282         * configure.in: Add check for db2html
11283
11284 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
11285
11286         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
11287         hack to set glib_debug_objects based on gtk_debug_flags.
11288
11289 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
11290
11291         * INSTALL.in: Update the Prerequisites section.
11292
11293         * Makefile.am demos/Makefile.am docs/Makefile.am
11294         docs/tutorial/Makefile.am gdk/x11/Makefile.am
11295         gdk/linux-fb/Makefile.am: Dist fixes
11296
11297 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
11298
11299         * NEWS: 10,000 foot view of 1.3.1 changes.
11300
11301 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
11302
11303         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
11304         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
11305         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
11306         gdk/x11/gdkmain-x11.c: 
11307
11308         Patch from George Lebl to add a GdkGrabStatus enumeration to use
11309         as a return value of gdk_*_grab(). Previously, we just
11310         returned the X11 values directly.
11311
11312 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
11313
11314         * gdk/x11/Makefile.am: Patch from George Lebl to 
11315         install all the headers in the right place.
11316
11317 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
11318
11319         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
11320           initial conversion to DocBook.
11321
11322 2000-07-04  Tor Lillqvist  <tml@iki.fi>
11323
11324         * README.win32: Improve a bit.
11325
11326         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
11327         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
11328         Alt+0nnn on the numpad (used to enter characters by numeric code
11329         from current DOS or ANSI codepage) working correctly, as in other
11330         Windows apps.
11331
11332         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
11333         same argument validity tests as in X11 version.
11334         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
11335
11336         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
11337         definitions in case missing from headers.
11338
11339         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
11340         destroy the window-specific cursor.
11341         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
11342         calling GetModuleHandle(NULL).
11343         (gdk_window_set_cursor): Reworked to always copy the passed cursor
11344         with CopyCursor before setting it as the window-specific
11345         cursor. It is OK for the caller to destroy the GdkCursor (and thus
11346         also its Windows cursor) after calling this function. Destroy any
11347         previous window-specific cursor.
11348
11349 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
11350
11351         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
11352         font charset is iso8859-1, not iso-8859-1.
11353
11354 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
11355
11356         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
11357         Use g_get_charset() instead of g_get_codeset().
11358
11359         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
11360         Comment out some strdup'ing functions to keep timj
11361         happy until we finish fighting this out.
11362
11363 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
11364
11365         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
11366         <= width or height.
11367
11368         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
11369         from 1.2 for parent/child states.
11370
11371         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
11372         of typos.
11373
11374         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
11375         event structures, replace with a generic axes field. Replace 
11376         deviceid/sourec with GdkDevice *device.
11377
11378         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
11379         to extract particular axis use value from event. (Also
11380         can be used for normal X/Y.)
11381
11382         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
11383         allow for arbitrary number of axes, namespace everything
11384         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
11385         everywhere.
11386
11387         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
11388         Get rid of the gdk_input_vtable setup if favor of simply
11389         defining the functions in gdkinput-none/gxi/xfree.c in
11390         a similar fashion to the way that the port structure is 
11391         done.
11392
11393         * gtk/gtkdnd.c: Fix fields of synthesized button press event
11394         for new event structures. 
11395
11396         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
11397         new device interfaces.
11398
11399 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
11400
11401         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
11402         set the initial text.
11403
11404         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
11405         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
11406         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
11407         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
11408
11409         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11410         pango_layout_set_font_description to simplify.
11411
11412 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
11413
11414         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11415         pango_layout_set_font_description to simplify.
11416
11417 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
11418
11419         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
11420         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
11421         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
11422
11423         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
11424         PANGO_PIXELS() macro.
11425
11426 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
11427
11428         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
11429         that returns a PangoContext owned by the widget and updated to
11430         match future changes in the widget. Also, make 
11431         gtk_widget_create_pango_layout() use this context. If we ever
11432         add a ::changed signal to PangoContext, this will make things
11433         much more convenient. 
11434
11435         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
11436         in the appropriate places instead of destroying the layouts and
11437         creating new ones.
11438
11439         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
11440         in a few strategic places.
11441
11442 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
11443
11444         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
11445         gtk_widget_size_request() on reparented child, if one. Otherwise,
11446         queue_resize() on the child never results in it getting size-requested
11447         at all.
11448
11449         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
11450         in option menus, so that (with luck) people won't copy it into
11451         their apps in the future.
11452
11453         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
11454         to gtk_option_menu_calc_size. This isn't perfect, but should fix
11455         a lot of problems with changing the size of the menu's menu
11456         items after adding it to the option menu.
11457
11458         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
11459
11460         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
11461         the text direction for a widget changes.
11462
11463         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
11464         ::direction_changed to get rid of various hacks.
11465
11466 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
11467
11468         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
11469         name.
11470
11471 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
11472
11473         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
11474         flag to the structure. Do not call XFreePixmap on pixmaps created
11475         by gdk_pixmap_foreign_new().
11476
11477 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
11478
11479         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
11480         value using GdkRGB functionality given GdkColormap and GdkColor.
11481         (name not final, waiting for inspiration.)
11482         
11483         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
11484         set the foreground/background of a GC using the GC's colormap
11485         and GdkRGB. (name not final, waiting for inspiration.)
11486
11487         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
11488         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
11489
11490         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
11491         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
11492         purely a function of the corresponding colormap. Make
11493         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
11494
11495         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
11496         gdk_pixbuf_*create_from_xpm_* in terms of
11497         gdk_pixbuf_new_from_xpm_data(), move into platform independent
11498         code.
11499
11500         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
11501         advantage of the new draw_rgb_32_image_dithalign.
11502
11503         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
11504
11505         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
11506         on each created GC.
11507
11508         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
11509
11510         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
11511         which we initialize from the drawable when the GC is created,
11512         if the drawable has a colormap.
11513
11514         * gdk/x11/gdkgc-x11.c: include string.h for memset.
11515
11516         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
11517
11518         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
11519
11520 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
11521
11522         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
11523         actually returning expose events, make sure to set
11524         the count field properly.
11525
11526         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
11527         accidentally reintroced bug which always cleared
11528         the graphics_exposures value. 
11529
11530 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
11531
11532         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
11533
11534 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
11535
11536         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
11537
11538 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
11539
11540         * docs/faq/gtk-faq.sgml: Start of Section 6.
11541
11542 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
11543
11544         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
11545         
11546         (Fixes problem with drawing childless frames. Pointed out
11547         by and a first patch from Anders)
11548         
11549         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
11550         compute a child_allocation, even if we don't have a child.
11551
11552         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
11553         Always chain to the parent's impl, even if we don't have a child.
11554
11555 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11556
11557         * gdk/gdkrgb.c: If possible, create only a single shm segment and
11558         use multiple parts of it instead of creating a bunch of separate
11559         segments, since the maximum number of segments per system is not
11560         large. (This might be worth backporting to GTK+-1.2.x if we make a
11561         new release )
11562
11563         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
11564         structure in preparation for per-colormap GdkRGB.
11565
11566         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
11567         to False when we get EINVAL from shmget so that the caller of
11568         gdk_image_new can retry with a smaller segment size.
11569
11570 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
11571
11572         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
11573
11574 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
11575
11576         * configure.in: make the current version number 1.3.1 (binary age 0,
11577         interface age 0).
11578         
11579         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
11580         gtkcompat.h is all we want.
11581
11582         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
11583         GLib primitive types. fixed g_type_register_fundamental() argument
11584         ordering.
11585
11586         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
11587         compiles.
11588
11589         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
11590         object code cleanup, comment trigraph fixes, etc...
11591
11592 2000-06-23  Havoc Pennington  <hp@redhat.com>
11593
11594         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
11595         instead of making up a bogus name for first_para_mark
11596
11597         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
11598         0 as a context ID
11599
11600 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
11601
11602         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
11603
11604 2000-06-21  Havoc Pennington  <hp@pobox.com>
11605
11606         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
11607         we didn't check window->bg_pixmap != GDK_NO_BG.
11608
11609         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
11610         gdk-pixbuf
11611
11612 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
11613
11614         * docs/faq/gtk-faq.sgm: Move file to here.
11615           TODO: Update Makfile.am 
11616
11617 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
11618
11619         * docs/gtk-faq.sgm: Add Section 2
11620
11621 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
11622
11623         * docs/gtk-faq.sgm: New file. Start of DocBook
11624           version of the FAQ.
11625
11626 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
11627
11628         * configure.in (GDK_PIXBUF_MAJOR): Define version
11629         numbers for GDK_PIXBUF_*, as they get substituted
11630         into a header file. Need to consider versioning
11631         for gdk-pixbuf more carefully later.
11632
11633 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
11634
11635         Work with srcdir != builddir.   
11636         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
11637         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
11638         * demos/testpixbuf.c: Likewise.
11639         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
11640         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
11641         <gdk/x11/gdkx.h>.
11642         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
11643         "gdk-pixbuf.h".
11644         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
11645
11646 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
11647
11648         * TODO.xml: Change 1.4 version numbers to 2.0.
11649
11650 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
11651
11652         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
11653         fixups to GTK+ standard.
11654
11655 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
11656
11657         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
11658         gdk-pixbuf.
11659
11660         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
11661         fixups for GObject.
11662
11663         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
11664         gdk-pixbuf with GDK dependencies moved into GDK.
11665         
11666         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
11667         move gdk-pixbuf-loader here until GObject has signals.
11668
11669         * demos/: New directory of demos. Move demos from
11670         gdk-pixbuf here.
11671
11672         * demos/pixbuf-init.c: Small bit of code to check for
11673         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
11674         set GDK_PIXBUF_MODULEDIR appropriately.
11675
11676         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
11677         define which no longer makes sense.
11678
11679 2000-06-21  Havoc Pennington  <hp@redhat.com>
11680
11681         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
11682         gtk_get_default_language
11683
11684         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
11685         new function to get the default language
11686
11687         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
11688         s/gtk_text_view_style_values/gtk_text_style_values/
11689
11690         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
11691         Add a "language" field to tags.
11692
11693         (gtk_text_tag_set_arg): Fix bug in setting
11694         "bg_full_height_set" tag.
11695
11696 2000-06-21  Havoc Pennington  <hp@redhat.com>
11697
11698         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
11699         in the interfaces
11700
11701         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
11702         stuff instead when possible.
11703
11704         * gtk/gtktexttypes.h: Delete some unused constants
11705
11706         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
11707         testtextbuffer.c: use glib instead of custom unicode routines
11708
11709 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
11710
11711         * docs/es/: Removed mistakenly added generated sgml
11712
11713         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
11714         Remove outdated info files.
11715
11716         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
11717         Moved tutorial files into subdir
11718
11719         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
11720         subdir.
11721
11722         * docs/man/gtk_button.pod: Remove. (contents will be
11723         integrated into gtk-reference button page.)
11724
11725         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
11726         docs/faq/Makefile.am: Adjust for new organization
11727
11728 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
11729
11730         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
11731         not $(MKINSTALLDIRS)
11732
11733 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
11734
11735         * gtk/testgtk.c (create_text): Finish the job Elliot started
11736         of removing font setting test for text widget. (Since text widget
11737         and GdkFont are not deprecated, and cause portability problems.)
11738
11739 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
11740
11741         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
11742         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
11743         Remove use of libunicode in favor of new GLib functions.
11744
11745         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
11746         nano-x, framebuffer. The X11 include is just a hack until we get
11747         the necessary functions in gdkcolor.h, so there is no reason to
11748         add other includes of platforms.
11749
11750         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
11751         window bigger than the screen change.
11752
11753         * gtk/testgtk.c: Revert some random changes from Elliot
11754         that had no particular point and were causing testgtkrc
11755         not to function correctly.
11756         
11757         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
11758         because GdkSegment and GdkRegionBox have the same fields,
11759         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
11760         results in clearer code.
11761
11762         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
11763         gdk_input_translate_coordinates): Fix missed GdkObjectification
11764
11765 2000-06-18  Elliot Lee  <sopwith@redhat.com>
11766
11767         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
11768         * gtk/gtk{plug,socket}.h: Missed commits from previous.
11769
11770 2000-06-20  Havoc Pennington  <hp@redhat.com>
11771
11772         * modules/linux-fb/Makefile.am: Make this compile
11773         without framebuffer enabled
11774
11775         * gdk/linux-fb/Makefile.am: Add conditional to not build
11776         framebuffer unless specified in configure
11777
11778         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
11779         the size of the target instead of source if -1 was passed for
11780         width/height
11781
11782         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
11783         width/height confusion.
11784
11785 2000-06-19  Havoc Pennington  <hp@redhat.com>
11786
11787         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
11788         GDK_DRAWABLE_XID. In the future, we probably want to make it
11789         faster with G_DISABLE_CHECKS turned on.
11790
11791 2000-06-14  Havoc Pennington  <hp@redhat.com>
11792
11793         * gdk/Makefile.am: add gdkpixmap.c
11794
11795         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
11796         s/gdk_image_init/_gdk_windowing_image_init
11797
11798         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
11799         ref/unref
11800
11801         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
11802
11803         * gdk/gdkcompat.h: remove GdkWindowType compat, since
11804         GdkWindowType is now non-deprecated; 
11805         change gdk_window_get_type() compat to be
11806         gdk_window_get_window_type().
11807
11808         * gdk/gdkdnd.h: make GdkDragContext a GObject.
11809
11810         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
11811         virtual GObject. Make all functions call into the vtable.
11812         Move gdk_image_put() guts in here. Remove GdkDrawableType
11813         and gdk_drawable_get_type(), these are now GdkWindow-specific.
11814         draw_image, get_depth, get_size, set_colormap, get_colormap,
11815         get_visual added to the vtable.
11816         
11817         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
11818         GObject. Virtualize everything. 
11819         (gdk_gc_new_with_values): remove check for destroyed window,
11820         because now GdkWindow::create_gc will check this.
11821         (gdk_gc_set_values): New function to set GC values, this 
11822         was already implemented but wasn't in the header
11823
11824         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
11825
11826         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
11827         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
11828         remove _gdk_window_class; add _gdk_window_impl_get_type() and
11829         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
11830         _gdk_windowing_window_init, rename gdk_image_init to
11831         _gdk_windowing_image_init.
11832         
11833         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
11834         (gdk_draw_layout): Remove check for destroyed window, 
11835         because all the drawable methods already check it.
11836         
11837         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
11838         Add gdkpixmap.c which contains implementation of GdkDrawable
11839         virtual table (by chaining to a platform-specific implementation
11840         object).
11841         
11842         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
11843         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
11844         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
11845         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
11846         GdkColormapPrivate. 
11847
11848         * gdk/gdktypes.h: #include <glib-object.h>
11849
11850         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
11851         Move most functionality to platform-specific implementation
11852         object. GdkWindow itself now handles the backing store, then
11853         chains to the platform-specific implementation.
11854         (gdk_window_get_window_type): return GdkWindowType of the window.
11855         (gdk_window_peek_children): New routine, returns the children of 
11856         a GdkWindow
11857         (gdk_window_get_children): Was in X11-specific code and did 
11858         XQueryTree. Changed to simply return a copy of window->children; 
11859         so it can go in cross-platform code.
11860         
11861         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
11862
11863         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
11864         GdkColormap; just changed to use the new private data instead
11865         of casting to GdkColormapPrivate.
11866
11867         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
11868         gdk_cursor_new().
11869
11870         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
11871         (private data member in the GObject). 
11872         (xdnd_manager_source_filter): Function had broken 
11873         error handling, fix it (use gdk_error_trap_push).
11874
11875         * gdk/x11/gdkdrawable-x11.c: This file now implements
11876         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
11877         base class is purely for the convenience of the X port,
11878         and not part of the interface to cross-platform GDK.
11879
11880         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
11881         
11882         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
11883         specific to X, and returned by the create_gc virtual method
11884         of GdkDrawableImplX11. 
11885         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
11886         rather than gchar, this was also changed in the GdkGC vtable.
11887         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
11888         mask is 0, return immediately, instead of checking every flag.
11889         This is faster, and keeps us from segfaulting if values is NULL
11890         and the mask contains some nonzero flags.
11891
11892         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
11893         GdkWindow.
11894
11895         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
11896         GdkWindowPrivate is gone.
11897
11898         * gdk/x11/gdkim-x11.c: rename things that got renamed.
11899
11900         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
11901         remove the image_put stuff that got transferred to GdkDrawable.
11902         
11903         * gdk/x11/gdkinput.c: renamings
11904
11905         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
11906
11907         * gdk/x11/gdkpixmap-x11.c: GObject conversion
11908
11909         * gdk/x11/gdkprivate-x11.h: indentation fixes
11910
11911         * gdk/x11/gdkproperty-x11.c: renamings
11912
11913         * gdk/x11/gdkselection-x11.c: renamings
11914
11915         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
11916         implements the platform-specific "impl" object.
11917         Moved gdk_window_get_children to gdk/gdkwindow.c
11918
11919         * gdk/x11/gdkx.h: Remove all the private structs and private datas
11920         that no longer exist. Add declaration of GdkGCX11 object here.
11921         Fix all the macros to still work. 
11922
11923         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
11924         GdkDragContext from the boxed types since they are now GObjects.
11925
11926         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
11927         moved xthickness/ythickness into the instance. GtkStyleClass
11928         functions are now in the standard vtable for GtkStyle, so you have
11929         to create a GObject subclass to write a theme engine.
11930         (gtk_style_copy): fixed a leaked PangoFontDescription
11931         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
11932         can be the standard GObject function.
11933         
11934         * Throughout GTK:
11935         s/style->klass->[xy]thickness/style->[xy]thickness
11936         s/pango_layout_unref/g_object_unref/
11937
11938         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
11939         
11940         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
11941         accessing GDK internals.
11942
11943         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
11944         accessing GDK internals.
11945
11946 2000-06-18  Elliot Lee  <sopwith@redhat.com>
11947
11948         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
11949
11950         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
11951         problem by calculating event position relative to the trough
11952         rather than the slider.
11953         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
11954
11955         * gdk/gdkgc.h: Add GDK_NOR.
11956
11957         * configure.in, Makefile.am: Add modules top level dir
11958         * configure.in: Only use pangox library if building x11 target.
11959         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
11960
11961 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
11962
11963         * gtk/gtkcolorsel.c: Change private class member to be named
11964         private_data throughout the file.
11965
11966         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
11967         private_data to avoid clashing with keyword.
11968
11969 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
11970
11971         * gdk/gdkdnd.h: Add comment to remove warning.
11972
11973 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
11974
11975         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
11976         Byelorussian language; changed the Makefile and file names 
11977         to reflect that.
11978
11979 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
11980
11981         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
11982         rather than gdk_window_hide; this makes things work
11983         correctly if the window is programmatically hidden while
11984         iconified.
11985
11986 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
11987
11988         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
11989         cut and paste typo where wrong pixmap was being
11990         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
11991
11992 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
11993
11994         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
11995         Add helper function to compute format / bytes 
11996         relationship. Use in a couple places to fix up
11997         errors which assume 8 * format.
11998
11999         * gtk/gtkselection.c (gtk_selection_request): Use 32
12000         rather than 8 * sizeof (GdkAtom), to work correctly
12001         on Alpha.
12002
12003 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
12004
12005         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
12006         libgtk.la
12007         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
12008         versions
12009
12010         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
12011         checking macros return NULL since the function has a return value.
12012
12013 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
12014
12015         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
12016         GTK+ from building at all.
12017
12018         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
12019
12020 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
12021
12022         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
12023         gtk/Makefile.am: make it possible to configure gtk for different
12024         targets on the same platform. The library name is now 
12025         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
12026         flag. Only the x11 target compiles right now.
12027         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
12028         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
12029         * gdk/nanox/gdk*generic*: delete generic region code.
12030         * gdk/linux-fb/gdk*generic*: delete generic region code.
12031         * README.nanox: update information.
12032         
12033 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
12034
12035         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
12036         prepend not append. (Pointed out by Brett Hall.)
12037
12038 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
12039
12040         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
12041
12042 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
12043
12044         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
12045         need this later, and this makes sure that the atexit for
12046         glib gets called after that for GDK, so atexits are
12047         properly ordered for object leak checking.
12048
12049         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
12050
12051         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
12052         pango_x_shutdown_display()
12053
12054         * gtk/simple.c (main): Close window on destroy.
12055
12056 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
12057
12058         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
12059         to treat initial creation different from setting with 
12060         regards to the graphics-exposures parameter, so add a parameter
12061         indicating whether this is initial or not.
12062
12063 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
12064
12065         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
12066         to sort of work by adding an extra return_exposes arg
12067         to gdk_event_translate() - it might be better to simply
12068         deprecate the function altogether and force people to rewrite
12069         without it. gdk_window_scroll() handles most of it, and where
12070         gdk_window_scroll() doesn't work, simply redrawing more does.
12071
12072         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
12073         assertion.
12074
12075         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
12076
12077         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
12078         bunch of pretty much useless /* Print debugging info */ comments 
12079         which had drifted away from the code they were commenting.
12080
12081 2000-06-02  Havoc Pennington  <hp@pobox.com>
12082
12083         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
12084         is in working order.
12085         
12086         * gtk/testtext.c: Change to reflect anonymous mark API
12087
12088         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
12089
12090         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
12091         field, which was unused.
12092
12093         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
12094         saves some typing.
12095
12096         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
12097
12098         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
12099         flag on the insertion point and selection bound
12100
12101         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
12102         make mark-manipulation functions take a GtkTextMark* instead of a
12103         mark name.
12104         
12105         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
12106         GtkTextMarkBody; will be used to detect attempts to delete
12107         the permanent marks (insert and selection bound)
12108
12109         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
12110
12111 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
12112
12113         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
12114         flag to on.
12115
12116         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
12117         Honor DOUBLE_BUFFRED_FLAG
12118
12119         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
12120         function to set the DOUBLE_BUFFERED flag.
12121
12122         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
12123         or not exposes done on the widget should be double-buffered.
12124
12125         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
12126         to be what would be expected. (Fixes problem with a
12127         g_return_if_fail() validating a TextDirection enumeration)
12128
12129 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
12130
12131         * gtk/gtkwidget.c: Remove all references to 
12132         offscreen flag which was no longer used.
12133
12134         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
12135
12136         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
12137         for non-null label_widget->parent.
12138
12139         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
12140         which no longer was used.
12141
12142         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
12143
12144         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
12145         for null arguments.
12146
12147         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
12148         check for destroyed windows.
12149
12150 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
12151
12152         * gtk/gtkimmulticontext.c: Add a finalize method and unref
12153         the slave context there.
12154
12155         * gtk/gtkinvisible.[ch]: Make reference counting behavior
12156         identical to GtkWindow.
12157
12158 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
12159
12160         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
12161         pangox to here, so we can write them independent of rendering
12162         system, using GDK primitives.
12163
12164         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
12165         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
12166         since we have a rendering-system independent implementation in
12167         terms of draw_glyphs().
12168         
12169         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
12170         function to render a single line.
12171
12172         * gdk/x11/gdkpango.c: Move the guts of this file mostly
12173         into ../gdkpango.c, which simplifies things, since we
12174         don't have to deal with raw X gc's.
12175
12176 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
12177
12178         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
12179         get the logical attributes for a given GtkTextLine.
12180
12181 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
12182
12183         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
12184         g_locale_get_codeset() to g_get_codeset() change.
12185
12186 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
12187
12188         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
12189         descriptions.
12190
12191         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
12192         the entry.
12193
12194         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
12195         redoing (vastly simplifying) for Pango. Still needs quite
12196         a bit of work. (Size selection is currently poor. List of 
12197         predefined sizes is not a good idea, since all of these
12198         sizes won't necessarily be distinct.)
12199
12200 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
12201
12202         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
12203         CODESET results for LANG=C.
12204
12205 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
12206
12207         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
12208         which takes a stringized pango font description;
12209         ignore the older 'font' and 'fontset' declarations.
12210
12211         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
12212         field with a GdkFont derived via gdk_font_from_description(),
12213         for compatibility. (Should we just remove it entirely?
12214         Probably too much compatibility breakage, but people
12215         should be migrating to the new Pango stuff as quickly
12216         as possible.)
12217
12218 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
12219
12220         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
12221
12222 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
12223
12224         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
12225         redoing; there are some bugs in size allocation right
12226         now, the semi-existant distinction between header / day
12227         fonts was removed, but, with Pango, could actually
12228         be made functional in a nice way.
12229         
12230         * gtk/testcalender: Move calender from examples into this
12231         directory as a test program. (We really need to restrcture
12232         testgtk into a whole directory full of tests for every
12233         widget or functionality group, separated into multiple .c
12234         files.)
12235
12236 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
12237
12238         * gtk/testgtk.c (file_exists): Fix stupid typo that
12239         was keeping RC file from being loaded.
12240
12241         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
12242         RC file font code.
12243
12244 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
12245
12246         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
12247         Add function to load a GdkFont from a PangoFontDescription.
12248
12249 2000-05-29  Tor Lillqvist  <tml@iki.fi>
12250
12251         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
12252         variable should be of type GdkEventPrivate.
12253
12254 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
12255
12256         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
12257         to have any widget for the label, use a GtkLabel widget
12258         to display the text. (Based partially on a patch from
12259         Anders Carlson.)
12260
12261         (Quite a bit of code reorganization - strip 90% of the
12262         guts out of gtkaspectframe and add a single virtual
12263         func to GtkFrameClass - compute_child_allocation.)
12264
12265 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
12266
12267         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
12268         (Removed clist->row_center_offset field because caching
12269         it wasn't saving time or code, added private function
12270         _gtk_clist_create_cell_layout()).
12271
12272 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
12273
12274         * gtk/gtkaccellabel.c: Pangoized.
12275
12276         * gtk/[hv]ruler.c: Pangoized
12277
12278 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
12279
12280         * gtk/gtkfilesel.c (gtk_file_selection_init):
12281         Use gtk_clist_set_column_auto_resize() to remove need
12282         need for manual column width computations.
12283
12284 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
12285
12286         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
12287         ensuring Pango correctness, and considerably simplifying the
12288         code.
12289         
12290         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
12291
12292         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
12293         getting of numbers of lines.
12294
12295         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
12296         to the actual requested width of the lable, not to the wrap
12297         width we set.
12298
12299         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
12300
12301         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
12302           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
12303
12304         * gtk/gtktextview.c: Fix structure inheritance.
12305
12306         * gtk/gtkprogressbar.c: Pangoize.
12307
12308 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
12309
12310         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
12311         in a function.
12312
12313         * gtk/gtktextlayout.c (find_display_line_above): Fixed
12314         bug with computing line tops.
12315
12316         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
12317
12318 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12319
12320         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
12321         and y_offset coordinates to do what we need now. (The offset between
12322         buffer and layout coordinates has been reintroduced, but is a 
12323         bit different than before.)
12324
12325         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
12326         handle the adjustments ourselves, and scroll as necessary using
12327         the new gdk_window_scroll().
12328         
12329         The advantage of this is that when we are incrementally revalidating,
12330         we are essentially rearranging things around the visible portion
12331         of the screen. With the old setup, the visible portion of the
12332         screen was moved around in the layout, so scrolling and redrawing
12333         to track that caused jumping of the display. Since we now
12334         control the scrolling ourselves, we can suppress this and
12335         only redraw when things actually change.
12336
12337 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
12338
12339         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
12340         the region not just redisplay it after-all, since we store the
12341         cursors in the LineDisplay. (Ugly interactions here between
12342         GtkLayout and GtkTextBTree here.)
12343         
12344         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
12345
12346 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12347
12348         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
12349         Added function to scroll contents of a window while keeping the
12350         window constant. Works by XCopyArea or guffaw-scrolling depending
12351         on the details of how the window is set up. (guffaw-scrolling
12352         still needs to be filled in.)
12353
12354 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
12355
12356         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
12357         move the debugging that was tied to a global variable
12358         to that.
12359
12360         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
12361
12362         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
12363         validated flag, in line data instead of setting height/width to
12364         -1. This allows us to perform operations with partially invalid
12365         buffer (using the old size for invalid lines) and thus to do
12366         incremental vaidation. Keep height/width aggregates up to date
12367         when deleting text and rebalancing the tree.
12368
12369         * gtk/gtktextbtree.[ch]: Add functions validate a line
12370         (gtk_text_btree_validate_line), and to validate up
12371         to a number of pixels (gtk_text_btree_validate).
12372
12373         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
12374         that indicates that something is changed and a revalidation
12375         pass is needed. Change ::need_repaint to ::changed, and
12376         make it take old and new yranges instead of a rectangle.
12377
12378         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
12379         the line_data_destroy() function from 
12380         gtk_text_btree_add_view() to a virtual function in 
12381         GtkTextLayout
12382
12383         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
12384         since we are handling partial repaints in a different fashion
12385         now.
12386
12387         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
12388         of the selection instead of queueing a repaint on the
12389         entire widget.
12390
12391         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
12392         get_selection_bounds() down to btree, make the function
12393         in buffer a wrapper around the btree function.
12394
12395         * gtk/gtktextlayout.[ch]: Add functions to check if the
12396         layout is valid and to recompute either a range of pixels
12397         aroudn a line or a certain total number of pixels.
12398
12399         * gtk/gtktextlayout.[ch]: Cache a single line display;
12400         now that we only redraw the needed portions, the hit rate
12401         for this cache is quite high.
12402         
12403         * gtk/gtktextview.[ch]: Keep track of the first paragraph
12404         on the screen so that when re-laying-out the buffer, we can
12405         keep the same place. This requires connecting to ::value_changed
12406         on the adjustments
12407
12408         * gtk/gtktextview.[ch]: Add idle functions to revalidate
12409         the buffer after we receive an ::invalidated signal.
12410         
12411 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
12412
12413         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
12414         to max of allocation and layout size, not just to the
12415         layout size.
12416
12417         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
12418         Invalidate window so it gets redrawn properly.
12419
12420         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
12421         to mean the entire window.
12422
12423         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
12424         into public header.
12425
12426 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
12427
12428         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
12429         to get the name of a mark.
12430
12431         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
12432         to find the paragraph from a y position.
12433
12434 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
12435
12436         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
12437         nodes have width/height >= 0, not > 0.
12438
12439 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
12440
12441         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
12442         Add a size_only flag, so when we only need the size, we don't create
12443         useless appearance attributes.
12444
12445         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
12446         duplicate setting of font description.
12447
12448         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
12449
12450 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
12451
12452         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
12453         EXTRA_DIST. It does not work well when the file that
12454         everything depends on is not in the tarball.
12455
12456 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
12457
12458         * gtk/testgtk.c: Some hacks and fixes so that it basically
12459         works when not sitting in the GTK+ build tree.
12460
12461 2000-05-03  Havoc Pennington  <hp@redhat.com>
12462
12463         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12464         Properly determine the ordering of the tag root and the current
12465         line within the tree. Previous algorithm only worked if the tag
12466         root's immediate parent was the common root of both the current
12467         line and the tag root.
12468
12469 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
12470
12471         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
12472         alignment.
12473
12474         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
12475         the widget text directional dynamically.
12476
12477         * gtk/gtktextview.[ch]: Added functions to get and set default
12478         wrap mode.
12479
12480 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
12481
12482         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
12483         in cursor location computation.
12484
12485 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
12486
12487         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
12488         vadjusment values properly when layout gets smaller.
12489
12490         * gtk/gtktextview.c (need_repaint_handler): Areas being
12491         passed in are far completely inaccurate, and sometimes
12492         too small, so, for now, just queue a redraw on the
12493         whole visible region.
12494
12495 2000-04-25  Havoc Pennington  <hp@redhat.com>
12496
12497         * gtk/gtktextbtree.c (summary_destroy): new function to 
12498         destroy tag summary nodes
12499         (gtk_text_line_next_could_contain_tag): this function was 
12500         totally broken if the line passed in wasn't below the tag
12501         root. Fix it.
12502         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
12503         "wildcard" case, we have to do a linear scan. Blah.
12504         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
12505         we have to do the linear scan
12506         (tag_removed_cb): When a tag is removed from the tag table, 
12507         remove the GtkTextTagInfo node from the btree.
12508         (gtk_text_btree_spew): Implement the spew function, for 
12509         our debugging pleasure.
12510
12511 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
12512
12513         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
12514         a problem with referring to the wrong buffer.
12515
12516         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
12517
12518         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
12519         font description to gtk_style_new() - otherwise things
12520         don't work without a .gtkrc file.
12521
12522         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
12523         tags table if we create it ourself, too.
12524
12525         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
12526         it was conflicting with XKB modifiers.
12527
12528         * gtk/gtktextview.[ch]: Add simple support for 
12529         GtkIMContext.
12530
12531 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
12532
12533         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
12534         with deletion from last commit.
12535
12536 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
12537
12538         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
12539         in the context from the current locale.
12540         
12541         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
12542         context, not hardcoded value.
12543
12544         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
12545         not logical.
12546
12547 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12548
12549         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
12550         attributes - that doesn't handle partial-glyph selection
12551         properly. Instead use new pango_layout_line_get_x_ranges()
12552         functionality to draw the selection.
12553
12554         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
12555         now properly handles out-of-range coordinates.
12556
12557         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
12558
12559         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
12560         public.
12561
12562         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
12563         for paragraphs opposite to the base direction of the widget.
12564
12565         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
12566
12567         * gtk/gtktextlayout.c: Don't split segments on marks, since that
12568         causes Arabic words to reshape as you cursor through.
12569
12570         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
12571         cursor position when moving vertically with the arrow keys and
12572         scrolling with page-up/page-down. (Arrow keys save only the X,
12573         scrolling saves both X and Y.)
12574
12575         This means you can line-up / line-down or page-up / page-down
12576         without losing your place, and also that moving vertically
12577         with the cursor keys keeps the same X position, not the same
12578         character count:
12579
12580         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
12581         arrow keys move by display lines, not paragraphs.
12582
12583 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
12584
12585         * gtk/gtklayout.c: Make sure that the bin window is at least
12586         as big as the allocation. (Should we also make sure that the
12587         bin window is big enough to completely cover widget->window?)
12588
12589         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
12590         function to get the onscreen rectangle.
12591
12592         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
12593         for offsets in window coordinates.
12594
12595 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
12596
12597         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
12598         confusion.
12599
12600         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
12601         from the widget direction.
12602
12603         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
12604         Add a "direction" attribute.
12605
12606         * gtk/gtktextview.c: global s/tkxt/text_view/.
12607
12608         * gtk/testtext.c: Added long block of text in Arabic, to test out
12609         the direction attributes. (Some problems with the shaping system
12610         for arabic become obvious - like the fact the cursor splits words
12611         into unjoined pieces.)
12612
12613 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
12614
12615         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
12616
12617         * gtk/gtktextlayout.c: Fix up alignment.
12618
12619         * gtk/testtext.c: Add some tests for centering, wrapping.
12620
12621 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
12622
12623         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12624         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
12625         If we wrote GTK+-specific layout-render function this could just replace
12626         the draw_layout() operation in the vtable.
12627
12628         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
12629         pango_layout_get_cursor_pos() and use that function.
12630
12631         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
12632         is a non-static symbol.
12633
12634         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
12635         with gtk_text_btree_find_line_by_y()
12636
12637         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
12638         renderer that handles GtkTextAppearance attributes.
12639
12640         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
12641
12642           - Move the values in the style that don't affect geometry into a
12643             GtkTextAppearance structure.
12644           - Change underline to take a PangoUnderline and "font" a string
12645             representation of a font description
12646           - Add a "font_desc" attribute which takes a FontDescription structure.
12647
12648         * gtk/gtktextlayout.[ch]:
12649
12650           - Get rid of the display-line list per each line. Instead, we
12651             generate, on demand, a GtkTextLineDisplay structure which]
12652             contains a PangoLayout * and other necesary information
12653             (offsets, cursor locations) for displaying a paragraph.
12654           - Get rid of the code to wrap lines, create display chunks,
12655             etc. Instead, we just go through a paragraph and convert
12656             it into the necessary inputs to a PangoLayout.
12657           - Implement a new attribute type, GtkTextAttrAppearance. This
12658             holds a GtkTextAppearance, and is used to pass colors, 
12659             stipple, etc, through from the layout to the display without
12660             having to use lots and lots of individual attributes.
12661           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
12662             in terms of PangoLayout functions.
12663         
12664         * gtk/gtktextview.c: 
12665          
12666           - Handle passing the necessary PangoContext to the layout
12667           - Some fixups in painting to deal with the automatic backing store
12668             and offsetting of GTK+-1.4
12669           - Add a style_set handler so that the default style reacts
12670             properly to theme changes.
12671         
12672         * gtk/gtktext?*.[ch]: Random code-style fixes.
12673
12674         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
12675
12676 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
12677
12678         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
12679         in original form preparatory to Pango-ization and gdkimcontext-ization.
12680
12681 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
12682
12683         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
12684         so that we can derive from gtkimcontext in language bindings properly.
12685
12686 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
12687
12688         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
12689         Add a compose table including (almost) all the compose combinations
12690         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
12691         data in the XIM implementation.
12692
12693         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
12694         Moved functions to convert keyvalues from and to unicode here from
12695         the win32 port and made them public.
12696
12697 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12698
12699         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
12700
12701 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
12702
12703         * gtk/gtkimcontext.[ch]: Base class for new input context system
12704
12705         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
12706         the real input context implementation to be loaded from modules
12707         and switched on the fly.
12708
12709         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
12710         context that just does direct keysymbol => unicode translation.
12711
12712         * gtk/gtkentry.[ch]: Start switching editing over to using
12713         GtkInputContext. (No handling of preedit yet.)
12714
12715 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
12716
12717         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
12718         many substitutions. (klass should not be subsituted.)
12719
12720 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
12721
12722         * configure.in: Add checks for Pango
12723
12724         * configure.in docs/Makefile.am: Add test for sgml2html
12725         and allow 'make dist' without building html, but print out
12726         warnings in that case. (For making snapshots)
12727
12728         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
12729         Add Pango libraries and C flags
12730
12731         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12732         Add function (gdk_draw_layout) to draw a pango layout.
12733
12734         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
12735         for getting Pango contexts for GDK.
12736
12737         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
12738
12739         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
12740         editing.
12741
12742         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
12743         keysym => unicode translations. More languages can be added
12744         here, but real input-method support is needed.
12745
12746         * docs/Changes-1.4.txt: Added note about entry behavior.
12747         
12748         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
12749         to set the reading direction for a widget and the global direction.
12750         Add test which allows toggling the global direction. Two private
12751         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
12752
12753         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
12754           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
12755
12756         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
12757
12758         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
12759         underlining now handled by Pango.
12760
12761         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
12762         to RCStyle and Style. (Having both this and the old font name and GdkFont 
12763         is temporary.)
12764
12765         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
12766         convenience functions for creating contexts and layouts for widgets.
12767
12768         * gtk/testgtk.c: Enhance label tests with multilingual labels.
12769
12770 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
12771
12772         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
12773         titles to be active, even if they aren't visible.
12774         (gtk_clist_column_titles_passive):  Ditto.
12775
12776 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
12777
12778         * gtkmenu.c:
12779         * gtkmenu.h:
12780         * gtktypeutils.h: Spelling/grammar fixes in comments.
12781
12782 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
12783
12784         * gdk/nanox/*.h: add missing header files.
12785
12786 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
12787
12788         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
12789         send_event to TRUE.
12790         (gtk_drawing_area_size): queue a resize.
12791
12792 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
12793
12794         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
12795         the handlers, also invalidate them. bug nailed down by Karl Nelson
12796         <kenelson@ece.ucdavis.edu>.
12797
12798 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
12799
12800         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
12801         "(nil)" foundries, patch from Grigorios Magklis.
12802
12803         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
12804         on non-available fonts, based on a patch by Grigorios Magklis
12805         <maglis@cs.rochester.edu>.
12806
12807 2000-05-18  Elliot Lee  <sopwith@redhat.com>
12808
12809         * gdk/x11/gdkregion-generic.c: If a region does not have any
12810         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
12811         instead of GDK_OVERLAP_RECTANGLE_IN.
12812
12813 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
12814
12815         * gtk/gtklayout.c (gtk_layout_map): Remove references to
12816         OFFSCREEN, as it is no longer necessary.
12817
12818 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
12819
12820         * gtk/gtkcolorsel.c: Patch from David Santiago
12821         <mrcooger@cyberverse.com> to change things so that the 
12822         indicator of the active palette entry is done independently,
12823         not via the focus, since it should always be visible.
12824
12825 2000-05-17  Tor Lillqvist  <tml@iki.fi>
12826
12827         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
12828         refcount leaks as in the X11 backend.
12829
12830         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
12831         cosmetics.
12832
12833         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
12834         backend. Add _gdk_windowing_window_destroy().
12835
12836         * gtk/gtkcolorsel.c: Include correct backend-specific header.
12837         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
12838         either, but these probably do exist on nanox?)
12839         
12840         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
12841         which isn't necessarily defined by <math.h>.
12842
12843         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
12844         ancestry past GtkObject.
12845
12846         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
12847         from DLL on Win32.
12848
12849         * gtk/gtk.def: Update corresponding to recent changes.
12850
12851         * gtk/makefile.{cygwin,msc}: Updates.
12852
12853 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
12854
12855         * docs/Changes-1.4.txt: A bit of editing.
12856
12857         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
12858         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
12859         to clear the update area for the window, and clear it
12860         when hiding a window.
12861
12862         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
12863         if window destroyed.
12864
12865         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
12866
12867         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
12868         gdk_window_destroy() to the generic code, since there was a lot of 
12869         window-system-independent logic it in. Add a function:
12870         
12871          _gdk_window_destroy() 
12872
12873         to the internal API to destroy a window without unreferencing it.
12874         Add a function:
12875
12876          _gdk_windowing_window_destroy()
12877
12878         That does the windowing-system-dependent part of destroying 
12879         the window.
12880
12881 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
12882
12883         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
12884
12885 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
12886
12887         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
12888         Make gtk_widget_shape_combine_mask() keep a reference count on
12889         the pixmap since it keeps it around.
12890
12891 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
12892
12893         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
12894         leak.
12895
12896         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
12897         leak with event filters.
12898
12899 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
12900
12901         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
12902         signal handlers with the right data arguments. (Fixes
12903         some warnings when a widget was repeatedly set as a drag
12904         destination.)
12905
12906         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
12907         window so we can avoid avoid setting the DND properties on the
12908         toplevel window repeatedly.
12909
12910 2000-05-13  Tor Lillqvist  <tml@iki.fi>
12911
12912         * gdk/win32/gdkwin32.h: Define more message types missing from
12913         mingw headers.
12914
12915         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
12916         call gdk_window_destroy_notify(). It was never called. This
12917         probably meant that the GdkWindow was never freed. Thanks Owen for
12918         noticing (!).
12919
12920         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
12921         window as destroyed before calling DestroyWindow(). DestroyWindow()
12922         causes a call to the window procedure (gdk_WindowProc), which
12923         calls gdk_event_translate(), which calls
12924         gdk_window_destroy_notify(), which gets confused unless the window
12925         is set as destroyed.
12926
12927         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
12928         this function to indicate it's win32 only. Put inside #ifdef
12929         G_ENABLE_DEBUG.
12930
12931         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
12932         debugging function. (gdk_event_translate:) Add a default branch
12933         that uses the above function to print debug messages with all
12934         Windows messages symbolically.
12935
12936         * gdk/win32/gdkprivate-win32.h: Declare it, and
12937         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
12938
12939 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
12940
12941         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
12942         public header file.
12943
12944 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
12945
12946         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
12947
12948         * gtk/gtktext.c: made the adjustments no-construct args, simply
12949         provide default adjustments.
12950         (gtk_text_destroy): release adjustments.
12951
12952         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
12953         adjustment argument non-construct.
12954
12955         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
12956         instead of in finalize.
12957         (gtk_progress_get_text_from_value): 
12958         (gtk_progress_get_current_text): 
12959         (gtk_progress_set_value): 
12960         (gtk_progress_get_percentage_from_value): 
12961         (gtk_progress_get_current_percentage): 
12962         (gtk_progress_set_percentage): 
12963         (gtk_progress_configure): ensure an adjustment is present.
12964
12965 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
12966
12967         * gtk/gtkcolorsel.[hc]:
12968         * gtk/gtkcolorseldialog.[hc]:
12969         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
12970         their parent implementation, use bit fields for boolean values, don't
12971         create unused widgets, usage of glib types, braces go on their own
12972         lines, function argument alignment, #include directives etc. etc. etc..
12973
12974         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
12975
12976 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
12977
12978         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
12979
12980         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
12981         of NULL.
12982
12983         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
12984         to freed data.
12985         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
12986
12987         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
12988         to NULL when the toplevel is getting destroyed.
12989         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
12990         (gtk_menu_destroy): 
12991         (gtk_menu_init): store the information of whether we have to
12992         readd the initial child ref_count during destruction in a new
12993         GtkMenu field needs_destruction_ref_count.
12994
12995         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
12996         here, those reading: learn from my mistake! ;)
12997         in order for set_?adjustment to support a default adjustemnt if
12998         invoked with an adjustment pointer of NULL, the code read (pseudo):
12999         if (v->adjustment) unref (v->adjustment);
13000         if (!adjustment) adjustment = adjustment_new ();
13001         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
13002         now imagine the first unref to actually free the old adjustment and
13003         adjustment_new() creating a new adjustment from the very same memory
13004         portion. here, the latter comparision will unintendedly fail, and
13005         all hell breaks loose.
13006         (gtk_viewport_set_hadjustment):
13007         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
13008         after unreferencing it.
13009
13010         * gtk/gtkcontainer.[hc]: removed toplevel registration
13011         functions: gtk_container_register_toplevel(),
13012         gtk_container_unregister_toplevel() and
13013         gtk_container_get_toplevels() which had wrong semantics
13014         anyways: it didn't reference and copy the list.
13015
13016         * gtk/gtkwindow.c: we take over the container toplevel registration
13017         bussiness now. windows are registered across multiple destructions,
13018         untill they are finalized. the initial implicit reference count
13019         users are holding on windows is removed with the first destruction
13020         though.
13021         (gtk_window_init): ref & sink and set has_user_ref_count, got
13022         rid of gtk_container_register_toplevel() call. add window to
13023         toplevel_list.
13024         (gtk_window_destroy): unref the window if has_user_ref_count
13025         is still set, got rid of call to
13026         gtk_container_unregister_toplevel().
13027         (gtk_window_finalize): remove window from toplevel list.
13028         (gtk_window_list_toplevels): new function to return a newly
13029         created list with referenced toplevels.
13030         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
13031
13032         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
13033         adjustment a non-construct arg.
13034         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
13035         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
13036         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
13037
13038         * gtk/gtkrange.c: added some realized checks.
13039         (gtk_range_destroy): get rid of the h/v adjustments in the
13040         destroy handler instead of finalize. remove timer.
13041         (gtk_range_get_adjustment): demand create adjustment.
13042
13043         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
13044         we simply create them on demand now and get rid of them in
13045         the destroy handler.
13046         (gtk_viewport_destroy): get rid of the h/v adjustments in the
13047         destroy handler instead of finalize.
13048         (gtk_viewport_get_hadjustment): 
13049         (gtk_viewport_get_vadjustment): 
13050         (gtk_viewport_size_allocate): demand create h/v adjustment
13051         if required.
13052
13053         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
13054         gtk_widget_real_destroy () functionality.
13055         (gtk_widget_real_destroy): reinitialize with a new style, instead
13056         of setting widget->style to NULL.
13057
13058 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
13059
13060         * gtk/gtkcalendar.c:
13061         * gtk/gtkbutton.c: ported _get_type() implementation over to
13062         GType, either to preserve memchunks allocation facilities,
13063         or because Gtk+ 1.0 GtkTypeInfo was still being used.
13064
13065         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
13066         over. prepare for ::destroy to be emitted multiple times.
13067         removed reference tracer magic. chain into GObjectClass.shutdown()
13068         to emit ::destroy signal.
13069
13070         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
13071         fundamental.
13072
13073         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
13074         cludge.
13075
13076         * gtk/gtksocket.c:
13077         * gtk/gtkplug.c:
13078         * gtk/gtklayout.c:
13079         * gtk/gtklabel.c:
13080         * gtk/gtkargcollector.c:
13081         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
13082         not being a fundamental anymore, and to work with the new
13083         type system (nuked fundamental type varargs clutter).
13084
13085         * gtk/*.c: install finalize handlers in the GObjectClass
13086         part of the class structure.
13087         changed direct GTK_OBJECT()->klass accesses to
13088         GTK_*_GET_CLASS().
13089         changed direct object_class->type accesses to GTK_CLASS_TYPE().
13090
13091         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
13092         GType. made most of the GTK_*() type macros and Gtk* typedefs
13093         simple wrappers around macros and types provided by GType.
13094         most notably, a significant portion of the old API vanished:
13095         GTK_TYPE_MAKE(),
13096         GTK_TYPE_SEQNO(),
13097         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
13098         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
13099         GTK_TYPE_ARGS,
13100         GTK_TYPE_CALLBACK,
13101         GTK_TYPE_C_CALLBACK,
13102         GTK_TYPE_FOREIGN,
13103         GtkTypeQuery,
13104         gtk_type_query(),
13105         gtk_type_set_varargs_type(),
13106         gtk_type_get_varargs_type(),
13107         gtk_type_check_object_cast(),
13108         gtk_type_check_class_cast(),
13109         gtk_type_describe_tree(),
13110         gtk_type_describe_heritage(),
13111         gtk_type_free(),
13112         gtk_type_children_types(),
13113         gtk_type_set_chunk_alloc(),
13114         gtk_type_register_enum(),
13115         gtk_type_register_flags(),
13116         gtk_type_parent_class().
13117         replacements, where available are described in ../docs/Changes-1.4.txt.
13118         implemented compatibility functions for the remaining API.
13119
13120         * configure.in: depend on glib 1.3.1, use gobject module.
13121
13122 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
13123
13124         * TODO.xml: Various updates to current status.
13125
13126 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
13127
13128         * gtk.m4: Print out version when test succeeds.
13129
13130 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
13131
13132         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
13133         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
13134         
13135         (Original triangle color selector from Simon Budig
13136         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
13137         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
13138         Santiago <mrcooger@cyberverse.com>)
13139
13140         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
13141         out into a separate widget.
13142
13143         * gtk/testgtk.c: Add some checkbuttons for toggling palette
13144         and opacity controls.
13145
13146 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
13147
13148         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
13149         snuck in prematurely.
13150
13151 2000-05-07  Tor Lillqvist  <tml@iki.fi>
13152
13153         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
13154         had deleted a ! operator by mistake, which caused
13155         GDK_SELECTION_CLEAR events never to be generated, which caused
13156         only the first copy to the clipboard from an gtkeditable to
13157         actually cause a copy to the Windows clipboard.
13158
13159 2000-05-06  Tor Lillqvist  <tml@iki.fi>
13160
13161         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
13162         compilation, too. Current mingw gcc distributions include the
13163         necessary headers. Also the necessary IIDs are now in mingw
13164         headers/libraries, and own definitions unnecessary.
13165
13166         More hacking on OLE2 DND, still doesn't work though, and thus
13167         ifdeffed out.
13168
13169         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
13170         here, too.
13171
13172 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
13173
13174         * gdk/nanox/*: nano-X port work in progress.
13175         * gdk/simple.c: simple test for Gdk.
13176         * README.nanox: notes about the port: read this first!
13177         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
13178         with nano-X.
13179
13180 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
13181
13182         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
13183         gdk_window_clear() into common code, implement in terms of
13184         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
13185         not redirected to the backing rectangle.
13186
13187 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13188
13189         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13190         EXTRA_DIST. It does not work well when the file that
13191         everything depends on is not in the tarball.
13192
13193 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
13194
13195         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
13196         with recursion where process_updates() is called from
13197         an expose handler. (GtkTextView is highly broken in
13198         doing this, but it should work, so it is a nice test
13199         case.)
13200
13201 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13202
13203         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
13204         handle the case where updates are queued during processing of
13205         updates.
13206
13207 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13208
13209         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
13210         window is on gdk_display - use that instead of segfaulting.
13211
13212 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
13213
13214         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
13215         broken and require an empty arg, give it to them.
13216
13217 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
13218
13219         * gtk/gtklabel.h: indentation fixes.
13220
13221 2000-05-02  Tor Lillqvist  <tml@iki.fi>
13222
13223         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
13224         draw too narrow or too low arcs, they seem to fail, at least with
13225         some display drivers.
13226
13227         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
13228
13229         Large changes to the Win32 backend, partially made necessary by
13230         the changes to the backend-independent internal
13231         structures. Attempts to implement similar backing store stuff as
13232         on X11. The current (CVS) version of the Win32 backend is *not* as
13233         stable as it was before the no-flicker branch was merged. A
13234         zipfile with that version is available from
13235         http://www.gimp.org/win32/. That should be use by "production"
13236         code until this CVS version is usable. (But note, the Win32
13237         backend has never been claimed to be "production quality".)
13238
13239         * README.win32: Add the above comment about versions.
13240
13241         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
13242
13243         * gdk/gdk.def: Update.
13244
13245         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
13246         presumably be replaced by some more better mechanism as 1.4 gets
13247         closer to release shape.
13248
13249         * gdk/makefile.{cygwin,msc}: Update.
13250
13251         * gdk/win32/*.c: Correct inclusions of the backend-specific and
13252         internal headers. Change code according to changes in these. Use
13253         gdk_drawable_*, not gdk_window_* where necessary.
13254
13255         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
13256         our old DND.
13257
13258         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
13259         to interpret single characters as UTF-8. Thanks to Hans Breuer.
13260         Use correct function name in warning messages.
13261
13262         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
13263         GSourceFuncs gdk_event_prepare and gdk_event_check.
13264         (gdk_event_get_graphics_expose): Do implement, use
13265         PeekMessage. Thanks to Hans Breuer.
13266         (event_mask_string): Debugging function to print an GdkEventMask.
13267         (gdk_pointer_grab): Use it.
13268
13269         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
13270         (old) book I used claimed was Hangul actually is CJK Unified
13271         Ideographs Extension A. Also, Hangul Syllables were missing.
13272         Improve logging.
13273
13274         * gdk/win32/gdkgc-win32.c: Largish changes.
13275
13276         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
13277         g_win32_getlocale() from GLib, and not setlocale() to get current
13278         locale name.
13279
13280         * gdk/win32/gdkprivate-win32.h
13281         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
13282         gdkwin32.h, similarily as in the X11 backend.
13283
13284         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
13285         assignment was used instead of equals in if test. Thanks to Hans
13286         Breuer.
13287
13288         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
13289         the X11 version.
13290
13291         * gdk/win32/makefile.{cygwin,msc}
13292         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
13293         path to the Win32 headers that works also with the mingw compiler.
13294
13295         * gtk/gtkstyle.c: Include <string.h>.
13296
13297 2000-04-26  Havoc Pennington  <hp@redhat.com>
13298
13299         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
13300         replacing the broken gtk_label_get ()
13301
13302 2000-04-15  Havoc Pennington  <hp@pobox.com>
13303
13304         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
13305         this keeps scanner scripts from getting confused.
13306
13307         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
13308         data, rather than void
13309
13310 2000-04-15  Tor Lillqvist  <tml@iki.fi>
13311
13312         * gtk/gtkclist.c (gtk_clist_motion)
13313         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
13314         with is_hint FALSE, get x and y from the event. They used to be
13315         used uninitialised. The Win32 backend never sends motion events
13316         marked as hints. This for instance fixes the annoying file and
13317         font selector behaviour in the Win32 version.
13318
13319 2000-04-14  Tor Lillqvist  <tml@iki.fi>
13320
13321         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
13322         gtk_private_n_signals variables, they are used by some software,
13323         sigh.
13324
13325         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
13326         installation directory from the Registry, where the installer
13327         should have put it.
13328
13329 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
13330
13331         * gdk/x11/Makefile.am: Fix problem with installation directory for
13332         gdkx.h
13333
13334         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
13335         <mrcooger@cyberverse.com> so that when selecting menus with the
13336         mouse, the first item will not be selected, but when selecting
13337         with an accelerator, or navigating left-right on a menubar with
13338         the menus popped up, the first item will be selected.
13339
13340 2000-04-05  Dan Damian  <dand@dnttm.ro>
13341
13342         * configure.in: Added "ro" to ALL_LINGUAS.
13343
13344 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
13345
13346         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
13347         indentation.
13348
13349         * Makefile.am (EXTRA_DIST): Fix typo.
13350
13351         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
13352         to catch gdkconfig.h
13353
13354         * gtk/gtkitemfactory.c: Added FIXME.
13355
13356 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
13357
13358         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
13359         s/return_if_fail/return_val_if_fail/g and add a return value.
13360
13361 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13362
13363         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
13364         merge slipup.
13365
13366         * gdk/gdkinput.h: Fix missing line from merge.
13367
13368 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
13369
13370         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
13371         instead of gdkprivate.h.
13372
13373 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
13374
13375         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
13376         parent class to correctly be GtkDialogClass.
13377
13378 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
13379
13380         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
13381         toplevel windows and their immediate children by their parents,
13382         since the size of toplevel windows is out of our immediate
13383         control and we don't get any real benefit from trying to track
13384         this size for clipping.
13385
13386         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
13387         for input_only windows.
13388
13389         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
13390         to fix some hacks and make sure that we don't try to set the
13391         background of input only windows.
13392
13393 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
13394
13395         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
13396         the _really_ internal stuff, and leave gdkprivate.h for the fake private
13397         stuff that we've traditionally exposed.
13398
13399         * gdk/**.c: Use gdkinternals.h where appropriate.
13400
13401         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
13402         not include gdkprivate-x11.h, move all stuff of conceivable public
13403         interest into gdkx.h; keep all really private stuff in
13404         uninstalled header gdkprivate-x11.h.
13405
13406         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
13407         image->image_put on windows through a new function _gdk_window_draw_image()
13408         to allow us to do backing store for images. (Sort of ugly)
13409
13410         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
13411         contexts locally so that we can offset them properly when drawing 
13412         onto backing pixmaps.
13413
13414         * gdk/gdkinput.h: Reindented
13415
13416         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
13417         pixmap or color for the window, so we can properly initialize
13418         our double-buffer pixmaps, and also so that we temporarily set
13419         a background of None while scrolling.
13420
13421         * gdk/gdkregion.h: Revise region boolean operators to have an
13422         interface that is actually convenient - switch from creating new
13423         regions on every op, to "methods" that modify existing regions
13424         (A = A OP B). 3 argument forms which allow dest == src, would also
13425         be possible, but the current interfaces seem to map nicely
13426         onto what needs to be done. (There is quite a lot of region
13427         code in GDK now.)
13428
13429         * gdk/gdkregion.h: Add constructor from rectangle and a copy
13430         operator.
13431
13432         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
13433         gdkpoly-generic.h: Copy region code from Xlib, switch it over
13434         to 32 bit coordinates, modify it to be mostly GTK+ style
13435         and to have interfaces that match gdkregion.h.
13436
13437         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
13438         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
13439         create a backing pixmap and redirect all drawing to
13440         that backing pixmap until a matching gdk_window_end_paint().
13441
13442         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
13443         Create a special drawable class for GtkWindow's that 
13444         redirects the drawing to the backing pixmap as necessary
13445         and then calls the real operations in _gdk_windowing_window_class.
13446
13447         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
13448         Store invalid region for each window. Generate expose events for invalid
13449         region in an idle. This replaces both the expose compression
13450         and the redrawing queuing in GTK+. It is both more efficient and
13451         simpler than either one individually and far more so then the
13452         combination.
13453
13454         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
13455         Emulate 32 bit coordinates for windows with 16 bit coordinates
13456         by offsetting drawing, guffaw scrolling techniques and
13457         mapping/unmapping child windows as necessary.
13458
13459         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
13460         where, when invalid regions are processed, the region is stored,
13461         and if expose events come in that are detectably duplicate
13462         the processed exposes (by comparison of event serial numbers),
13463         the stored region is subtracted out of those exposes.
13464
13465         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
13466         regions newly exposed when scrolling or resizing windows.
13467         This, combined with forcing processesing of queued invalidated
13468         regions, gives nice flicker-free scrolling.
13469
13470         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
13471         invalidated regions after every scroll.
13472
13473         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
13474         emulation in GDK. Its, for all practical purposes just a
13475         GtkViewport/GtkFixed hybrid now.
13476
13477         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
13478         (16-bit) structures as necessary instead of just casting.
13479
13480         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
13481         in terms of the structures from gdkregion-generic.c, using appropriate
13482         offsets from GDK to X11 coordinates. Cache clip mask and
13483         origin and ts origin locally and only flush to the server
13484         when drawing, to avoid constantly setting and resetting these
13485         values when offsetting GC's for scrolling and backing pixmaps.
13486
13487         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
13488
13489         * gtk/gtkcontainer.c: Call process_all_updates at end
13490         of resizing to reduce flicker. (Avoids having redraw
13491         lag arbitrarily behind resize under some circumstances)
13492
13493         * gtk/gtkentry.c: Remove old backing store code, and simply take
13494         advantage of the new backing store capabilities of GDK.
13495
13496         * gtk/gtkmain.c: Simple implementation of widget backing
13497         store - simply push a paint while handling each expose.
13498         (Should really be configurable widget for widget.)
13499         
13500         * gtk/gtkwidget.c: Remove all the old complicated redraw
13501         code, and simply invalidate the GDK windows from
13502         gdk_window_queue_clear(), etc. (Sigh, so much carefully
13503         debugged complexity ... gone to the winds.)
13504
13505         Remove all the code for suppressing expose events while
13506         resizes are pending; this isn't needed since the invalid
13507         areas won't be processed until after the resizes are
13508         processed, since they are in a lower priority idle.
13509
13510 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
13511
13512         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
13513         and height of dest rectangle for non-intersecting rectangles.
13514
13515 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
13516
13517         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
13518         for GdkRectangle.
13519
13520 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
13521
13522         * gdk/gdk{events,image,private,types,window}.h
13523          gdk/x11/gdkinputprivate.h: Change all coordinates
13524          from int16 to int. Also, Change width and height from
13525          unsigned to signed to avoid all the stupid C 
13526          signedness bugs.
13527
13528 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
13529
13530         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
13531         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
13532         Add some more detailed checking.
13533
13534         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
13535         New function to retrieve the depth of a drawable.
13536
13537         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
13538         field, reorder fields to save memory. 
13539
13540 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
13541
13542         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
13543         of the background image instead of scaling the background down to
13544         a line.
13545
13546         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
13547         which temporarily set slider to wrong size.
13548
13549         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
13550         queue_clear().
13551
13552 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
13553
13554 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
13555
13556         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
13557
13558 2000-03-17  Tor Lillqvist  <tml@iki.fi>
13559
13560         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
13561         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
13562
13563         * gdk/win32/gdkfont-win32.c
13564         * gdk/win32/gdkproperty-win32.c
13565         * gdk/win32/gdkselection-win32.c
13566         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
13567         now declared such.
13568
13569 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
13570
13571         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
13572
13573 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
13574
13575         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
13576         is called without trapping X errors.
13577
13578 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
13579
13580         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
13581         way into the fontset lists.
13582
13583 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
13584
13585         * gtk/gtkthemes.h: add extern "C" scope.
13586
13587 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
13588
13589         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
13590         to make appends to the list constant. (gtk-guy-990901-0.patch)
13591
13592 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
13593
13594         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
13595         for the typename hash table.
13596
13597 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
13598
13599         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
13600         to make sure we never divide by zero. 
13601         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
13602
13603 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
13604
13605         * gtk/gtkfontsel.c: Apply patch from
13606         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
13607         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
13608
13609         Also, some cleanups in atom handling.
13610
13611 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
13612
13613         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
13614         not GtkWidget.
13615
13616 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
13617
13618         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
13619         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
13620         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
13621         more guint wrap-around bugs before going to bed.
13622
13623 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
13624
13625         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
13626         guint wrap arounds in allocation.width.
13627
13628         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
13629         process untill we fit the allocation given.
13630
13631 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
13632
13633         * gtk/gtkwidget.c:
13634         (gtk_widget_unrealize): guard widget access with ref/unref
13635         around signal emission.
13636         (gtk_widget_hide): same here, but also check its destroyed
13637         state before queueing a resize.
13638
13639 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
13640
13641         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
13642         of gtk_default_insensitive_bg as insensitive base color.
13643
13644         * gtk/gtktext.c (gtk_text_style_set): set the background color according
13645         to the widget's state.
13646         (gtk_text_realize): same here.
13647         (gtk_text_state_changed): same here.
13648         (draw_bg_rect): compare background color against base[] from
13649         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
13650
13651 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
13652
13653         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
13654         grabs are active, unless a delete event is send to the toplevel
13655         of the currently grab holding widget.
13656
13657 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
13658
13659         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
13660         debugging g_print's.
13661
13662 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
13663
13664         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
13665         ever make the scrolled-window requisition ever depend on the 
13666         visibility state of the scrollbars for the AUTOMATIC policy. 
13667         This breaks the GTK+ requisition model, and causes loops.
13668
13669 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
13670
13671         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
13672         the default font to avoid problems with XFree86-4.0 where the
13673         default charset is iso10646-1, not iso8859-1.
13674
13675 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
13676
13677         * acinclude.m4
13678         * config.guess
13679         * config.sub
13680         * ltconfig
13681         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
13682
13683         * gtk/Makefile.am: minor cosmetic consistency tweak
13684
13685 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
13686
13687         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
13688         the activate_time to 0, so that we handle a quick
13689         press/release press/release properly and don't suppress
13690         the second release. (Red Hat bug #7545)
13691
13692 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
13693
13694         * gtk/gtkctree.c (row_delete):
13695         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
13696         bugs with destruction notifier, *always* update internal
13697         structures *before* calling user code.
13698
13699 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
13700
13701         A few more fixes for bug #5487, #2051, #2677.
13702         * gtk/gtkclist.c : 
13703         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
13704         not GDK_BUTTON_PRESS.
13705         (resync_selection): resync only if selection_mode is
13706         GTK_SELECTION_EXTENDED
13707         * gtk/gtkctree.c (resync_selection): same here
13708
13709 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
13710
13711         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
13712         gdk_drag_get_selection() and gtk_menu_detach().
13713
13714         [ From Jeroen Ruigrok/Asmodai ]
13715
13716 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
13717
13718         * gtk/gtknotebook.c (gtk_notebook_size_request): 
13719         page->tab_label can be NULL.
13720
13721 2000-01-25  Havoc Pennington  <hp@pobox.com>
13722         
13723         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
13724         arg is boolean
13725
13726         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
13727
13728         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
13729
13730         * gdk/gdkproperty.c (gdk_property_get): return boolean
13731
13732         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
13733
13734         * gdk/gdkim.c (gdk_im_ready): return boolean
13735
13736         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
13737
13738         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
13739         glib clash, should fix glib)
13740
13741         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
13742         (gdk_get_show_events): return gboolean, and canonicalize 
13743         to TRUE/FALSE
13744
13745         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
13746         colormap is private
13747         (gdk_colors_alloc): gboolean whether to be contiguous
13748         (gdk_color_equal): return gboolean since we are a predicate
13749         and not a qsort() (this looks semi-wrong due to glib breakage,
13750         IMO glib should be fixed)
13751         
13752         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
13753         (gdk_get_use_xshm): return gboolean
13754         (gdk_pointer_is_grabbed): return gboolean
13755
13756         * gdk/gdk.h: Change prototypes to match all the above changes,
13757         and re-run egtk-format-protos as required.
13758
13759 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
13760
13761         * gtk/gtkctree.c (resync_selection): 
13762         * gtk/gtkclist.c (resync_selection):
13763
13764         Return immediately if clist->drag_pos < 0. This is a workaround
13765         for the corrupt state that the clist gets into when a
13766         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
13767
13768         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
13769         
13770         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
13771         variable from recent commit.
13772
13773 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
13774
13775         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
13776
13777 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
13778
13779         * gtk/Makefile.am: prefix all autogenerated source that get build in
13780         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
13781         in builddir. since we subsequently cd into srcdir for autogeneration,
13782         the paths have to be stripped from the target file names, thusly we
13783         use $(@F) as target names now.
13784         put a comment about configure.in's --disable-rebuilds option,
13785         which can be used for non-writable source directories, for development
13786         setups though, srcdir has to be *writable*.
13787
13788 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
13789
13790         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
13791           Finish the job of allowing event to be NULL.
13792           (Fixes bug #4283, reported by Chris Blizzard)
13793
13794         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
13795           things so that the cursor appears on screen, properly
13796           take into account INNER_BORDER.
13797           (Fixes bug #4754, reported by Antonio Campos)
13798
13799 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
13800
13801         * gtk/gtknotebook.c (gtk_notebook_map): Don't
13802           show the tab_label unless it itself is visible.
13803
13804           gtk/gtknotebook.c (gtk_notebook_size_request):
13805           Do a better job of making sure that the visibility
13806           of the tab label corresponds to whether it should
13807           be mapped or not.
13808
13809 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
13810
13811         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
13812           Use the requisition, not the allocation, since the
13813           allocation has not necessarily been computed yet.
13814           (Pointed out by Eugene Osintsev)
13815
13816 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
13817
13818         * gtk/gtkstyle.c (gtk_style_new): Dont' set
13819           style/base[GTK_STATE_INSENSITIVE] both to
13820           gtk_default_insensitive_bg!
13821           (Bug #2187, reported by Jonathan Blandford)
13822
13823         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
13824           Add Alt_L, Alt_R to list of invalid accelerators.
13825           (Bug #3736, reported by Vlad Harchev)
13826
13827 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
13828
13829         * gtk/gtkfilesel.c (open_ref_dir): Fix several
13830         bugs which occured after an attempt to open 
13831         invalid home directory left cmpl_state->reference_dir == NULL.
13832
13833          - completion on files in home directory didn't work
13834          - completion on an empty string caused  segfault
13835
13836          (Bug #3678, reported by Steve Ratcliffe)
13837
13838         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
13839         cut and paste error that was causing scales to
13840         be incorrectly positioned.
13841         (Bug #2956,
13842          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
13843
13844 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
13845
13846         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
13847         when checking for dcgettext, if we've found we needed
13848         it for dgettext.
13849 +
13850 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
13851
13852         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13853         queue_clear on NO_WINDOW widgets during a reparent,
13854         since at that point the window and widget heirarchies
13855         are out of sync. This stops crashing in some cases
13856         (the scrolled window reparent test, for instance), and
13857         _probably_ won't cause drawing errors.
13858
13859         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
13860         test do what it was supposed to do and be robust against
13861         window closings, etc. (Bug #2443)
13862
13863 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
13864
13865         * gtk/gtkentry.c: Fix return values on mouse events.
13866         (Bug #2686, Sky <seb_sky@yahoo.com>)
13867
13868         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
13869         (pointed out by George Lebl)
13870
13871         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
13872         (From Ettore Perazzoli  <ettore@helixcode.com>)
13873  
13874 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
13875
13876         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
13877         clicks between rows or outside calender area correctly.
13878         (Patch from Damon Chaplin)
13879
13880         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
13881         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
13882           Call destroy function when overwriting existing data. 
13883           (Pointed out by Damon Chaplin)
13884
13885 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
13886
13887         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
13888           which was causing problems on various systems with Xmu.
13889           This hasn't been needed for a very long time.
13890           (Fixes #1185 3167)
13891
13892 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
13893
13894         * gdk/gdki18n.h: Include <ctype.h> when defining
13895           gdk_isw* in terms of is* as a fallback.
13896           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
13897
13898 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
13899
13900         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
13901           realize the widget when it is size allocated!
13902           (old, old bug)
13903
13904         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
13905           Removed unused call to gdk_window_get_size() that
13906           showed up when the above was fixed.
13907
13908 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
13909
13910         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
13911           fix up widget->window when the widget is a
13912           NO_WINDOW container widget.
13913
13914 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
13915
13916         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
13917           to account for the fact that feof() does _not_ 
13918           return TRUE on errors, and thus avoid infinite loops
13919           when trying to use gdk_pixmap_create_from_xpm()
13920           on unreadable values.
13921
13922 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
13923
13924         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
13925
13926 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
13927
13928         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
13929           gdk_gc_set_dashes to take gint8 instead of gchar to
13930           make it clearer that it is _not_ a NULL terminated string.
13931
13932         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
13933           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
13934           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
13935           arguments.
13936
13937 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
13938
13939         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
13940         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
13941         background size relative to our allocation, guard against small
13942         allocations, we may have not yet been size allocated.
13943
13944 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
13945
13946         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
13947         not just version == 3. We implement all 3 + most of 4 - 
13948         (we don't support matching text/plain;charset=iso-8859-1
13949         to a dest that expects text/plain). We'll still advertise
13950         3 to be safe, but any client implementing version >= 3
13951         must interoperate with 3.
13952         
13953 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13954
13955         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
13956         background and gc members, add a warning in gtk_tooltips_set_color()
13957         indicating that this function is deprecated.
13958
13959 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
13960
13961         * docs/gtkfaq.sgml: FAQ Update:
13962           - Minor cleanups (Emmanuel, me)
13963           - New questions:
13964                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
13965                 How can I retrieve the text from a GtkMenuItem? (timj)
13966                 How do I validate/limit/filter the input to a GtkEntry? (me)
13967                 Memory does not seem to be released when I free the list
13968                         nodes I've allocated (timj)
13969
13970 2000-03-07  Tor Lillqvist  <tml@iki.fi>
13971
13972         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
13973         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
13974         for which it is no use to call GetLastError onWin9x.
13975         (gdk_other_api_failed) New function, for general error
13976         reporting without calling GetLastError.
13977         (gdk_win32_api_failed) OTOH, this function always calls
13978         GetLastError. (gdk_win32_last_error_string) Remove this function,
13979         GLib has the equivalent now.
13980
13981         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
13982         call them with function name, file name and line number in the
13983         arguments.
13984
13985         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
13986         functions.
13987         
13988         * gtk/gtk.def: Add some missing entry points.
13989
13990         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
13991         gtk_paned_set_gutter_size, which don't exist any longer, as void.
13992         
13993         Fixes by Hans Breuer:
13994
13995         * gdk/makefile.msc: Update for debugging.
13996
13997         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
13998         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
13999         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
14000         in the dash_list.
14001
14002         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
14003         the x11 backend.
14004
14005         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
14006
14007         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
14008
14009 2000-03-04  Tor Lillqvist  <tml@iki.fi>
14010
14011         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
14012         just pixel value of background colour.
14013
14014         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
14015         containing code snippet previously duplicated in a couple of
14016         places.
14017         
14018         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
14019         gdk_colormap_color.
14020
14021         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
14022         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
14023         events for autorepeated Shift, Control and Alt keys. Use
14024         gdk_colormap_color.
14025
14026         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
14027         pointer is inside the window the cursor of which we are setting,
14028         call SetCursor immediately.
14029
14030         * gdk/win32/makefile.cygwin
14031         * gtk/makefile.cygwin: If we don't have the build number stamp
14032         file, use zero.
14033
14034         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14035         gtk_paned_set_gutter_size as empty.
14036
14037         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
14038         
14039 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
14040
14041         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
14042           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
14043           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
14044           docs/gtk_tut.sgml docs/gtk.texi TODO:
14045
14046           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
14047
14048 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
14049
14050         * gtk/gtkcalendar.c: Implement num_marked_dates,
14051           and don't emit mutiple day_selected signals on
14052           month_prev.
14053
14054 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
14055
14056         * docs/make-todo (lineno): let title and logo be configurable so
14057         that GNOME can use this script too.
14058
14059         * TODO.xml: added logourl and a title
14060
14061 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
14062
14063         * TODO.xml: Added some UI items, and an explanatory
14064         comment at the top of the file.
14065
14066 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
14067
14068         * TODO.xml: some updates, added abunch of new entries.
14069         a note for those fiddeling with this file, when done
14070         with it, invoke:
14071         $ ./docs/make-todo TODO.xml >/dev/null
14072         and correct output errors before comitting changes.
14073
14074 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
14075
14076         * TODO.xml: Added XML-structured TODO file.
14077         * docs/make-todo: python script to turn TODO.xml into
14078           pretty XML output. 
14079
14080 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
14081
14082         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
14083         the function to let it draw the seven dots, instead of the old,
14084         much maligned, method.
14085         (draw_dot): New function to draw a dot.
14086
14087         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
14088         to draw the handle inside the border width as opposed to outside.
14089         Use paint function instead of gdk_draw_point.
14090
14091         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
14092         to draw the handle inside the border width as opposed to outside.
14093         Use paint function instead of gdk_draw_point.
14094
14095         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
14096         Change indenting to be more GTK like.
14097
14098 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
14099
14100         * docs/gtk_tut.sgml: New section on GtkCalendar
14101         * examples/calendar: Update example code
14102
14103 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
14104
14105         * docs/gtkfaq.sgml: FAQ Update
14106
14107 2000-02-19  Anders Carlsson  <andersca@gnu.org>
14108
14109         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
14110         to prevent the scroll event to be propagated upwards.
14111
14112 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14113
14114         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
14115         OwnerGrabButtonMask from button entries for
14116         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
14117
14118         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
14119         to the event mask (which will result in button/press release
14120         being added to the event mask on Unix) so scrolling works
14121         for layouts in scroll windows.
14122
14123         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
14124
14125         Patch from Anders Carlsson  <andersca@gnu.org> to add
14126         a scroll event.
14127
14128         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
14129         scrolling to the "Test Scrolling" part of testgtk.
14130  
14131         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
14132  
14133         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
14134         it against GDK_SCROLL.
14135  
14136         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
14137         way of mouse wheel scrolling.
14138  
14139         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
14140  
14141         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
14142  
14143         * gtk/gtkmain.c: Removed previous mouse wheel hack.
14144  
14145         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
14146         gdk_event_mask_table.
14147  
14148         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
14149         GdkEventScroll handler.
14150  
14151         * gdk/gdkevents.h: Added GdkEventScroll structure.
14152  
14153 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
14154
14155         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
14156         and Anders Carlsson to change the Paned widgets so that they
14157         can be dragged from anywhere along the length. Also change
14158         the way that this is drawn to make this apparent.
14159
14160         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
14161         from George Lebl to check that option_menu->menu is present
14162         before getting history.
14163
14164 2000-02-14  Tor Lillqvist  <tml@iki.fi>
14165
14166         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
14167         before the assertion for non-NULL segment list.
14168
14169         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
14170         Seems that pattern brushes *must* be 8x8 pixels! At least on my
14171         machine, but it might be display driver dependent. Sigh, so make
14172         sure the stipple is that size. Does Windows suck or what?
14173
14174         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
14175         places.
14176
14177 2000-02-13  Havoc Pennington  <hp@pobox.com>
14178
14179         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
14180         refcount to 1
14181         (gdk_cursor_new): init refcount to 1
14182
14183         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
14184
14185 2000-02-13  Tor Lillqvist  <tml@iki.fi>
14186
14187         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
14188         so that we don't have to do unnecessary settings to the HDC.
14189
14190         * gdk/win32/gdkdrawable-win32.c
14191         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
14192         gdk_gc_predraw.
14193
14194         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
14195         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
14196         GDI paths, call WidenPath to get the outline of the stroken path,
14197         and then fill the outline (with the brush that was built from the
14198         stipple).
14199
14200         * gdk/win32/gdkgc-win32.c: Factor out common code from
14201         _gdk_win32_gc_new and gdk_win32_gc_set_values into
14202         gdk_win32_gc_values_to_win32values. Use correct colour for
14203         SetBkColor() (Until now the code actually used a random colour in
14204         the call to SetBkColor()... but that didn't show up as not many
14205         GDI APIs use the background colour. Pattern (opaque stippled)
14206         brushes do.)
14207
14208         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
14209         gdk_win32_api_failed): New functions for error logging.
14210
14211         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
14212         WIN32_API_FAILED to call them, passing function or file name and
14213         line number.
14214
14215         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
14216
14217         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
14218         GdkColor for foreground and background in GdkGCWin32Data.
14219
14220         * gdk/makefile.cygwin: Link in the resource object separately.
14221
14222         * gdk/win32/rc/gdk.rc
14223         * gtk/gtk.rc (New file)
14224         * gdk/win32/makefile.cygwin
14225         * gtk/makefile.cygwin: Update build number in DLLs automatically,
14226         as in GLib.
14227
14228 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
14229
14230         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
14231         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
14232         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
14233         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
14234         parameters given and cursor->ref_count. coding style fixups.
14235
14236         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14237         not GtkWidget.
14238         
14239         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
14240         fix up widget macros and add _GET_CLASS() variant.
14241         
14242         * gtk/*.c: some GtkType fixups.
14243
14244 2000-02-09  Tor Lillqvist  <tml@iki.fi>
14245
14246         * gdk/win32/gdkproperty-win32.c
14247         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
14248         were reversed.
14249
14250 2000-02-04  Tor Lillqvist  <tml@iki.fi>
14251
14252         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
14253         g_filename_to_utf8 to convert the font names Windows gives us from
14254         whatever is the default codepage to UTF-8.
14255         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
14256         in the other direction.
14257
14258         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
14259         error in debugging output.
14260
14261 2000-02-02  Tor Lillqvist  <tml@iki.fi>
14262
14263         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
14264         and height parameters to gdk_window_clear_area(). Not minus one.
14265
14266 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
14267
14268         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
14269         checks if the widget passed to gtk_drag_get_data() was not the
14270         dest widget.
14271
14272 2000-02-01  Tor Lillqvist  <tml@iki.fi>
14273
14274         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
14275         g_filename_from_utf8 functions (which were added a moment ago to
14276         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
14277         size buffers.
14278
14279         gtk_file_selection_get_filename returns the filename in the C
14280         runtime encoding. It calls g_filename_from_utf8, but copies the
14281         returned string to a static buffer, which is returned. I think
14282         this is better than returning the result from g_filename_from_utf8
14283         directly, which would mean all apps that use it would have to free
14284         the return value. Or should this function care about this issue at
14285         all? Maybe a new function with clearly defined semantics.
14286
14287         * gtk/gtkfilesel.h: Add comment about
14288         gtk_file_selection_get_filename returning the filename in the C
14289         runtime's encoding.
14290
14291         * README.win32
14292         * gdk/gdk.def
14293         * gdk/makefile.{cygwin,msc}
14294         * gtk/gtk.def: Updates.
14295
14296         * gdk/gdkcursor-win32.c: Initialise refcount.
14297
14298 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
14299
14300         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
14301
14302 2000-01-30  Havoc Pennington  <hp@pobox.com>
14303
14304         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
14305         destroy
14306
14307         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
14308
14309         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
14310         implemented in platform-specific code
14311
14312         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
14313
14314         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
14315         underscore in front
14316
14317         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
14318         put an underscore in front
14319
14320         * gdk/gdkcursor.c: new file, implements
14321         gdk_cursor_ref/gdk_cursor_unref
14322
14323         * gdk/gdkcursor.h: Refcount GdkCursor
14324
14325         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
14326
14327 2000-01-29  Tor Lillqvist  <tml@iki.fi>
14328
14329         * gdk/gdkwindow.h
14330         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
14331
14332 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14333
14334         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
14335         structures to properly inherit from GtkWidget not GtkBin.
14336
14337 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
14338
14339         * gtk+.spec.in: Added lib/gtk+/include/* to %files
14340         (bug #5178 - Peter Wainright)
14341         
14342         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
14343         so that it will be installed.
14344         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
14345
14346 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
14347
14348         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
14349         for the GtkStyleClass vtable const.
14350
14351         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
14352         take a const string argument like GtkTranslateFunc. This will
14353         require changes in use code.
14354
14355 2000-01-19  Tor Lillqvist  <tml@iki.fi>
14356
14357         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
14358         semantics (to mimic the X11 backend, which just calls XClearArea)
14359         is to check for zero width (and height), and in that case use the
14360         window's width minus x (height minus y). This fixes for instance
14361         some redraw problems with gtkclist, which were easily noticeable
14362         in the gtk file selection widget.
14363
14364         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
14365         windows.
14366
14367 2000-01-13  Tor Lillqvist  <tml@iki.fi>
14368
14369         * configure.in
14370         * gdk/Makefile.am
14371         * gdk/x11/Makefile.am
14372         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
14373         (bug #5177).
14374         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
14375         out later.
14376
14377 2000-01-09  Tor Lillqvist  <tml@iki.fi>
14378
14379         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
14380         WM_MOVE for iconified or invisible windows. This fixes various
14381         problems when minimising windows. Thanks to Bernd Herd.
14382
14383 2000-01-05  Tor Lillqvist  <tml@iki.fi>
14384
14385         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
14386         backend's draw_lines method, not draw_points.
14387
14388 2000-01-02  Tor Lillqvist  <tml@iki.fi>
14389
14390         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
14391         before Owen's reorganisation: Don't have queued_events and
14392         queued_tail statics in this file, but use gdk_queued_events and
14393         gdk_queued_tail. This makes exposure event compression work again.
14394
14395         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
14396         seem to be needed?
14397
14398 1999-12-30  Tor Lillqvist  <tml@iki.fi>
14399
14400         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
14401         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
14402         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
14403         doesn't do anything.
14404
14405         * gdk/gdk.def: Add gdk_xid_table_insert.
14406
14407         * gdk/win32/gdkprivate-win32.h
14408         * gdk/win32/gdkevents-win32.c
14409         * gdk/win32/gdkinput-win32.c
14410         
14411         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
14412         extension_events field in the GdkWindowWin32Data struct. Use only
14413         the extension_events field in GdkWindowPrivate. Previously one was
14414         set, and the other one tested, which broke tablet
14415         functionality. Thanks to Keishi Suenaga for pointing this out.
14416
14417 1999-12-18  Tor Lillqvist  <tml@iki.fi>
14418
14419         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
14420         When handling a single character (text length == 1), don't handle
14421         it as if it was UTF-8.
14422
14423 1999-12-11  Tor Lillqvist  <tml@iki.fi>
14424
14425         * Makefile.am: Distribute README.win32.
14426         
14427         * gdk/Makefile.am
14428         * gdk/win32/Makefile.am: Distribute Win32 files.
14429
14430         * gdk/makefile.msc: New file.
14431
14432         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
14433         after label).
14434
14435         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
14436         gdk_error_code as GDKVAR, as they are referred outside GDK.
14437
14438         * gdk/win32/makefile.msc: Update.
14439
14440         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
14441         tweaks. Check only if at least one of those Unicode subrange bits
14442         we care for is set. If no code page bits are set, guess (wildly)
14443         based on the charset.
14444
14445         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
14446
14447         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
14448         non-NULL.
14449
14450         * gtk/gtkdnd.c
14451         * gtk/gtklayout.c
14452         * gtk/gtkplug.c
14453         * gtk/gtkselection.c
14454         * gtk/gtksocket.c
14455         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
14456         appropriate. There must be a cleaner way to handle this?
14457
14458         * gtk/gtkrc.c: Must include windows.h on Win32.
14459
14460         * gtk/testgtk.c: No need to include gdkx.h.
14461
14462         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
14463
14464 1999-12-07  Tor Lillqvist  <tml@iki.fi>
14465
14466         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
14467         the rbearing is set to the same as the width, but this should be
14468         fixed.
14469
14470 1999-12-06  Tor Lillqvist  <tml@iki.fi>
14471
14472         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
14473         function. If Windows doesn't tell us what Unicode subranges a font
14474         covers, guesstimate based on the codepages it covers. This will
14475         hopefully help those Windows versions or fonts that don't give us
14476         any useful Unicode subrange information with GetTextCharsetInfo.
14477         Call this function in gdk_font_load_internal.
14478
14479         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
14480         minor changes.
14481
14482 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
14483
14484         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
14485         New function, long needed.
14486
14487 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
14488
14489         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
14490         only_if_exists argument of gdk_atom_intern to
14491         bool.
14492
14493 1999-11-25  Tor Lillqvist  <tml@iki.fi>
14494
14495         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
14496         Fix two copy&paste errors.
14497
14498         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
14499         win32 has changed.
14500
14501         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
14502         GdkWin32SingleFont struct.
14503
14504         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
14505         subranges of loaded fonts. Clear font signature first, in case
14506         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
14507         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
14508
14509         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
14510         Unoffset clip region.
14511
14512 1999-11-23  Tor Lillqvist  <tml@iki.fi>
14513
14514         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
14515         event->any.window before calling filter functions.
14516
14517 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
14518
14519         * gtk/gtkgamma.h: Adapt cast macros to standard.
14520
14521 [ Merges from 1.2 ]
14522
14523 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
14524
14525         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
14526         If translation does not include a '/', use entire
14527         translation instead of crashing.
14528
14529 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
14530
14531         * docs/gtk_tut.sgml:
14532         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
14533
14534 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
14535
14536         * gtk/gtkselection.c (gtk_target_list_remove): Use
14537         g_list_remove_link, not g_list_remove.
14538
14539         [ From Geert Bevin <gbevin@thunderstorms.org> ]
14540         
14541 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
14542
14543         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
14544         statement upon unselection (how the heck did that slip in?).
14545
14546 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
14547
14548         * gtk/gtktext.c (gtk_text_freeze): 
14549         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
14550         in frozen state (and aparently crashes). patch provided by Anders
14551         Melchiorsen <and@kampsax.dtu.dk>.
14552
14553 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
14554
14555         * fix insensitive default/focus widget activation,
14556         reported by Matt Goodall <mgg@isotek.co.uk>.
14557
14558         * gtk/gtkwindow.c (gtk_window_key_press_event): 
14559         (gtk_window_activate_default):
14560         (gtk_window_activate_focus):
14561         return handled=FALSE for actiavtion of insensitive default
14562         widgets. return handled=TRUE for activation of insensitive
14563         focus widgets. don't activate in either case.
14564
14565 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
14566
14567         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
14568         and $glib_cflags to match library order and in the
14569         theory that an old version of GLib is more likely to
14570         be in the include directory for X then vice-versa.
14571         (Bug #2776)
14572
14573 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
14574
14575         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
14576         to determine the locale for fontsets, not LC_MESSAGES;
14577         the user may want English messages with a handling
14578         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
14579         will still be broken) (Bug #2891)
14580
14581 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
14582
14583         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
14584
14585 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
14586
14587         * gtk/gtkrc.ko: Changed the Korean default fontset.
14588
14589 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
14590
14591         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
14592         where when scrolling to the left or top double exposes
14593         were done, causing major slowdowns.
14594
14595 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
14596
14597         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
14598         names to lowercase and alphanumeric, before looking
14599         them up.
14600
14601         * gtk/Makefile.am: Install codeset variant gtkrc files
14602         with normalized names.
14603
14604 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
14605
14606         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
14607         popup menus when the menu is already visible, but its parent
14608         is still hidden, (happens after tornoff window got hidden).
14609
14610 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
14611
14612         * gtk/Makefile.am (install-data-local): Fix
14613         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
14614         deleted, causing error messages on install.
14615
14616 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
14617
14618         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
14619         the handle as well, since we now sometimes ignore
14620         exposes on the handle while resizing.
14621
14622 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
14623
14624         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
14625         extra g_free introduced in one of the last one or two 
14626         commits.
14627
14628 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
14629
14630         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
14631         consistent, put each style that a gtkrc.* file creates
14632         in a unique namespace, remove old files before installing.
14633
14634 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
14635
14636         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
14637         gtk_rc_init is called multiple times. (Yes, people who
14638         do that have bugs in their code.)
14639
14640 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
14641
14642         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
14643         Remove it since it's generated by the Makefile anyway
14644
14645 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
14646
14647         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
14648         device->info.axes for core pointer.
14649
14650 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
14651
14652         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
14653         idle_id, to deal with obsolete, broken C libraries.
14654
14655 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
14656
14657         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
14658         allocation->x/y twice!
14659
14660         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
14661         consistent with gtk_vscale_pos_trough().
14662
14663 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
14664
14665         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
14666         be queueing a resize on a toplevel container between
14667         the time we show it and when we map it. So, we need
14668         to test GTK_WIDGET_VISIBLE() for toplevels, and only
14669         use GTK_WIDGET_DRAWABLE() for child windows.
14670
14671 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
14672
14673         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
14674         (fixes bug #2144)
14675
14676 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
14677
14678         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
14679         container DRAWABLE (instead of VISIBLE), so we don't queue
14680         resizes on non-toplevel containers.
14681
14682 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
14683
14684         * gtk/gtkselection.[ch]: Make the data argument
14685         const guchar *.
14686
14687 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
14688
14689         * gtk/gtkwindow.c: Try to behave sensibly if 
14690         the focus widget is the window itself. (Should
14691         we allow this at all?)
14692
14693 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14694
14695         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
14696         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
14697         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
14698         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
14699         in prototypes and implementations consistent (Tomas Ogren).
14700
14701         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
14702         before the widget is unparented (reported by damon).
14703
14704         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
14705         since we provide unsigned data anyways.
14706
14707 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
14708
14709         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
14710         the call to gtk_tooltips_layout_text() until later.
14711
14712         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
14713         Call gtk_widget_ensure_style() before using the style.
14714
14715 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
14716
14717         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
14718         for old widgets that don't propagate draws to all
14719         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
14720
14721 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
14722
14723         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
14724         for a redraw but just the widget that requested the resize.
14725
14726 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
14727
14728         * gtk/gtkcontainer.c: added new widget level method
14729         gtk_container_set_reallocate_redraws() and a GtkContainer flag
14730         reallocate_redraws : 1 to reflect the setting, exported this through
14731         the argument system as a boolean ::reallocate_redraws.
14732
14733         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
14734         on the widget because the allocation changes, do so as well for
14735         widget->parent if the parent has reallocate_redraws set to TRUE.
14736         with that containers requesting reallocation redraws get automatically
14737         redrawn if their children changed allocation (this unfortunately
14738         affects also other children that didn't change allocation, but we
14739         cannot work around that before 1.3).
14740
14741 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14742
14743         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
14744         _and_ height are >0 (not _or_).
14745
14746         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
14747         instead of gtk_container_queue_resize(), which is a core gtk internal
14748         function (must have been on crack when i queued that).
14749
14750         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
14751         we can check more reliably if we want to discard expose events.
14752         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
14753         flag.
14754         
14755         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
14756         we simply trust these events. for deciding whether to discard exposes,
14757         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
14758         
14759 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
14760
14761         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14762         queues of areas that are completely off screen.
14763
14764         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
14765         logic for handleboxes.
14766
14767         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
14768         check on width/height.
14769
14770 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
14771
14772         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
14773         we are fine with using $@ the way we do (if we actually encounter
14774         brokeness with $@ in VPATH builds because of additional path prefixes,
14775         we need to use $(@F) actually).
14776
14777 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
14778
14779         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
14780         short lived bugs, that would allow language bindings to do surgeries
14781         to our guts.
14782
14783 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
14784
14785         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
14786         where comparison was being done against an uninitialized
14787         value causing intermittant results depending on
14788         compiler flags. Also make it clearer that we aren't
14789         ever initializing the child as 0x0 (though this will
14790         be caught in gtk_widget_size_allocate())
14791
14792 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
14793
14794         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
14795         gtk_window_unset_transient_for() call after we do checks
14796         involving the old transient parent.
14797         [ From Lance Capser <lmc@cyberhighway.net> ]
14798
14799 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
14800
14801         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
14802         an empty file.
14803
14804 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
14805
14806         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
14807         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
14808
14809 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
14810
14811         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
14812         `$@' is valid only in the build dir, not after we've done 
14813         `cd $srcdir'.  Also use `test -f' instead of less portable
14814         `test -e'.
14815
14816 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
14817
14818         * gtk/gtktext.c (correct_cache_insert): Rewrite
14819          for simplicity, and hopefully correctness.
14820          (Fixes bug #1322, which was a segfault when
14821           on some insertions with the properties around
14822           the insertion set up just wrong.)
14823
14824         * gtk/gtktext.c (gtk_text_adjustment): When we receive
14825          a "changed" signal, clamp the new value to the adjustment
14826          bounds to avoid segfaulting if someone tries to change
14827          the adjustment to a bogus value. (Bug #1795)
14828
14829 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14830
14831         * gtk/gtkmain.c: Ignore unexpected destroy notifies
14832         for children, for toplevel windows handle them
14833         like delete_event.
14834
14835         * gtk/gtkplug.c: Add an unrealize handler so that
14836         we unref plug->socket_window when we are done
14837         with it.
14838
14839 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
14840
14841         * gtk/gtktext.c (clear_area): Fix stupid signedness
14842          problem that was causing background to sometimes
14843          be misaligned.
14844
14845 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
14846
14847         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
14848         
14849         * gtk/gtkmenu.c (gtk_menu_position): Make
14850          sure we never position menus with negative x, y,
14851          since gtk_widget_set_uposition() can't handle that.
14852
14853         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
14854          Modify the positioning code a bit so that we always
14855          put the top-left corner onscreen. (This is for
14856          UI reasons, gtk_menu_position() now takes care of
14857          gtk_widet_set_uposition() brokeness.)
14858
14859 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
14860
14861         * gtk/Makefile.am: fixed up things for -jx, x > 1.
14862
14863 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
14864
14865         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
14866           RC style that is passed in. The lack of the ref
14867           before was a bug. If people worked around this
14868           bug, this will introduce a slight memory leak
14869           in their code. The code should typically look like:
14870
14871             rc_style = gtk_rc_style_new ();
14872             [...]
14873             gtk_widget_modify_style (widget, rc_style);
14874             gtk_rc_style_unref (rc_style);
14875
14876         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
14877           the style if it was already set.
14878
14879         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
14880           style if it was set before.
14881
14882 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14883
14884         * gtk/testgtk.c (main): Add a check to see if we
14885           are being run from the correct directory and
14886           to quit nicely if we are not.
14887
14888         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
14889           static.
14890
14891 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
14892
14893         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
14894
14895         * gtk/gtkwindow.c:
14896         queue resizes unconditionally (gtk_widget_queue_resize will figure
14897         what to do if the window is not realized).
14898         (gtk_window_move_resize): only recenter the window
14899         for GTK_WIN_POS_CENTER_ALWAYS.
14900         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
14901         the same way as GTK_WIN_POS_CENTER.
14902
14903 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
14904
14905         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
14906         with (!(info->last_flags & GDK_HINT_POS)) instead of
14907         (!info->last_flags & GDK_HINT_POS).
14908
14909         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
14910         new_height unconditionally, because we use these values even if
14911         !default_size_changed && !hints_changed.
14912         comented the (default_size_changed || hints_changed) case with
14913         respect to resize rejects from the window manager.
14914
14915         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
14916         in the zvt condition hack, since this includes the window hints, set
14917         the hints after the handling_resize case.
14918
14919         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
14920         window is initially shown with to the geometry.
14921
14922 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
14923
14924         * gtk/gtkwindow.c (gtk_window_move_resize):
14925         s/size_changed/default_size_changed/g so i know what's
14926         really going on (frying brain on smaller flame now).
14927
14928 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
14929
14930         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
14931         we have size_changed upon handling_resize. this is a gross
14932         workaround for the broken zvt widget and should be removed in
14933         1.3 again (search for FIXME).
14934         Owen provided an accurate comment for this:
14935
14936         /* We could be here for two reasons
14937          *  1) We coincidentally got a resize while handling
14938          *     another resize.
14939          *  2) Our computation of size_changed was completely
14940          *     screwed up, probably because one of our children
14941          *     is broken. It's probably a zvt widget.
14942          *
14943          * For 1), we could just go ahead and ask for the
14944          * new size right now, but doing that for 2)
14945          * might well be fighting the user (and can even
14946          * trigger a loop). Since we really don't want to
14947          * do that, we requeue a resize in hopes that
14948          * by the time it gets handled, the child has seen
14949          * the light and is willing to go along with the
14950          * new size. (this happens for the zvt widget, since
14951          * the size_allocate() above will have stored the
14952          * requisition corresponding to the new size in the
14953          * zvt widget)
14954          *
14955          * This doesn't buy us anything for 1), but it shouldn't
14956          * hurt us too badly, since it is what would have
14957          * happened if we had gotten the configure event before
14958          * the new size had been set.
14959          */
14960
14961 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
14962
14963         * gtk/gtkrc.c: deal properly with the fact that RC
14964           style lists may include rc styles more than once.
14965
14966         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
14967           unused static function.
14968
14969         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
14970           stack of directories of RC files currently being
14971           parsed and implicitely add them to pixmap path.
14972           
14973           This fixes a bug where the directory would get
14974           appended then overwritten by pixmap_path declarations.
14975
14976           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
14977
14978         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
14979           theme's exit function. (Patch from Peter Wainwright,
14980           bug #1454)
14981
14982         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
14983           Add a destroy() handler to take care of removing
14984           group for menu item. (Fixes bug #1197)
14985
14986         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
14987           in warning message.
14988
14989 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
14990
14991         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
14992         roundtrip to figure window's width and height, since we know that
14993         anyways from widget->allocation.
14994
14995 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
14996
14997         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
14998           the hints after we request the new size.
14999
15000 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
15001
15002         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
15003           GTK_WIDGET_REALIZED() assertion - we can compute the
15004           hints before we are realized.
15005
15006         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
15007           hint changing so that we have a value of hints_changed
15008           when we decide whether to constrain the window size.
15009
15010         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
15011
15012         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
15013         change back to G_MAXINT.
15014
15015 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
15016
15017         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
15018         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
15019         contain uncluttered values.
15020         (gtk_window_compute_hints): simply assert that window is realized
15021         and that geometry_info is valid, since we rely on this anyways.
15022         (gtk_window_constrain_size): major cleanups to the code.
15023         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
15024         for the base size, instead of the minimums. use 32767 as max width
15025         and height (like in gtkwindow.c) instead of G_MAXINT.
15026
15027 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
15028
15029         * cleaned up the GtkContainer.need_resize flag handling mess, we
15030         only need to force resize requests when we were prematurely
15031         realized, or our widget tree was modified when we were temporarily
15032         hidden. handling these cases directly upon showing the window (i.e.
15033         while the GdkWindow is still unmapped) avoids the need to wait for
15034         a configure event response and therefore makes the GUI more snappier
15035         and avoids blank windows during the roundtrip.
15036
15037         * gtk/gtkwidget.c:
15038         (gtk_widget_hide): 
15039         (gtk_widget_show): don't queue resizes on toplevels, they know how
15040         to deal with matters.
15041
15042         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
15043         flag directly for not visible resize containers and spare us unecessary
15044         signal emissions.
15045
15046         * gtk/gtkwindow.c:
15047         (gtk_window_realize): if we need to enforce premature size allocation,
15048         queue a container resize so we are correctly resized later on.
15049         (gtk_window_init):
15050         (gtk_window_size_request):
15051         don't freak around with the ->need_resize flag,
15052         gtk_container_queue_resize() will care about that.
15053         (gtk_window_show):
15054         handle initial resizing issues here, we can handle matters better in
15055         this place, especially since we know that our GdkWindow is still
15056         unmapped.
15057         (gtk_window_move_resize):
15058         don't care about ->need_resize at all.
15059         handle size changes properly that occoured while we waited for a
15060         configure event.
15061
15062 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
15063
15064         * gtk/gtkwidget.c (gtk_widget_set_uposition):
15065         * gtk/gtkwindow.[hc] (gtk_window_reposition):
15066         Move the hint setting code from gtk_widget_set_uposition
15067         to here; set the hints so that we respect any previously
15068         set geometry hints.
15069
15070         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
15071         change the window hints here or move the window here,
15072         let that happen in gtk_window_move_resize().
15073
15074 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
15075
15076         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
15077         to already queued resizes (and therefore redraws) on a widget, check
15078         its anchestry as well.
15079
15080         * gtk/gtkcontainer.c:
15081         (gtk_container_queue_resize): clear resize widgets for resize
15082         containers before aborting prematurely. this is especially important
15083         for toplevels which may need imemdiate processing or their resize
15084         handler to be queued.
15085         (gtk_container_dequeue_resize_handler): added new internal function for
15086         gtkwindow.c.
15087
15088         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
15089         configure event, take possible changes in window position into account
15090         as well.
15091         if we request a new window size, queue up a resize handler that will
15092         last until the configure event response arrives.
15093         combined the ->need_resize case (initial show) with the general size
15094         (hints) changed case and added even more comments.
15095         if !auto_shrink, only revert to the old allocation if the new size
15096         is smaller than the current allocation.
15097
15098 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
15099
15100         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
15101                            gtk_window_set_geometry_hints
15102                            gtk_window_set_default_size):
15103         When hints are set, queue a resize so that the hints will
15104         be eventually reset on the toplevel.
15105
15106         * gtk/gtkwindow.c (gtk_window_show): Use
15107         gtk_window_compute_default_size(). Clear the need_resize flag
15108         on the initail map so that we don't unnecessarily trigger the
15109         resize code.
15110
15111         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
15112         into separate functions. Compare the hints we are setting
15113         with what we set last time so that we can accurately
15114         tell when we need to reset the hints.
15115
15116         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
15117         function to figure out the size from requisition
15118         and default_size.
15119
15120         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
15121         from fvwm to constrain a size to the geometry hints.
15122
15123         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
15124         to compare two sets of geometry hints.
15125
15126         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
15127         from gtk_window_set_hints(), just compute the hints,
15128         don't set them.
15129
15130         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
15131         code from gtk_window_move_resize() to separate function,
15132         rationalize a bit.
15133
15134 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
15135
15136         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
15137         structure into a new private structure.
15138
15139         * gtkrc.c: Split GtkRcStyle into public/private.
15140         In the private part, add a list of pointers to the
15141         RcStyle lists this RcStyle participates in.
15142
15143         * gtkrc.c: When a RcStyle is free, remove all
15144         lists referencing it from the 
15145         realized_style_ht hash, and free those lists.
15146         
15147         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
15148         gtk_rc_init(), since that adds the default styles
15149         to the list of parsed RC files again.
15150
15151         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
15152         
15153 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
15154
15155         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
15156         checks that ensure that a widget's allocation is at least 1 in width
15157         and height. (GNOME note: this doesn't affect old panel code anymore,
15158         because GtkSocket will request width and height of at least 1 since
15159         Fri Jul 23).
15160
15161         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
15162         allocated yet (happens if the user realizes the window prematurely),
15163         size request and allocate it.
15164         (gtk_window_size_allocate): guard against guint underflows.
15165
15166 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
15167
15168         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
15169         in gtk_built_sources, so gtk.defs gets built prior to all other
15170         sources.
15171
15172 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15173
15174         * gtk/Makefile.am:
15175         invoke indent on gtkmarshal.*. 
15176         rewrote source generation rules, use COPYING as oldest source tag for
15177         a piggyback rule to generate all sources from (don't touch it ;).
15178         major cleanups, strip spaces on build rules for GNU Make.
15179
15180         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
15181         source and target files from commandline arguments. don't invoke indent.
15182
15183 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15184
15185         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15186         notebook after switch to avoid drawing problems.
15187         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15188         
15189         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15190         show them instead. 
15191         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15192
15193 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15194
15195         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15196         notebook after switch to avoid drawing problems.
15197         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15198         
15199         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15200         show them instead. 
15201         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15202
15203 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
15204
15205         * gtk/gtkwindow.c:
15206         we use window->need_resize from configure_event now, to indicate that
15207         the gtkwindow should keep its allocation (e.g. because the user resized
15208         the window through window manager handles). resize_count is now reliably
15209         used to figure whether we got the allocation we requested from the
15210         window manager.
15211         configure events get queued as resizes now, the real stuff (size
15212         computation and allocation) now only goes on in gtk_window_move_resize().
15213         GtkWindow's requisition now contains its *real* requisition (like all
15214         other widgets), *not* taking usize into account.
15215         geometry_info->last_{width|height} is now updated from set_hints() only
15216         so it always contains the last hints we set for the window manager.
15217         made some event handlers return TRUE instead of FALSE.
15218         the overall code should be much more straight forward now, and the
15219         significant code portions are accompanied by comments now.
15220         (gtk_window_set_hints):
15221         removed requisition argument and made it
15222         fetch the requisition through gtk_widget_get_child_requisition.
15223         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
15224         does that now.
15225         (gtk_window_show):
15226         ensure that the widget is realized before calling 
15227         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
15228         ensure that we got properly size requested and allocated before
15229         realization.
15230         (gtk_window_configure_event):
15231         ignore plain window moves, or reallocate the widget tree through the
15232         resize queue otherwise.
15233         (gtk_window_move_resize):
15234         mostly rewrote this function to figure window manager hints more
15235         reliably, coalesce window moves and resizes to reduce configure events
15236         and do actuall size allocations.
15237
15238 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15239
15240         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
15241         that have a resize pending, because a redraw is already queued for them.
15242
15243         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
15244         hack to clear resize_widgets.
15245
15246         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
15247         for resize containers prior to size allocation. (this is also a bit
15248         ugly, but avoids side effects for stopped emissions and is thus more
15249         reliable).
15250         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
15251
15252         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
15253         function from gtk_tooltips_expose, as we connect to ::expose_event
15254         *and* ::draw now.
15255
15256 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15257
15258         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
15259         checks.
15260         (gtk_target_list_unref): Likewise.
15261
15262         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
15263
15264 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
15265
15266         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
15267         guard against division by zero. (Fixes bug #1339)
15268
15269 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
15270
15271         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
15272         Prevent the trivial leak of information of allowing
15273         word motion when the entry is not visible.
15274
15275 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
15276
15277         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
15278         modality to error dialog as well as confirmation dialogs.
15279         (Bug #1803, reported by Rosanna Wing Sze Yuen)
15280
15281 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15282
15283         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
15284         tree->view_lines.
15285         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
15286
15287         * gtk/Makefile.am (install-data-local): Solaris apparently
15288         has various troubles with ln -f; use rm first instead.
15289         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
15290
15291 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
15292
15293         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
15294         use `cp' followed by `rm' (the `rm' was already there).
15295
15296 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15297         
15298         * configure.in: Fix autoconf warnings about cross compilation by
15299         trying to provide sane defaults for AC_TRY_RUN.
15300         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
15301         put them into $(srcdir) when generated. Also add a dependency of
15302         gtksignal.h on gtkmarshal.h for -j builds. 
15303         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
15304
15305 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
15306
15307         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
15308         GDK_THREADS_{LEAVE,ENTER} pair.
15309         (From Paul Fisher <pnfisher@redhat.com>)
15310
15311 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
15312
15313         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
15314         width and height are always >0 (owen).
15315
15316 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
15317
15318         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
15319         change that assured that a widget's allocated with and height are
15320         always >1, since this breaks *buggy* panel code. unfortunately this
15321         back-breaks the gimp's color selector.
15322
15323         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
15324         allocation is always >0 in width and height, before sending the
15325         configure event; this is a *gross* hack to get the gimp back to work.
15326         
15327         * marked both cases with TODO-1.3
15328
15329 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
15330
15331         * gtk/gtktext.c: Don't display wrap indicators when
15332         text is not editable and word wrap is on.
15333
15334 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
15335
15336         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
15337         option menus here as they are not derived from menu shell, assure that
15338         the option menu has a menu we can add items to.
15339
15340 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
15341
15342         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
15343         width/height to (gint) before calculations and check against < 0 to
15344         avoid guint wraparounds.
15345
15346 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
15347
15348         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
15349         width and height is never zero. sanity check both dimensions against
15350         32767 and issue a warning if the allocation is greater than that.
15351
15352 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
15353
15354         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
15355         to g_main_pending() as well.
15356
15357 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
15358
15359         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
15360         call to g_main_iteration() - since that will regrab
15361         GTK+ lock to process events.
15362
15363 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
15364
15365         * gtk/gtkwindow.c
15366         - Regularize with the rest of GTK+ by making widget->requisition
15367           not reflect the set_usize()
15368         - Always recompute geometry hints, then check if they
15369           changed before sending them to the X server. The
15370           previous checks for changes would fail in a number
15371           of circumstances. 
15372
15373 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
15374
15375         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
15376
15377 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
15378
15379         * gtk/gtkdnd.c:
15380         - Code cleanups
15381         - Instantaneously update on modifier key presses
15382         - Allow cancellation of the drag with Escape.
15383
15384 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
15385
15386         * gtk/testgtk.c (create_handle_box): Set the policy
15387         to auto_shrink - otherwise the appearance is rather
15388         strange when flipping between horizontal and vertical.
15389
15390 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
15391
15392         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
15393         (gtk_window_set_default_size): don't change a value if it's < 0.
15394         queue a resize.
15395
15396 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
15397
15398         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
15399
15400 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
15401
15402         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
15403         add an extra "/" when concating "/" + filename.
15404         (From Matt Grossman <mattg@oz.net>)
15405
15406 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
15407
15408         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
15409         for fg_gc if we set it for drawing pixmap.
15410
15411 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
15412
15413         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
15414         
15415         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
15416         already set, call old engine's destroy function and
15417         unref the old engine.
15418
15419 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
15420
15421         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
15422
15423 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
15424
15425         * gtk/gtkaccelgroup.h: mark certain functions as internal.
15426
15427 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
15428
15429         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
15430         expand behaviour changed.
15431
15432         * gtk/gtklabel.c (gtk_label_set_pattern):
15433         (gtk_label_set_justify):
15434         (gtk_label_set_line_wrap):
15435         don't bother invoking queue_clear, the reallocation does
15436         that for us, always free_words so the upcoming resize will
15437         relayout the label's contents.
15438
15439 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
15440
15441         * applied argument implementation patches from Elena Devdariani
15442         <elena@cogent.ca>.
15443
15444         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
15445         ::space_style, ::relief
15446         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
15447         * gtk/gtkpreview.c: ::expand
15448         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
15449         * gtk/gtknotebook.c: ::homogeneous
15450         * gtk/gtklabel.c: ::wrap
15451         * gtk/gtklist.c: ::selection_mode
15452         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
15453         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
15454         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
15455         * gtk/gtkclist.c: ::sort_type
15456         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
15457         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
15458
15459 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
15460
15461         * gtk/gtkstyle.c: Removed ill-thought-out part of last
15462         comment.
15463
15464 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
15465
15466         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
15467         counting right when we have to attach a new style
15468         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
15469
15470         * gtk/gtkstyle.c: Documented the refcounting
15471         peculularities of gtk_style_attach.
15472
15473 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15474
15475         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
15476         window types.
15477
15478         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
15479         of GTK_TOPLEVEL for creating the window.
15480
15481 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15482
15483         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
15484         the last argument (reported by Per Winkvist).
15485         
15486 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
15487
15488         Fixes for invisible XOR lines (Frank Loemker
15489         <floemker@TechFak.Uni-Bielefeld.DE>)
15490         
15491         * gtk/gtkclist.c (gtk_clist_realize): Always use
15492         a non-zero pixel for GDK_XOR.
15493
15494         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
15495         Use GDK_INVERT instead of GDK_XOR.
15496
15497 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
15498
15499         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
15500         signals if h/voffsets differ from adjustment values.
15501         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
15502
15503 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
15504
15505         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
15506         ::selection-done emissions up to the topmost menu shell.
15507
15508 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
15509
15510         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
15511         the user data on the window before destroying it.
15512
15513         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
15514         unrealize handler to take care of destroying 
15515         notebook->panel properly. 
15516         (Bug #1198 - Morten Welinder <terra@diku.dk>)
15517
15518         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
15519         of g_new and g_realloc to stop memory leak. (Actually,
15520         we could just use g_realloc(), but I'm not 100% sure
15521         that is portable).
15522         (Bug #1196 - Morten Welinder <terra@diku.dk>)
15523
15524 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15525
15526         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
15527
15528         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15529         for fontsets.
15530
15531         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
15532         with bin/button confusion.
15533
15534 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
15535
15536         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
15537         and show how preselection of radio items is done.
15538
15539 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
15540
15541         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
15542         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
15543         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
15544         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
15545         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
15546         * gtk/gtktable.c (gtk_table_attach): 
15547         * gtk/gtklist.c (gtk_list_insert_items): 
15548         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
15549         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
15550         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
15551         * gtk/gtkbin.c (gtk_bin_add): 
15552         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
15553         * gtk/gtkfixed.c (gtk_fixed_put): 
15554         * gtk/gtklayout.c (gtk_layout_put):
15555         general fixups to container_add logic. always realize child if
15556         child->parent is realized, only map the child and queue a resize
15557         if child and child->parent are both visible.
15558
15559 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
15560
15561         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
15562         instead of gtk_container_foreach to walk and unrealize children, so
15563         composite children get also unrealized.
15564         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
15565         (gtk_widget_map): assert that the widget is visible (basic constrain).
15566         (gtk_widget_real_map): assert that the widget is realized (basic
15567         constrain).
15568
15569 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
15570
15571         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
15572
15573 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
15574
15575         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
15576         file for iso-8859-2 locales.
15577
15578         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
15579
15580 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
15581
15582         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
15583          (Pointed out by andy@rz.uni-karlsruhe.de and others).
15584          Remove some suspicious and useless lines. 
15585
15586 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
15587
15588         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
15589         width,height = 0, 0 to mean - here to edge of window,
15590         instead of -1, -1, since the former is all we support.
15591
15592 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
15593
15594         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
15595         when removing from quit_functions list.
15596
15597 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
15598
15599         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
15600
15601 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
15602
15603         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
15604          When redrawing characters on non-visible entry, use appropriate
15605          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
15606
15607 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
15608
15609         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
15610         from drag coordinates.
15611         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
15612         use drag_dest_cell.
15613
15614         * gtk/gtktree (drag_dest_cell)
15615         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
15616         (Bug #1129)
15617
15618 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
15619
15620         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
15621         translate_* fields.
15622         (gtk_item_factory_finalize): invoke translate_notify independant from
15623         translate_data.
15624         (gtk_item_factory_set_translate_func): likewise.
15625         (gtk_item_factory_destroy): only remove ifactory pointer from those
15626         widgets that belong to us (stupid me).
15627
15628 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
15629
15630         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
15631         rc_style list when lookup succeeeds.
15632
15633 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
15634
15635         * gtk/gtkctree.c (resync_selection): 
15636         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
15637         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
15638         bug.
15639
15640 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
15641
15642         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
15643         Add some missing GDK_THREADS_ENTER()/LEAVE around
15644         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
15645
15646 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
15647
15648         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
15649         rather than emit_by_name.
15650
15651         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
15652         on the widget across multiple signal emissions.
15653         (gtk_editable_delete_text): same here.
15654         (gtk_editable_class_init): set widget_class->activate_signal after
15655         editable_signals[ACTIVATE] has been created.
15656
15657 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
15658
15659         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
15660         position here prematurely -- we might not have the
15661         right ->min_position and ->max_position yet.
15662
15663 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15664
15665         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
15666         Add error traps so if the other end of the connection
15667         dies, we survive.
15668
15669         * gtk/gtkselection.c (gtk_selection_notify): Clean
15670         up properly when selection property retrieval fails.
15671         
15672         * gtk/gtkselection.c (gtk_selection_request): Correctly
15673         reject SelectionRequest notifies where the handler
15674         returns no data.
15675
15676 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15677
15678         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
15679         when we've previously highlighted.
15680
15681         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
15682         emit two "drag_leave" signals for Motif drops.
15683
15684         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
15685         back the correct status messages when dropping from
15686         Motif onto a proxy window that is rejecting the
15687         drop.
15688
15689 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
15690
15691         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
15692         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
15693         to compare two argument values. added gtk_arg_to_valueloc() to set a
15694         variable from an arg through its location (pointer).
15695
15696         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
15697         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
15698         as gfloat*, uchars are collected as guchar*, ints are collected as
15699         gint*, etc...
15700
15701 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
15702
15703         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
15704         Include <string.h> instead of <strings.h>.
15705
15706         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
15707         (actually, a lot more duplicate includes occur if
15708          you trace through the sequence of #include's)
15709         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
15710         
15711 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15712
15713         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15714         gtk-a-higuti-990322-[0-3]
15715
15716         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15717         that was causing -DX_LOCALE not to work.
15718
15719         * gtk/gtkrc.c (gtk_rc_init):
15720         X_LOCALE will never have LC_MESSAGES defined
15721
15722 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
15723
15724         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
15725         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
15726
15727         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
15728         left/right as well (gtk-michael-980726-0.patch.gz).
15729
15730         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
15731         for pointer values, use gchar instead of char. fixed uline allocation
15732         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
15733         chunks instead of G_ALLOC_ONLY.
15734         (gtk_label_size_request): always alter requisition as passed and leave
15735         widget->requisition alone.
15736         (gtk_label_set_text): allow NULL strings.
15737         (gtk_label_new): likewise.
15738
15739 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
15740
15741         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
15742
15743 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
15744
15745         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
15746         *and* mapped (i.e. drawable).
15747         (gtk_bin_expose): only send exposes to drawable children.
15748
15749         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
15750         (gtk_box_expose): only send exposes to drawable children.
15751
15752         * gtk/gtkhscale.c (gtk_hscale_draw): 
15753         * gtk/gtkvscale.c (gtk_vscale_draw):
15754         hm, this is an ugly one. we first compute the size of our trough area
15755         here (window relative) and then check intersection with the draw_area
15756         which is parent relative because we're a NO_WINDOW widget, so we need
15757         to offset the trough area by allocation.x and allocation.y before the
15758         check. (this must not be done for the background area though, since
15759         that's already computed parent relative).
15760
15761 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
15762
15763         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
15764         unrealize title buttons.
15765
15766 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
15767
15768         * gtk/gtkclist.c (gtk_clist_column_title_passive)
15769         (gtk_clist_column_title_active): 
15770         only connect/disconnect to GtkWidgetClass::event to block mouse events.
15771
15772         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
15773         zero initialize event, removed superfluous gdk_window_get_pointer call
15774
15775         * gtk/gtklist.c (gtk_list_vertical_timeout)
15776         (gtk_list_horizontal_timeout): removed superfluous
15777         gdk_window_get_pointer call
15778
15779 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15780
15781         * plugging problems reported by "Bruce Mitchener, Jr."
15782         <bruce@puremagic.com> due to a purify session.
15783
15784         * gtk/gtkstyle.c:
15785         (gtk_style_ref): 
15786         (gtk_style_unref): assert ref_count to be > 0.
15787
15788         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
15789         the requisition.
15790         (gtk_clist_set_shift): likewise.
15791
15792         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
15793         adjustments.
15794
15795         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
15796         event before sending it and set send_event to TRUE (which needs to
15797         be done for *all* synthesized events).
15798         (gtk_list_vertical_timeout): likewise.
15799
15800         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
15801         leaks.
15802
15803         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
15804         to TRUE when synthesizing events.
15805
15806 [ *** end of merges from 1.2 *** ]      
15807         
15808 1999-11-21  Tor Lillqvist  <tml@iki.fi>
15809
15810         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
15811         (or copied from gdkconfig.h.win32 on Win32, sigh).
15812
15813         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
15814
15815         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
15816
15817         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
15818
15819         * gdk/gdkconfig.h.win32: New file.
15820
15821         * gdk/win32/makefile.cygwin: Build just a static archive here.
15822
15823         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
15824         for the DLL from the static archive built above.
15825
15826         * gdk/gdk.def: Moved here from the win32 subdirectory.
15827
15828         * gdk/win32/*: Adapt for the changed private struct organisation.
15829
15830         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
15831
15832 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
15833
15834         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
15835         for wheel mice (buttons 4 and 5).
15836
15837 1999-11-18  Tor Lillqvist  <tml@iki.fi>
15838
15839         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
15840         drawables use just the pixel field in the foreground and
15841         background GdkColor of the GdkGC.
15842
15843         gdk_gc_set_{fore,back}ground() are called in the GIMP with
15844         GdkColors containing uninitialized (red,green,blue) fields, and
15845         just the pixel field filled in, and furthermore in the
15846         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
15847         It thus turns out that we really don't need to have the full
15848         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
15849         it later to have just the pixel values.
15850
15851 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
15852
15853         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
15854
15855 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
15856
15857         * docs/gtkfaq.sgml: threads example from Erik Mouw.
15858         New question on GtkLabel background colors.
15859
15860         * docs/gtk_tut.sgml:
15861           - Correct the example code callback
15862             function definitions.
15863           - Update the gtkdial example code, from Frans van Schaik.
15864           - Update setselection.c to current API.
15865
15866         * examples/Makefile examples/*/*.c: Update to code
15867         listed in tutorial.
15868
15869 1999-11-10  Tor Lillqvist  <tml@iki.fi>
15870
15871         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
15872         subrange table (from the "Developing International Software for
15873         WIndows 95 and Windows NT" book) was missing the Hangul syllable
15874         block... Get the loaded font's charset correctly.
15875
15876         (Note that this, and the other *-win32.c files, still really are
15877         the old ones, the win32 subdirectory is not ready for compilation
15878         yet after the reorg.)
15879
15880 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
15881
15882         * gtk/gtkclist.c: Fix off-by-one bug in parameter
15883         check.
15884
15885 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
15886
15887         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
15888         on results of XQueryDeviceState().
15889
15890 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
15891
15892         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
15893         we need to accesss only ->children. We need an accessor
15894         for the children.
15895
15896         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
15897         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
15898         to get rid of gdkx.h include.
15899         
15900         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
15901         and random references to 'None'.
15902
15903         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
15904         Get rid of unused #include <gdk/gdkx.h>
15905
15906         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
15907         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
15908         gdkconfig.h.
15909
15910 1999-11-08  Tor Lillqvist  <tml@iki.fi>
15911
15912         * gdk/win32/gdkdraw.c
15913         * gdk/win32/gdkfont.c
15914         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
15915         following yesterday's changes. (Unrelated to Owen's reorg.)
15916
15917 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
15918
15919         * gdk/x11/gdkinput-gxi.c: Add missing include,
15920           fix GdkWindowPrivate => GdkDrawablePrivate.
15921
15922         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
15923
15924         * gdk/x11/Makefile.am (xinput_sources): Add missing
15925         backslash to fix building with --with-xinput=none
15926
15927 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
15928
15929         Move all X specific code into the x11/ directory.
15930         Aside from shuffling things around, did the following:
15931
15932        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
15933          gdk_arg_context_* - a simple argument parsing system
15934          in the style of popt.
15935
15936        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
15937          gdk/x11/gdkprivate-x11.h:
15938          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
15939          add ->klass and ->klass_data fields. The klass_data
15940          field points to an auxilliary structure that is
15941          windowing system dependent.
15942
15943        * gdk/gdkfont.c: Make most of the measurement functions
15944          simply wrappers around gdk_text_extents().
15945
15946        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
15947          _gdk_font_strlen() function that hides the weird
15948          behavior in gtk+-1.[02] where a string is interpreted
15949          differently for 8-bit and 16-bit fonts.
15950
15951        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
15952          to store common code for synthesizing double/triple
15953          press events.
15954         
15955        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
15956          Make all the function that modify an existing GC
15957          simply wrappers around gdk_gc_set_values().
15958          
15959        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
15960          for throwing out later.
15961
15962        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
15963          GdkImagePrivate and GdkColormapPrivate to have a
15964          windowing system dependent part (GdkFontPrivateX etc.)
15965          that "derives" from the system-independent part.
15966
15967        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
15968          Got rid of the included-source-files for XInput in
15969          favor of automake conditionals. (Which didn't exist
15970          when XInput support was originally added.)
15971
15972        * gdk/gdkrgb.c: Remove the visual id from the debugging
15973          statements since that is X11 specific; print out
15974          type/depth info instead.
15975          
15976
15977 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
15978
15979         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
15980         loading duplicates of hashed fonts.
15981
15982         * gdk/gdk.c (gdk_keysym_convert_case): rename
15983         gdk_XConvertCase to gdk_keysym_convert_case, allow
15984         results to be NULL in the GTK+ style.
15985
15986         * gdk/gdkcompat.h: Started compatibility header
15987         for renames.
15988
15989 1999-11-07  Tor Lillqvist  <tml@iki.fi>
15990
15991         * gdk/win32/gdkprivate.h: New font private structures, related to
15992         fontsets.
15993
15994         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
15995         gdk_font_list_free(). On X11, will just be wrappers to
15996         XListFonts() and XFreeFontNames(). On Win32, the code previously
15997         in gtkfontsel.c is now here.
15998
15999         New function gdk_font_xlfd_create(). On X11 will get the FONT
16000         property of the font (for GDK_FONT_FONTs), or call
16001         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
16002         builds a XLFD style name from the font information in the LOGFONT
16003         struct(s).
16004
16005         New function gdk_font_xlfd_free(), which correspondingly frees the
16006         string returned by gdk_font_xlfd_create().
16007
16008         Implement fontsets on Win32. Add a function that iterates over a
16009         wide char string and calls a callback function for each substring
16010         of wide chars from the same Unicode subrange (and thus probably
16011         available in the same real font).
16012
16013         Improve the XLFD emulation a bit.
16014
16015         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
16016
16017         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
16018         Beta3, WM_IME_CHAR messages don't seem to contain the composed
16019         multi-byte char as with the Active IMM on Win9x. Oh well, handle
16020         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
16021         ImmGetCompositionStringW() to get the composed Unicode chars.
16022
16023         * gdk/win32/gdkgc.c
16024         * gdk/win32/gdkdraw.c: Changes needed because of the font private
16025         struct changes.
16026
16027         * gdk/win32/gdk.def: Add the new functions.
16028
16029 1999-11-04  Tor Lillqvist  <tml@iki.fi>
16030
16031         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
16032         get the Platform SDK to get <dimm.h>.
16033
16034         * gdk/win32/gdkevents.c: More event handling fixes and
16035         simplification. Never generate motion events with is_hint true. We
16036         used to do that on bogus grounds earlier. Windows sends
16037         WM_MOUSEMOVE messages on button events even if the mouse hasn't
16038         moved, ignore these.
16039
16040         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
16041
16042         * gdk/win32/gdkglobals.c
16043         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
16044         the TrackMouseEvent function, and use it.
16045
16046         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
16047         char before calling WideCharToMultiByte in order to get a string
16048         for the window title.
16049
16050         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
16051
16052         * gdk/win32/gdk.def: Remove obsolete functions.
16053
16054         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
16055         /nodefaultlib and /defaultlib switches.
16056
16057         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
16058
16059 1999-10-31  Tor Lillqvist  <tml@iki.fi>
16060
16061         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
16062         EuroSign).
16063
16064         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
16065         same type as GdkWChar, especially on Win32.
16066
16067         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
16068
16069         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
16070         before passing to Windows GDI for drawing etc. Convert to the
16071         system default codepage before passing to Windows as window
16072         titles.
16073
16074         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
16075         support changing input locale on the fly.
16076
16077         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
16078         on-the-fly changes. Convert incoming characters from the current
16079         codepage to Unicode (and then to a UTF-8 multi-byte string) based
16080         on the current input language. Use keysym<->Unicode mapping tables
16081         and functions borrowed from xterm sources.
16082
16083         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
16084         editions of Win9x, use the ActiveX-based Active IMM (Input Method
16085         Manager) if available. IMEs and the Active IMM are available under
16086         the disguise of Chinese, Korean and Japanese support for IE and
16087         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
16088         support is present in all editions (as long as you install it).
16089
16090         Call DispatchMessage from gdk_events_queue() (and thus
16091         gdk_WindowProc()), instead of duplicating the code in
16092         gdk_WindowProc().
16093
16094         Reworked the grab handling and propagation code, factored out
16095         duplicated code snippets into separate functions. Other cleanups,
16096         too.
16097
16098         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
16099         the <dimm.h> header describing the Active IMM.
16100
16101         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
16102         just do the same as for "single" fonts.
16103
16104         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
16105         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
16106         the new keysyms from gdkkeysyms.h.
16107
16108         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
16109         fontset, so that gtkentry uses wide characters.
16110
16111         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
16112         GTk+'s system directory "gtk+", not "gtk".
16113
16114 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
16115
16116         * docs/gtkfaq.sgml: FAQ update
16117
16118 1999-10-21  Tor Lillqvist  <tml@iki.fi>
16119
16120         * gdk/win32/gdkprivate.h: Add more font private data.
16121
16122         * gdk/win32/gdkfont.c
16123         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
16124         fonts and strings. Now works much better. You still have to
16125         have a correct font selected, though. No fontset emulation yet.
16126
16127 1999-10-19  Tor Lillqvist  <tml@iki.fi>
16128
16129         * gtk/maketypes.awk: Use G_OS_WIN32.
16130
16131         * gtk/gtk.def: Add some missing entry points. Also some non-public
16132         ones, but PyGTK porter claims to need them.
16133
16134         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
16135         built-in type generation.
16136
16137 1999-10-14  Tor Lillqvist  <tml@iki.fi>
16138
16139         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
16140         GDK_FONT_FONT fonts (which is all we have for now, we don't
16141         emulate fontsets). The X11 version uses plain XDrawString in that
16142         case, too. The string passed to gdk_draw_text_wc seems to be in
16143         fact (at least, when used by gtkentry and gtktext) either in a
16144         single-byte charset, or a DBCS. Not Unicode.
16145
16146         This fixes the problem in gtkfontsel, where even if you had
16147         selected a font with a non-Latin1 charset (windows-greek, for
16148         instance), the preview still used Latin-1 glyphs.
16149
16150         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
16151         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
16152         (gdk_font_load): Recognize the demibold etc weights, even if we
16153         don't have the corresponding constants in the headers.
16154         (gdk_font_hash_insert): Use same hash mechanism as in the X11
16155         version. Should save font resources a bit, when we don't have
16156         multiple HFONTs for the same font.
16157
16158         * gdk/win32/gdkprivate.h: Add the names field as in the X11
16159         version.
16160
16161 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
16162
16163         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
16164         X values
16165
16166 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
16167
16168         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
16169         layout support (as mentioned on
16170         http://www.jcinteractive.com/gnome-ui/software/widgets/)
16171
16172 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
16173
16174         * gtk/fnmatch.c
16175         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
16176
16177 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
16178
16179         * configure.in (ALL_LINGUAS): Added Galician (gl)
16180
16181 1999-10-05  Tor Lillqvist  <tml@iki.fi>
16182
16183         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
16184
16185         * gdk/win32/gdkcompat.c: New file, actually provide an
16186         implementation for the deprecated functions. (Just temporarily.)
16187
16188         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
16189
16190         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
16191
16192         * gdk/win32/gdk.def gtk/gtk.def: Updates.
16193
16194 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
16195
16196         * configure.in: Added "uk" to ALL_LINGUAS.
16197         
16198 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
16199
16200         * configure.in: correct checking for BeOS check
16201
16202         * gdk/gdktypes.h
16203         * gtk/fnmatch.c
16204         * gtk/gtkfilesel.c
16205         * gtk/gtkitemfactory.c
16206         * gtk/gtkmain.[ch]
16207         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
16208
16209 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16210
16211         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
16212         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
16213         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
16214         by Bulgarian). 
16215
16216 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
16217
16218         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
16219         Fix a reference to window_private->destroyed.   
16220
16221         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
16222         (ugly) setting of an internal GdkWindow member to use
16223         a _slightly_ cleaner macro.
16224
16225         * gdk/gdkprivate.h: Split GdkWindowPrivate into
16226         GdkDrawablePrivate and GdkWindowPrivate.
16227         Add extra macros for accessing GDK_DRAWABLE_ components.
16228
16229         * *.[ch]: Massive adjustments for the above, use the
16230         new macros in a lot of places.
16231
16232 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
16233
16234         * gdk/gdktypes.h: Make GdkDrawable the base type,
16235         not GdkWindow.
16236
16237 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
16238
16239         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
16240
16241 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
16242
16243         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
16244
16245 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
16246
16247         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
16248         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
16249
16250         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
16251
16252         * docs/gtk-config.1: Now autogenerated.
16253         * docs/Changes-1.4.txt: started
16254         
16255 1999-10-03  Tor Lillqvist  <tml@iki.fi>
16256
16257         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
16258         to #ifdef also here.
16259
16260         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
16261         Owen did to the X11 backend.
16262
16263         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
16264         ScrollWindowEx when blitting inside a window, it can't be correct
16265         in the general case.
16266
16267         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
16268         WM_GETMINMAXINFO is easier.
16269
16270         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
16271         depth equal to the bitspixel value, not the visual's depth.
16272
16273         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
16274         to 24 even if the bitspixel value is 32.
16275
16276         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
16277         need to check for depth==32 when bpp==32, depth will always be 24.
16278
16279 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
16280
16281         * docs/Changes-1.4.txt: Started
16282         
16283         * gtk/Makefile.am (gdk_headers): Include all the new headers.
16284
16285         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
16286         
16287         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
16288         into C file.
16289         
16290         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
16291         header to gdkinputprivate.h.
16292
16293         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
16294         unused since before 1.2.
16295
16296 1999-09-30  Tor Lillqvist  <tml@iki.fi>
16297
16298         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
16299         expand possible hex escapes in the font family (put there by
16300         logfont_to_xlfd if the font name isn't a legal XLFD font family,
16301         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
16302         On Win32, add hex escapes here, too.
16303
16304 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
16305
16306         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
16307         to #ifdef GDK_WINDOWING_X11.
16308
16309 [ Merges from gtk-1-2 ]
16310
16311 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
16312
16313         * configure.in: fixed "GNU Make" check to pass with new make version
16314         3.77.95.
16315
16316 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
16317
16318         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
16319         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
16320         AM_PATH_GTK() macros don't get confused by the -pre1.
16321
16322 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16323
16324         * configure.in (REBUILD): Change check for perl5
16325           to check explicitely for v >= 5.002. (5.001
16326           does not work with our scripts.)
16327
16328 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
16329
16330         * configure.in: evaluate $PERL for the perl version check. added
16331         --disable-rebuilds to give the user an option to completely disable
16332         any source autogeneration rules.
16333
16334 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
16335
16336         * configure.in: evaluate $ac_make when checking for GNU Make.
16337
16338 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16339
16340         * docs/Makefile.am: added generation.txt.
16341
16342         * Makefile.am: require automake 1.4, build README from README.in and
16343         INSTALL from INSTALL.in in dist-hook.
16344         
16345         * README.in:
16346         * INSTALL.in: new files to autogenerate README and INSTALL from.
16347
16348         * configure.in: figure whether we have GNU Make
16349
16350         * docs/generation.txt: minor additions/corrections.
16351
16352 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16353
16354         * docs/gtkfaq.sgml: FAQ Update
16355
16356 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16357         
16358         * configure.in: Fix autoconf warnings about cross compilation by
16359         trying to provide sane defaults for AC_TRY_RUN.
16360
16361 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
16362
16363         * ltconfig
16364         * ltmain.sh: upgrade to libtool 1.3.3
16365
16366 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
16367
16368         * INSTALL: Indicate that the --with-glib= configure
16369         time flag is unsupported.
16370
16371 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
16372
16373         * docs/generation.txt: Added a file that gives
16374         documenation about the autogeneration process for
16375         various autogenerated files.
16376         
16377 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16378
16379         * configure.in (LIBS): Look for libgmodule in the
16380         right location.
16381
16382 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
16383
16384         * docs/gtk_tut.sgml: Removed references to
16385         code examples in my directory on gtk.org as
16386         they should all be in the tutorial now.
16387
16388         * docs/gtk_tut.sgml: Added sources for dial-test
16389         and scribble-xinput programs that were previously
16390         missing.
16391
16392 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
16393
16394         * TODO: Added entry about menu keyboard navigation, removed
16395         some finished items.
16396
16397 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
16398
16399         * acinclude.m4: Standardize on func_dgettext
16400         not func_gettext, so that the checks for dgettext
16401         actually are paid attention to.
16402
16403 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
16404
16405         * configure.in (LIBS): Add $INTLLIBS into $LIBS
16406         directly, rather than repeating the checks for
16407         gettext.
16408
16409         * INSTALL: Added information about gettext and
16410         NLS support.
16411
16412         * acinclude.m4 (LIBM): Check for dgettext, not
16413         just gettext. This should hopefully fix things wrt
16414         systems with old versions of GNU gettext installed.
16415
16416 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16417
16418         * configure.in (LIBS): Look for libgmodule in the
16419         right location.
16420
16421 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16422
16423         * autogen.sh: add --enable-maintainer-mode
16424
16425         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
16426
16427 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
16428
16429         * docs/gtk-config.1.in:
16430           docs/Makefile.am:
16431           configure.in: gtk-config is now generated.
16432
16433         * docs/gtk-config.1: Removed, now generated.
16434
16435 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
16436
16437         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
16438         handle CreateNotify itself, still put out a debuging message for
16439         --gdk-debug=events. made the ReparentNotify debugging message more
16440         verbose.
16441         wrap xcoords translation for ConfigureEvents into an error trap,
16442         a destroy event may already be pending, and in that case, the
16443         actuall coordinate values are not at all critical.
16444
16445 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
16446
16447         * gdk/gdkcc.c: Stop leaking the color_hash all over
16448         the place. Simplify and improve the logic.
16449
16450 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
16451
16452         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
16453         for prototypes and function implementations consistent (reported
16454         by Tomas Ogren).
16455
16456 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
16457
16458         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
16459         send_event set in debugging output.
16460         (gdk_compress_exposures): default initialize the event so we don't
16461         operate on bogus values (namely send_event).
16462
16463 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
16464
16465         * gdk/gdkwindow.c: When we receive an unexpected
16466         destroy notify on one of our windows, don't just
16467         warn about it, also mark our windows as destroyed.
16468
16469 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
16470
16471         * gdk/gdkfont.c (gdk_font_hash_insert): Add
16472           name => font and name => fontset hashes. The 
16473           name => fontset hash is a _big_ win since we
16474           weren't previously caching fontsets at all and loading
16475           fontsets is expensive. The name => font hash
16476           is less of a win, but it does save us from doing
16477           repeated XQueryFont calls on the same font.
16478
16479         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
16480           list so we can remove font/fontset from hash.
16481
16482 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16483
16484         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
16485           and slightly confusing test. [ XInternAtom (,,TRUE)
16486           will never return None ].
16487
16488 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
16489
16490         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
16491           gdk/gdkwindow.c (gdk_window_set_hints):
16492
16493         Don't omit setting the properties if flags == 0 -
16494         there may be an existing set of properties there
16495         already. (Very old bug. Would it be better to
16496         delete the property instead?)
16497
16498         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
16499           spelling error in comment.
16500
16501 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
16502
16503         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
16504           to avoid stomping over gdk_error_warnings.
16505
16506         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
16507           as (bits_per_pixel + 7) / 8. This gives the same
16508           result as before for multiples of 8, but actually
16509           a "reasonable" value for 1bit or 4bit displays.
16510
16511 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16512
16513         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
16514         GNU Make.
16515
16516 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
16517
16518         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
16519         discarding configure events.
16520
16521 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
16522
16523         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
16524         refcount is greater than zero.
16525
16526         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
16527
16528         * gdk/gdkfont.c (gdk_font_unref): Likewise.
16529
16530         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
16531
16532         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
16533
16534 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
16535
16536         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
16537         that format 32 => sizeof(item) == 4. It really is
16538         sizeof(long).
16539
16540 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
16541
16542         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
16543         core dump at all on X IO errors, only core dump
16544         if --enable-debug for X errors.
16545
16546 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
16547
16548         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
16549         unknown window:" message. disabled ConfigureNotify discarding code,
16550         because it led to events being processed out of order.
16551
16552 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
16553
16554         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
16555
16556         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
16557         we export this function, supress error warnings and don't reset the
16558         error code in the first half of this function.
16559
16560         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
16561         code (instead of just -1) so gdk_error_trap_pop() reveals something
16562         actually informative about the error that happened.
16563
16564         * gdk/*.c:
16565         don't rely on gdk_error_code being -1 if an error occoured, but just
16566         gdk_error_code != 0.
16567
16568 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
16569
16570         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
16571         pointer *before* invoking the filter function, so we at least don't
16572         crash if a filter is removed that is currently executed. window filters
16573         *really* need to be made truely reentrant at some point.
16574
16575 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
16576
16577         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
16578         PropertyNotify debug messages.
16579
16580 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
16581         
16582         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
16583         
16584         * gdk/gdkim.c: Fix cut-and-paste errors for 
16585         x/y and PreeditAttributes/StatusAttributes.
16586
16587 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16588
16589         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
16590         G_MAXINT to 2^16 to alleviate overflow problems in
16591         various window managers.
16592
16593 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16594
16595         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16596         for fontsets.
16597
16598 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
16599
16600         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
16601         Initialize size_hints.x and size_hints.y because kwm
16602         brokenly pays attention to them.
16603         (Bug #1181 -  Lars Heete <hel@admin.de>)
16604
16605 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
16606
16607         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
16608         return value of gdk_list_visuals(). 
16609         (Bug #1193 - Morten Welinder <terra@diku.dk>)
16610
16611 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
16612
16613         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
16614         XSetIMValues to (void *) when comparing to NULL, to workaround
16615         the problem of some compilers barfing since older X headers don't
16616         have the prototype for it.
16617
16618 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
16619
16620         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
16621         for pseudocolor where colormap->colors was double
16622         allocated.
16623
16624         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
16625         color value in the hash table with the pixel filled
16626         in so when we do later hash table lookups, the color
16627         value is correct.
16628         
16629 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
16630
16631         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
16632         making the call
16633
16634 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
16635
16636         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
16637         pointed out by Morten Welinder <terra@diku.dk>.
16638
16639 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16640
16641         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16642           default filter from the list
16643
16644 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16645
16646         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16647           default filter from the list
16648
16649 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
16650
16651         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
16652
16653         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
16654         g_strdup_printf instead of calcing the length separately
16655
16656 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
16657
16658         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
16659         that we don't do in many other places. (Fixing duplicate 
16660         #include of config.h)
16661
16662         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
16663         Otherwise, #ifndef XINPUT_NONE check in the latter
16664         doesn't work. (Bug #546)
16665
16666 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
16667
16668         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
16669         "None" case insensitive.
16670
16671 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16672
16673         * gdk/gdkselection.c: 
16674         Add error traps so if the other end of the connection
16675         dies, we survive.
16676
16677 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16678
16679         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
16680         dest_xid field into two fields - one for the window
16681         to send in messages, one to indicate the last looked
16682         up window for caching purposes. This is needed, so
16683         that Leave messages get the correct window.
16684
16685 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
16686
16687         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
16688         Fix warning created by people mucking around
16689         with the gsource API.
16690
16691         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
16692         Change mapping between GIOCondition and GdkInputCondition
16693         to match the way the Linux kernel does it. This should
16694         fix problems where closed pipes were no longer signalling
16695         GDK_INPUT_READ on systems with a native poll().
16696
16697 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
16698
16699         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
16700         explicitly for the string "None" - it is in the XPM
16701         spec and some servers treat unknown colors in odd ways
16702         (like asking the user!)
16703
16704 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16705
16706         * gdk/gdkevents.c: made "->" into a "." of previous change so
16707         it compiles
16708
16709 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
16710
16711         * gdk/gdkevents.c (gdk_compress_exposures): Set the
16712         window field of the event structure before calling
16713         user filters.
16714
16715 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16716
16717         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
16718         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
16719
16720 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
16721
16722         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
16723         intermediate text property - prevents major memory
16724         leak when gdk_use_mb.
16725         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
16726
16727 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16728
16729         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16730         gtk-a-higuti-990322-[0-3]
16731
16732         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
16733         sizeof(wchar_t) != sizeof (GdkWChar)
16734
16735         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16736         that was causing -DX_LOCALE not to work.
16737
16738         * gtk/gtkrc.c (gtk_rc_init):
16739         X_LOCALE will never have LC_MESSAGES defined
16740
16741         * gdk/gdk.c (gdk_init_check):
16742         Remove --xim-preedit and --xim-status from argv properly.
16743
16744         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
16745         that the client window is present on the X server
16746         before we pass it to the input method.
16747
16748 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
16749
16750         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
16751         if --display is specified on the command line, than
16752         the drag window will not be created on that display.
16753         
16754 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
16755
16756         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
16757         lookups with only_if_exists == TRUE were inserting
16758         bogus values into the atom cache.
16759
16760 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16761
16762         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
16763         then reset it to NULL.
16764
16765         * gdk/gdkcolor.c:
16766         (gdk_colors_free): 
16767         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
16768         key for g_hash_table_remove() in both functions, this prevents us
16769         from accessing possibly uninitialized portions of a GdkColor structure
16770         where we are only interested in its pixel value.
16771
16772 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16773
16774         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16775         font hash table, if we have a GdkFontPrivate entry for this font
16776         already, simply increment its reference count, provided by Olaf Dietsche
16777         <olaf.dietsche+list.gtk@netcologne.de>.
16778
16779 1999-09-21  Tor Lillqvist  <tml@iki.fi>
16780
16781         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
16782         just to be sure.
16783
16784         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
16785         unused variables, leftovers from the X11 version.
16786
16787         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
16788
16789         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
16790         downcase fields on X11.
16791
16792 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16793         
16794         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
16795         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
16796
16797 1999-09-17  Tor Lillqvist  <tml@iki.fi>
16798
16799         * gdk/win32/gdk.def: Add gdk_threads_mutex.
16800
16801         * gtk/makefile.msc: Correct path to libintl.
16802
16803         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
16804         use of gint vs. int, and gint vs. gboolean in headers and
16805         definitions. Use GtkType for the *_get_type functions. Note that
16806         these changes preserve binary compatibility.
16807
16808         * gdk/gdk.c
16809         * gdk/win32/gdk.c
16810         * gdk/gdk.h: Fix inconsistencies: gint vs int.
16811
16812         * gtk/gtkmain.c
16813         * gtk/gtkclist.c
16814         * gtk/gtkmenufactory.c
16815         * gtk/gtknotebook.c
16816         * gtk/gtkwidget.c: Fix inconsistencies, also gint
16817         vs. gboolean.
16818
16819         * gtk/gtkcolorsel.[ch]
16820         * gtk/gtkcombo.[ch]
16821         * gtk/gtkdrawingarea.[ch]
16822         * gtk/gtkgamma.[ch]
16823         * gtk/gtkhandlebox.[ch]
16824         * gtk/gtkhpaned.[ch]
16825         * gtk/gtkhruler.[ch]
16826         * gtk/gtkplug.[ch]
16827         * gtk/gtkpreview.[ch]
16828         * gtk/gtkruler.[ch]
16829         * gtk/gtksocket.[ch]
16830         * gtk/gtkstatusbar.[ch]
16831         * gtk/gtktoolbar.[ch]
16832         * gtk/gtkvbbox.[ch]
16833         * gtk/gtkvpaned.[ch]
16834         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
16835         functions.
16836
16837         * gtk/gtkgamma.h: Fix bug, missing () in call of
16838         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
16839
16840 1999-09-14  Tor Lillqvist  <tml@iki.fi>
16841
16842         * gdk/gdkcolor.c (gdk_colormap_new)
16843         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
16844         colormap->colors was allocated twice.
16845
16846         * gdk/win32/gdk.c: Remove some unused stuff.
16847
16848         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
16849         colormap.
16850
16851         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
16852         * gtk/gtklabel.h (gtk_label_get_type)
16853         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
16854         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
16855         in a couple of places, not guint.
16856
16857 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
16858
16859         * configure.in,po/et.po: added Estonian language file
16860
16861 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
16862
16863         * configure.in,po/da.po: added Danish file
16864
16865 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
16866
16867         * docs/gtkfaq.sgml: Minor FAQ Update
16868
16869 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
16870
16871         * docs/gtkfaq.sgml: FAQ update
16872
16873 1999-08-27  Tor Lillqvist  <tml@iki.fi>
16874
16875         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
16876         way to get window contents continually refreshed while resizing. I
16877         didn't like the effects myself, so it's not on by default.
16878
16879         * gdk/win32/gdkprivate.h: New flag variable
16880         gdk_event_func_from_window_proc, FALSE by default.
16881
16882         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
16883         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
16884         are passed --gdk-event-func-from-window-proc.
16885
16886         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
16887         and we have am event_func, call it instead of enqueing the event.
16888
16889 1999-08-23  Tor Lillqvist  <tml@iki.fi>
16890
16891         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
16892         Kelley: Set expose_count in GdkEventExposes correctly.
16893
16894         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
16895         MULTIPLE_WINDOW_CLASSES).
16896
16897         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
16898         for bug in NT, apparently NT *does* draw the end pixel, too, in
16899         LineTo with a one-pixel pen, so we don't have to do it ourselves.
16900
16901 1999-08-21  Tor Lillqvist  <tml@iki.fi>
16902
16903         Improvements by Hans Breuer: 
16904
16905         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
16906
16907         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
16908         CS_?REDRAW flags as they cause lots of (late) redraws when "show
16909         window contents while dragging" is turned on. Allocate at least
16910         one unique class for every GdkWindowType. If support for single
16911         window-specific icons is ever needed (eg. Dialog specific), every
16912         such window should get its own class.
16913
16914 1999-08-19  Tor Lillqvist  <tml@iki.fi>
16915
16916         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
16917         error that caused crashes.
16918
16919 1999-08-17  Tor Lillqvist  <tml@iki.fi>
16920
16921         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
16922         window, use ScrollWindowEx, and call UpdateWindow. This prevents
16923         bugs when for instance part of the window was outside the
16924         display. Thanks to Philippe Colantoni for finding and fixing this.
16925
16926 1999-08-16  Tor Lillqvist  <tml@iki.fi>
16927
16928         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
16929         endpoint calculations which were totally wrong. (A little RTFMing
16930         helps a lot ;-)
16931
16932         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
16933         from a separate directory, not from gettext, because of licensing
16934         issues (we want to use the LGPL version).
16935
16936         * README.win32: Mention the intl from glibc vs from gettext issue.
16937
16938 1999-08-13  Tor Lillqvist  <tml@iki.fi>
16939
16940         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
16941         in the key event handling: Now AltGr chars work again. Also,
16942         now Alt-digits are passed up as well as Control-digits.
16943         Pass keypad plus and minus as normal plus and minus.
16944
16945 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16946
16947         * docs/gtkfaq.sgml: FAQ Update
16948
16949 1999-07-25  Tor Lillqvist  <tml@iki.fi>
16950
16951         * README.win32
16952         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
16953         the Wintab SDK.
16954
16955         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
16956         OK, but getting closer. Guard against bogus tilt data from Wacom
16957         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
16958         enable easier building without Wintab.
16959
16960         * gdk/win32/gdkinput.h
16961         * gdk/win32/gdkevents.c 
16962         * gdk/win32/gdkwindow.c: Minor changes related related to above.
16963         
16964         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
16965         code. As we have just one visual on Win32, no sense to have it in a
16966         table, and no need for the hash table.
16967
16968         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
16969         better on white background.
16970
16971 1999-07-21  Tor Lillqvist  <tml@iki.fi>
16972
16973         * README.win32: Update gcc build instructions. Mention gettext is
16974         GPL.
16975
16976         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
16977         supported cursor size with GetSystemMetrics.
16978
16979         * gdk/win32/gdkfont.c
16980         * gtk/gtkfontsel.c: Guard against some font weight and charset
16981         symbols being undefined (in mingw32 headers).
16982
16983         * gdk/win32/makefile.cygwin
16984         * gtk/makefile.cygwin
16985         * gtk/gtkthemes.c: No longer need to have differently named
16986         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
16987
16988 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
16989
16990         * docs/gtkfaq.sgml: Long awaited FAQ update.
16991
16992 1999-07-15  Tor Lillqvist  <tml@iki.fi>
16993
16994         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
16995         it. Obscure bit manipulation needed.
16996
16997         * gdk/win32/gdkevents.c: Logging.
16998         
16999         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
17000         style (file name include compiler name) for theme engines.
17001
17002 1999-07-13  Tor Lillqvist  <tml@iki.fi>
17003
17004         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
17005
17006         * gdk/win32/gdkevents.c: Fix long-standing bug in key
17007         events. The key.string wasn't zero-terminated, still we strdup'ed
17008         it in gdk_event_copy(). Synthesize crossing events for button
17009         events before possible propagation.
17010
17011         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
17012
17013         * gdk/win32/makefile.cygwin
17014         * gtk/makefile.cygwin: Use new DLL naming style for the
17015         GCC-compiled ones.
17016
17017         * gdk/win32/makefile.msc
17018         * gtk/makefile.msc: Cosmetics mostly.
17019
17020         * gtk/gtk.def: Add missing entry points.
17021
17022         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
17023
17024 1999-07-09  Tor Lillqvist  <tml@iki.fi>
17025
17026         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
17027         or height is zero. Don't print a warning if Pie or Arc fails, they
17028         always fail (?) for very narrow ellipses.
17029
17030         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
17031         the part or the destination window corresponding to source area
17032         outside of the source drawable's boundary.
17033
17034         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
17035         anything if less than two points.
17036
17037         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
17038         return NULL. Gtk cut-and-paste inside a single program works
17039         better this way. (It always gets the clipboard contents from
17040         Windows, not from its own copy, which is cleared anyway. I can't
17041         say I fully understand what happens... Emulating the X selection
17042         and property stuff is a bit of a mess.)
17043
17044         * gdk/win32/gdkevents.c
17045         * gdk/win32/gdkproperty.c: A bit more verbose logging.
17046
17047         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
17048         that never got deleted). Revamp gdk_region_shrink.
17049
17050         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
17051         after use.
17052
17053         * gtk/gtk.def: Add some missing entry points.
17054
17055         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
17056         component.
17057
17058 1999-07-04  Tor Lillqvist  <tml@iki.fi>
17059
17060         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
17061         Control-digits specially.
17062
17063 1999-07-03  Tor Lillqvist  <tml@iki.fi>
17064
17065         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
17066
17067 1999-06-28  Tor Lillqvist  <tml@iki.fi>
17068
17069         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
17070         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
17071         finding this.)
17072
17073 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
17074
17075         * gtk+.spec.in: Corrected some typos in files section.
17076         
17077 1999-06-15  Tor Lillqvist  <tml@iki.fi>
17078
17079         * README.win32: Mention using GNU gettext.
17080         * config.h.win32: Enable NLS stuff.
17081         * gtk/makefile.msc: Use GNU gettext.
17082         * gdk/win32/gdkdnd.c: Minor header reorg.
17083         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
17084         cosmetics.
17085         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
17086         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
17087
17088 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
17089
17090         * acinclude.m4
17091         * config.guess
17092         * config.status
17093         * ltconfig
17094         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
17095
17096 1999-05-30  Tor Lillqvist  <tml@iki.fi>
17097
17098         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
17099         SafeAdjustWindowRectEx. Don't override all calls to
17100         AdjustWindowRectEx by it, but use it only in two places: When
17101         creating a new top-level window and when moving a top-level
17102         window.
17103
17104         Use screen coordinate rectangle, not client rectangle, in
17105         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
17106         when we try to place a window so that the decoration (mainly,
17107         title bar) isn't visible.
17108
17109         These changes fix the bug that showed up for instance as the
17110         GIMP's saved top-level windows moving right and down (by an amount
17111         equal to the window decoration) for each session. This bug showed
17112         up also in testgtk's "Saved Position".
17113
17114         gdk_window_resize also redone a bit.
17115
17116 1999-05-25  Tor Lillqvist  <tml@iki.fi>
17117
17118         * gtk/testgtkrc: Add (commented out) Windows-style theme
17119         include line.
17120
17121         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
17122
17123 1999-05-18  Tor Lillqvist  <tml@iki.fi>
17124
17125         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
17126         gdkx.h to a gdk subdirectory, so that applications can include
17127         these with <gdk/*.h> without trouble.
17128
17129         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
17130         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
17131         have their bitmap destroyed.
17132
17133         * gdk/win32/gdk.def: Add gdk_root_parent.
17134
17135 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
17136
17137         * configure.in
17138           gtk-config.in
17139           ltconfig
17140           ltmain.sh     
17141           gtk/Makefile.am: changes to compile nicely (with xlib) 
17142           on BeOS
17143
17144 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
17145
17146         * acinclude.m4
17147         * config.guess
17148         * config.sub
17149         * ltconfig
17150         * ltmain.sh: upgrade to libtool 1.3
17151
17152 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
17153
17154         * gtk/gtkclist.c:
17155         * gtk/gtkctree.c: merges from gtk-1-2
17156
17157 1999-04-25  Tor Lillqvist  <tml@iki.fi>
17158
17159         Support added for building using a GNU toolchain on Win32,
17160         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
17161
17162         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
17163         * config.h.win32: Changes for gcc.
17164         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
17165         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
17166         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
17167         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
17168         Protect shl stuff unavaiilable with mingw32 headers.
17169         * gdk/win32/gdkevents.c: Fix typo.
17170         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
17171         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
17172         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
17173         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
17174         the mingw32 headers.
17175         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
17176         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
17177         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
17178         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
17179         Test for NATIVE_WIN32, not _MSC_VER.
17180         * gtk/gtkmain.c: No use warning about developer version on Win32,
17181         there aren't any non-developer versions anyhow.
17182         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
17183         * gtk/makefile.msc: Use pthread from another directory. Minor other
17184         changes. 
17185
17186 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17187
17188         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17189           default filter from the list
17190
17191 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
17192
17193         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
17194          when gtk_widget_grab_default() is called for a widget that
17195          is not within a GtkWindow.
17196
17197 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
17198
17199         * docs/gtk_tut.sgml, examples/clist.c: use a
17200           scrolled window in the clist example. Minor
17201           tutorial fixes.
17202
17203 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
17204
17205         * docs/gtk_tut.sgml: Style check from David King
17206           <dking@youvegotmail.net>
17207
17208 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
17209
17210         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
17211         compile with unknown value of GDK_WINDOWING
17212
17213 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
17214
17215         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
17216         after the rule is fired.
17217         (install-exec-local): Install gdkconfig.h only if the contents are
17218         different from the currently installed gdkconfig.h.
17219
17220 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
17221
17222         * gdk/Makefile.am (configexecincludedir): Rename from 
17223         configincludedir so that gdkconfig.h will be installed 
17224         as part of `make install-exec'. 
17225
17226 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
17227
17228         * acinclude.m4
17229         * config.guess
17230         * config.sub
17231         * ltconfig
17232         * ltmain.sh: upgrade to libtool 1.2f
17233
17234         * autogen.sh: libtool is not required to autogen gtk+
17235
17236         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
17237         needed)
17238
17239 1999-03-18  Tor Lillqvist  <tml@iki.fi>
17240
17241         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
17242         declaring gdk variables exported/imported from the DLL. New image
17243         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
17244         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
17245         GDK_DRAG_PROTO_OLE2.
17246
17247         * gdk/gdk.h: Merge in Win32 version: Two new functions,
17248         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
17249         declared only for the Win32 version, but could be in the X11
17250         version as well. (Needed for a Xlib-less gdk_imlib.)
17251         gdk_color_hash should have only one parameter. Declare
17252         gdk_threads_mutex with GDKVAR.
17253         
17254         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
17255         just one parameter.
17256
17257         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
17258         per pixel, not bits.
17259
17260         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
17261         Fetch bpp (which means bits-per-pixel here) from another place on
17262         Win32. Accept also depth==32 (which we might get on Win32) with
17263         bpp==32.
17264
17265         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
17266         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
17267         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
17268         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
17269         in the backend-dependent directory, not in the common gdk
17270         directory.
17271
17272         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
17273         headers.
17274
17275 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
17276
17277         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
17278         want to use the Gtk+ devel version (which is true, and yes - even i am
17279         currently working with the 1.2.x branch). so everyone reading this, you
17280         probably want to issue
17281         cvs checkout -r glib-1-2 glib
17282         and
17283         cvs checkout -r gtk-1-2 gtk+
17284         as your next two comands.
17285
17286 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
17287
17288         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
17289         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
17290
17291         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
17292         file. strongly deprecated the GTK_HAVE_* macros, we provide
17293         GTK_CHECK_VERSION() for people that need to check for certain
17294         Gtk+ versions.
17295
17296         * gtk/gtkcompat.h: removed this from CVS.
17297         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
17298         idea right from the start, it just didn't seem like that back then.
17299
17300 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
17301
17302         * merges from gtk-1-2:
17303
17304 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
17305
17306         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
17307         item factory class has been created.
17308         (gtk_item_factory_parse_rc): likewise.
17309
17310         * gtk/gtkmenu.c:
17311         keep proper references for old_active_menu_item.
17312         (gtk_menu_reparent): unset the usize of the new parent,
17313         so the menu can sanely be size requested and we don't get nasty screen
17314         artefacts upon next reparentation.
17315         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
17316         enter notify. only synthesize enter notifies if the pointer really is
17317         inside the event window.
17318         (gtk_menu_popdown): use gtk_menu_shell_deselect().
17319         (gtk_menu_popup): move the background setting stuff into
17320         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
17321
17322         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
17323         gtk_menu_shell_select_item() to select the new item.
17324         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
17325         do the right thing for deselection as well.
17326
17327 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
17328
17329         * gtk/gtkwidget.[hc]:
17330         (gtk_widget_accelerators_locked): return whether a widget's accelerators
17331         are locked.
17332
17333         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
17334         existing accelerators if the widget's accelerators are locked.
17335
17336 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
17337
17338         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
17339
17340         * gtk/gtkmenu.c: truely forward key press and key release events to
17341         the menu widget from the toplevel or tearoff window. we can't simply
17342         connect to that, we need to stop further processing of the events as
17343         well.
17344
17345 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
17346
17347         * gtk/gtkmenu.c:
17348         (gtk_menu_key_press): pass event->keyval, event->state to
17349         gtk_accelerator_valid, instead of event->keyval twice.
17350         refuse to install single letter accelerators for menus that use
17351         single letter shortcuts.
17352
17353         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
17354         gtk_menu_ensure_uline_accel_group().
17355
17356         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
17357         which will always return an uline accel group, made
17358         gtk_menu_get_uline_accel_group() return NULL if the group isn't
17359         yet created.
17360
17361 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
17362
17363         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
17364
17365         * gtk/gtkclist.c (gtk_clist_column_title_passive):
17366         Leave button sensitive, trap  button_press, button_release,
17367         motion_notify, enter_notify and leave_notify events instead.
17368         (gtk_clist_column_title_active): disconnect event handler.
17369         (gtk_clist_drag_data_get): fixed memory leak. Reported by
17370         Guillaume Laurent <glaurent@worldnet.fr>
17371
17372 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
17373
17374         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
17375         width/height mixups.
17376
17377         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
17378         if needed.
17379
17380 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
17381
17382         * gtk/testgtk.c (create_item_factory): unref the item factory after
17383         window's destruction.
17384
17385         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
17386         count on the menu shell around the menu item's activation, since the
17387         signal emission may cause menu shell destruction.
17388
17389         * gtk/gtkitemfactory.c:
17390         the previous code leaked one accel group per menu. we use
17391         gtk_menu_get_uline_accel_group() now to fix that, and with that
17392         also create the underline accelerator group of the menus only if
17393         required (i.e. an underline accelerator has been specified).
17394         (gtk_item_factory_construct):
17395         (gtk_item_factory_create_item): removed code that would create an
17396         extra accel group for the menu (and leak references).
17397         (gtk_item_factory_create_item): adapted the underline accelerator
17398         installation code to properly feature gtk_menu_get_uline_accel_group().
17399
17400         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
17401         menu->accel_group, this may return NULL if the accelerator group
17402         hasn't been set yet.
17403         added gtk_menu_get_uline_accel_group() to retrive the underline
17404         accelerator group of the menu, this will be created on demand
17405         and proper care is taken about its reference count.
17406
17407         * gtk/gtkitemfactory.h:
17408         * gtk/gtkitemfactory.c:
17409         dumped the approach of keeping a widgets by action list on the
17410         factory since the factory<->widget destroy negotiation didn't work
17411         and would be hard to get going at all. instead we keep a list of
17412         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
17413         persistant throughout a program's life time).
17414         also, i removed the static const gchar *key_* variables, and made
17415         them inline strings (they weren't actually used anyways).
17416         (gtk_item_factory_add_item): update ifactory->items.
17417         (gtk_item_factory_destroy): destroy ifactory->items (and remove
17418         the item factory pointer from the remaining ifactory widgets).
17419         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
17420         list to find the widget.
17421         (gtk_item_factory_get_item): new function that works around
17422         gtk_item_factory_get_widget() limitations, this function will only
17423         return menu items, even for <Branch> entries.
17424
17425 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17426
17427         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17428         font hash table, if we have a GdkFontPrivate entry for this font
17429         already, simply increment its reference count, provided by Olaf Dietsche
17430         <olaf.dietsche+list.gtk@netcologne.de>.
17431
17432         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17433         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17434
17435 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
17436
17437         * gtk/gtkcontainer.c:
17438         (gtk_container_add_with_args):
17439         (gtk_container_addv):
17440         (gtk_container_add): before adding a child to a conatiner, make sure
17441         it is (default) constructed, this is neccessary because under certain
17442         circumstances the child will get relized and mapped immediatedly, in
17443         which case it has to be constructed already.
17444
17445 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
17446
17447         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
17448         values > 1 as TRUE also.
17449
17450 1999-03-16  Tor Lillqvist  <tml@iki.fi>
17451
17452         * README.win32: New file.
17453                 
17454         * configure.in: Check for lstat.
17455
17456         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
17457         completeness.
17458
17459         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
17460
17461         * gtk/gtk.def: Removed CRs.
17462
17463         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
17464         ..\gdk\win32).
17465
17466         * gdk/win32/makefile.msc: Correct upwards relative paths.
17467         
17468 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
17469
17470         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
17471           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
17472           it was connecting a void function to expose_event and the int
17473           returning function to the draw signal
17474
17475 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
17476
17477         * configure.in:
17478         Use correct path to libgmodule.la when ref'ing uninstalled copy
17479         of glib.  (Already in stable branch, Bug #417)
17480
17481 1999-03-15  Tor Lillqvist  <tml@iki.fi>
17482
17483         Win32 merge and general portability stuff:
17484                 
17485         * acconfig.h,configure.in: Check for <sys/time.h>.
17486
17487         * gdk/win32: New directory (actually, been there for a while).
17488         
17489         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
17490         NATIVE_WIN32, and use these. Always case fold on Win32. No
17491         backslashed escapes on native Win32.
17492
17493         * gtk/{gtk.def,makefile.msc}: New files.
17494
17495         * gtk/Makefile.am: Add above new files.
17496         
17497         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
17498         instead of <strings.h>.
17499
17500         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
17501         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
17502         <unistd.h> appropriately.
17503
17504         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
17505         Use ABS() (from <glib.h>) instead of abs().
17506         
17507         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
17508         of gtk (and thus glib) headers, so that WIN32 will be
17509         defined. With MS C, include <direct.h> for mkdir prototype.
17510
17511         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
17512         some casts, needed by MS C.
17513
17514         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
17515         implemented).
17516
17517         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
17518         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
17519         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
17520
17521         * gtk/gtkmain.h: Mark variables for export/import on Win32.
17522                 
17523         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
17524         the event is not a hint, or its window is not the slider. Needed
17525         on Win32, at least.
17526
17527         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
17528         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
17529         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
17530         a subdirectory of the Windows directory as gtk system
17531         configuration directory.
17532
17533         * gtk/gtkselection.c: No chunks on Win32.
17534
17535         * gtk/gtksocket.c: Not implemented on Win32.
17536
17537         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
17538
17539         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
17540
17541         * gtk/maketypes.awk: Declare variables with a macro that expands to
17542         necessary export/import magic in the case of Win32.
17543                 
17544         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
17545
17546 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
17547
17548         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
17549         since those were meant only for gdki18n.h.  
17550         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
17551         for widechar tests.
17552         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
17553
17554 1999-03-13  Tor Lillqvist  <tml@iki.fi>
17555
17556         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
17557         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
17558
17559         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
17560         installed) to CFLAGS.
17561
17562         * gdk/Makefile.am: Add rules for gdkconfig.h.
17563
17564         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
17565         APIs.
17566
17567         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
17568         gdkx.h anyway when compiling for X11.
17569         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
17570         general): Merge in Win32 version.
17571         
17572         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
17573         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
17574         expansion (if we don't have HAVE_PWD_H), allow for drive
17575         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
17576         included code from Craig Setera's port to Win32 (the one that uses
17577         X11, and the cygwin dll), even if it probably will be abandoned.
17578
17579         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
17580         the user entered one herself.  This way one can complete *.h and
17581         don't get matches on any .help files, for instance.
17582         
17583 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17584
17585         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17586         font hash table, if we have a GdkFontPrivate entry for this font
17587         already, simply increment its reference count, provided by Olaf Dietsche
17588         <olaf.dietsche+list.gtk@netcologne.de>.
17589
17590         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17591         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17592
17593 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17594
17595         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
17596         the number of calls to gdk_draw_point() (and thus to X) by
17597         clipping the points by hand.
17598
17599         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
17600         the clip parameter.
17601         (gtk_handle_box_paint): Only paint the handle if the expose area
17602         intersects it.
17603
17604 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17605
17606         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
17607
17608 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
17609
17610         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
17611         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
17612
17613 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17614
17615         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
17616          textmode (O_TEXT) for OS/2 version.
17617
17618 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
17619
17620         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
17621         GtkSpinButton, "input" and "output", to make the output more flexible.
17622         The user has to provide a mapping between adjustment->value and the
17623         output string (and vice versa, if the spin button is editable). 
17624         See testgtk for examples.
17625
17626 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
17627
17628         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
17629         new one.
17630         
17631         * configure.in: set gtk+ version to 1.3.0.