]> Pileus Git - ~andy/gtk/blob - ChangeLog
New function to reflect that you can (hypothetically) pack cell renderers
[~andy/gtk] / ChangeLog
1 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
2
3         * gtk/gtktreeviewcolumn.c
4         (gtk_tree_view_column_pack_start_cell_renderer): New function to
5         reflect that you can (hypothetically) pack cell renderers into a
6         column.
7         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
8         (gtk_tree_view_column_cell_is_visible): Move more functionality to
9         the column.
10         (gtk_tree_view_column_cell_can_focus): Move more functionality to
11         the column.
12
13         * gtk/gtktreeview.c: Move to use new column-packing code.
14         (gtk_tree_view_real_expand_row): remove totally braindead code.
15         (gtk_tree_view_real_collapse_row): ditto.
16
17 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
18
19         * gtk/gtktreeviewcolumn.c: Fix a typo.
20         
21 2001-06-26  Joel Becker  <jlbec@evilplan.org>
22
23         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
24           at the end of the file
25
26 2001-06-26  Havoc Pennington  <hp@redhat.com>
27
28         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
29
30 2001-06-26  Havoc Pennington  <hp@redhat.com>
31
32         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
33         property
34
35 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
36
37         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
38         stupid missing statement
39
40         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
41         private function for ATK.  It notifies you of how many _visible_
42         children are deleted when a node is deleted.  Should be used by
43         atk only.
44
45 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
46
47         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
48         Use new pango_context_get_metrics() to fix problems
49         with font lists in descriptions. (#56184, reported by
50         Jonas Borgström)
51
52 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
53
54         * gtk/gtkiconfactory.c:
55         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
56         item factory so inlined pixbufs actually work.
57
58 2001-06-25  Havoc Pennington  <hp@redhat.com>
59
60         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
61         s/RESIZEABLE/RESIZABLE/
62
63         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
64
65 2001-06-25  Alexander Larsson  <alexl@redhat.com>
66
67         * configure.in:
68         Added --enable-fbmanager. This is some experimental code
69         that lets several GtkFB apps coordinate their access to the
70         framebuffer.
71         
72         * acconfig.h:
73         Added ENABLE_FB_MANAGER.
74
75         * gdk/linux-fb/Makefile.am:
76         Added gdkfbmanager and gdkfbswitch.
77
78         * gdk/linux-fb/gdkkeyboard-fb.c:
79         * gdk/linux-fb/gdkmouse-fb.c:
80         * gdk/linux-fb/gdkprivate-fb.h:
81         Split device init and open so that
82         they can be opened and closed while switched
83         away.
84
85         * gdk/linux-fb/gdkmain-fb.c:
86         Add the basic manager communication.
87
88         * gdk/linux-fb/gdkrender-fb.c:
89         Don't update to the shadow fb if we're
90         blocked by the fb manager.
91
92 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
93
94         * docs/Changes-2.0.txt: Add note about child property
95         changes.
96
97 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
98
99         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
100         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
101
102         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
103         with un'reffing wrong list reported by Jeff Franks.
104
105         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
106
107         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
108         for the default icon. Remove inline XPM.
109
110         * gtk/gtkstock.h gtk/gtkiconfactory.c:
111         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
112         is used for GTK_STOCK_DND, but it is a bit too small.)
113
114         * gtk/stock-icons/stock_dnd_multiple.png
115         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
116
117         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
118         TRUE when starting a drag. In other cases, we are
119         just observing. (#52995)
120
121         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
122         function to set the icon for a drag from a GdkPixbuf
123         or stock ID.
124
125         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
126         Likewise, for drag sources.
127
128         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
129         (Now should be done using the stock system.)
130
131 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
132
133         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
134         Removed - didn't work and not particularly useful anyways
135         if it did. 
136
137 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
138
139         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
140         introduced last night that was making things decidedly not work.
141
142         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
143         so that we have getter/setter pairing everywhere it makes
144         sense. (#55767)
145
146         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
147         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
148         deprecated compat macro. (#55516)
149
150         * gtk/gtklabel.[ch]: Add functions
151         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
152         gtk_label_set_label(), which mirror the property API for GtkLabel.
153         Make gtk_label_get_attributes() only reflect the attributes
154         set by gtk_label_set_attributes.
155
156         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
157         from gtk_notebook_set_page().
158
159 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
160
161         * configure.in: Fix tests for XShm.h.
162
163         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
164         gdk_image_new() by use of goto, properly use g_object_unref().
165
166 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
167
168         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
169         calls, as GdkImage is an object. these should be g_obejct_unref()
170         instead but that won't work because of the g_error() statement
171         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
172         to spot these places.
173
174 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
175
176         * modules/input/gtkimcontextxim.c: Fixup some problems with 
177         text length handling in error cases.
178
179         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
180         a bit to make test actually warn on attempt to allocation
181         a negative size. (#56101, Matthias Clasen)
182
183 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
184
185         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
186         noticed by Brian Cameron.
187         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
188         Cameron.
189
190 2001-06-22  Hans Breuer  <hans@breuer.org>
191
192         * gdk/gdk.def : updated externals
193
194         * gdk/win32/gdkdrawable-win32.c : corrected some casts
195         in GDK_NOTEs
196
197         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
198         to translate coordinates to the internal > 16 bit system
199         Try to handle WM_WINDOWPOSCHANGED to get better performance for
200         when moving/resizing
201
202         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
203         and gdk_keymap_get_direction (). The latter is untested for
204         the RTL case
205
206         * gtk/gtk.def : updated externals
207
208         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
209         from pango_language_from_string (), not an already freed pointer
210
211         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
212         binary (-kb) to be useable on windoze
213  
214 2001-06-21  Alexander Larsson  <alexl@redhat.com>
215
216         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
217         Update to new PangoLanguage changes.
218         
219         * gtk/gtkwindow-decorate.c:
220         * gtk/gtkwindow.[ch]:
221         Added setting argument to gtk_window_set_has_frame ()
222         
223 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
224
225         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
226         the case without XKB properly.
227
228         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
229         unused gtk_rc_auto_parse variable.
230
231         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
232         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
233         longer needed with GdkPixbuf.
234
235         * gtk/gtkrc.c (_gtk_rc_init): Make private.
236
237 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
238
239         * gtk/gtkentry.h: Mark deprecated functions with
240         GTK_DISABLE_DEPRECATED.
241
242 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
243
244         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
245
246         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
247
248         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
249           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
250           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
251           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
252           to recent changes in Pango.
253
254         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
255           to test whether the basic engine honors them.
256
257 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
258
259         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
260         gtk_container_child_get_property().
261
262 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
263
264         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
265         (gtk_tree_view_move_cursor_page_up_down): implement.
266
267 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
268
269         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
270         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
271         don't use automatic fixed size buffer for printf-ing floats, doubles
272         can expand to really _huge_ strings, use g_strdup_printf() instead.
273
274 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
275
276         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
277         construct property in 1.2 and still needs to be.
278
279         * gtk/gtkwidget.c: "composite_child" is not a settable property.
280
281 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
282
283         * gtk/gtkliststore.c (gtk_list_store_clear): 
284         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
285         clear a model.
286
287 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
288
289         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
290
291         * gtk/Makefile.am:
292         * gtk/gtk.h: disabled GtkPacker compilation.
293
294         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
295
296         * gtk/gtknotebook.c:
297         * gtk/gtktable.c:
298         * gtk/gtkbox.c: ported this over to child properties.
299
300         * gtk/gtksettings.c: fetch class properties via
301         g_object_class_list_properties().
302
303         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
304         child arg interface. use gobjectnotifyqueue.c for child property
305         notification.
306
307         * gtk/gtkwidget.[hc]: provide necessary means for container child
308         properties, i.e. ::child_notify signal,
309         gtk_widget_freeze_child_notify(),
310         gtk_widget_child_notify(),
311         gtk_widget_thaw_child_notify().
312
313         * tests/testgtk.c: removed inferior property handling code, for
314         property editing, a generic module should be used, and GLE
315         coincidentally fullfills that purpose.
316
317         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
318         needs to be adapted to g_object_class_list_properties() before this
319         builds again.
320
321 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
322
323         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
324         test if a node is expanded.
325
326 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
327
328         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
329         where collapsing a selected row would result in the cursor/anchor
330         getting screwed up.
331
332 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
333
334         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
335         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
336         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
337         Now I can really reorder/sort all Store widgets.  treesorttest
338         seems to just work now.
339         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
340         testtreesort worked through a big coincidence all this time.
341         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
342         code.
343         * tests/testtreecolumns.c: Big 'ol warning at the top letting
344         people know that this code should never ever ever be copied.
345
346 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
347
348         * gtk/gtkwindow.h: Fixed a small typo, it should be
349         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
350         on line 134.
351
352 2001-06-14  Havoc Pennington  <hp@redhat.com>
353
354         Docs fixups, and:
355         
356         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
357         GTK_DISABLE_DEPRECATED
358
359 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
360
361         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
362         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
363         finish it off tonight, though it basically works now when it's a
364         list.  Also, I have a sinking feeling neither GtkTreeStore or
365         GtkListStore actually resort when adding a new item.  I'll look
366         into it.
367
368 2001-06-14  Havoc Pennington  <hp@redhat.com>
369
370         * demos/gtk-demo/main.c (load_file): fix bug identified by
371         warnings I just added to gtktextbuffer
372
373 2001-06-14  Havoc Pennington  <hp@redhat.com>
374
375         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
376
377         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
378
379         * gtk/gtktextbtree.c: don't leak node data all over the place.
380
381         * demos/gtk-demo/main.c (main): create fontify tags for the right
382         buffer
383
384         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
385         to mention tags in the same table can't have the same name,
386         suggested by Skip Montanaro
387
388 2001-06-11  Havoc Pennington  <hp@redhat.com>
389
390         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
391         for trying to add two tags with same name to the tag table
392
393         * demos/gtk-demo/main.c (main): fix colors ;-)
394
395 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
396
397         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
398         that allows grouping together multiple windows so that grabs
399         within that set of windows only affect those windows.
400
401         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
402         signal for notification when a widget becomes shadowed
403         by a grab or is no longer shadowed by a grab.
404
405         * gtk/gtkwidget.c (gtk_widget_propagate_state)
406           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
407         insenstive widgets to maintain a grab.
408
409 2001-06-14  Alexander Larsson  <alexl@redhat.com>
410
411         * docs/README.linux-fb:
412         Add some example config files that can be used with the URW fonts.
413         
414         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
415         Set up the color ramps for DirectColor mode.
416
417 2001-06-11  Havoc Pennington  <hp@redhat.com>
418
419         * Release 1.3.6
420          
421 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
422
423         * gdk/linux-fb/gdkwindow-fb.c:
424         Unify shaped window code and make it repaint the area that used
425         to be part of the shape, but isn't anymore.
426
427 2001-06-11  Havoc Pennington  <hp@redhat.com>
428
429         * NEWS: Updates
430
431         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
432
433         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
434         
435 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
436
437         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
438         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
439         passes zero instead, so do we.
440         
441 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
442
443         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
444         Deep copy dash_list too.
445         (_gdk_fb_gc_new): Set default cap_style before
446         setting values.
447
448 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
449
450         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
451         gdk_keymap_get_direction): New functions.
452
453 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
454
455         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
456         gtk_tree_model_get_flags by adding a second flag for atk.
457
458         * gtk/gtktreemodel.c: make cursor behavior interact better with
459         mouse presses.
460
461 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
462
463         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
464         expand_row/collapse_row to be 2 signals each -- test_expand_row
465         and row_expanded as well as test_collapse_row and row_collapsed.
466
467 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
468
469         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
470         signal name to be changed instead of selection_changed.
471
472 2001-06-08  Havoc Pennington  <hp@redhat.com>
473
474         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
475         "scroll_offset" property for notification when the layout offsets
476         may have changed
477         (gtk_entry_adjust_scroll): add notify for scroll_offset
478         (gtk_entry_layout_index_to_text_index): function to compensate for
479         preedit string when doing coordinate stuff on the entry's layout
480         (gtk_entry_text_index_to_layout_index): inverse function
481         (gtk_entry_get_layout_offsets): hook to get current position of
482         the layout      
483         (gtk_entry_get_layout): hook to get the layout itself.
484
485         * gtk/gtklabel.c (gtk_label_get_layout): new function
486
487 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
488
489         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
490         keybinding.
491         (gtk_tree_view_focus): Fix merge conflict.
492
493 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
494
495         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
496         clean up cursor handling.
497
498 2001-06-08  Havoc Pennington  <hp@redhat.com>
499
500         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
501         function
502
503         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
504         this function
505
506 2001-06-08  Alex Larsson  <alexl@redhat.com>
507
508         * gtk/gtkcompat.h.in:
509         Added compat macros for all old GTK_TYPE_GDK_xxx types.
510         Fixes bug #52892
511
512 2001-06-08  Havoc Pennington  <hp@redhat.com>
513         
514         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
515         parent still
516
517 2001-06-08  Havoc Pennington  <hp@redhat.com>
518
519         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
520         don't call g_list funcs on GSList
521
522         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
523         gtk_container_focus(), since some widgets have focusable locations
524         which are not other widgets. These widgets should not have to be 
525         containers just to manage the focus. For example, GtkHSV is
526         currently a container for no good reason. Also, this cleans
527         up the "if (is_container && is_sensitive && is_drawable)
528         container_focus ()" mess in widget implementations.
529
530         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
531         function, and have it just call gtk_widget_child_focus().
532
533         * gtk/gtkhsv.c: derive from widget not container
534         
535         Throughout: fix to reflect GtkContainer::focus change
536         
537 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
538
539         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
540         range.  Fix bug #55921
541
542         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
543         (#55920).
544
545 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
546
547         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
548         and gdk_keymap_get_current_direction().
549
550         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
551           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
552         the current locked group, use it to set the keymap
553         direction.
554
555         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
556         to determine whether we draw a split cursor or use
557         a jumping cursor based on the current direction.
558
559         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
560         Obey the split cursor setting. 
561
562 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
563
564         * gtk/gtkimmulticontext.c (activate_cb): Only activate
565         when toggling on, not when toggling off... (#55906)
566
567 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
568
569         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
570         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
571         in docs. (#55812, Vitaly Tishkov)
572
573 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
574
575         * demos/gtk-demo/main.c (create_tree): Changed signal name from
576         selection_changed to changed in signal connection to GtkTreeSelection,
577         also used g_signal_connectc since GtkTreeSelection is now a GObject.
578
579 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
580
581         * gtk/gtktreeselection.c: Now it's a GObject instead of a
582         GtkObject.  The GtkTreeSelection::selection_changed signal is now
583         the GtkTreeSelection::changed signal.
584
585         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
586         object.
587
588         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
589         object.
590
591 2001-06-07  Havoc Pennington  <hp@redhat.com>
592
593         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
594
595 2001-06-07  Havoc Pennington  <hp@redhat.com>
596         
597         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
598         (not tested yet because with absolute path to srcdir I can't build
599         atk, but it was broken anyway so this may help) 
600
601 2001-06-07  Havoc Pennington  <hp@redhat.com>
602
603         * configure.in: output m4macros/Makefile
604         
605 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
606
607         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
608         buttons.  Fixes #55460 reported by matthiasc@poet.de.
609
610 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
611
612         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
613         expansion/collapsing so it only happens in one place.
614         (gtk_tree_view_real_expand_row): ditto.
615
616 2001-06-07  Havoc Pennington  <hp@redhat.com>
617
618         * tests/Makefile.am: add missing -I flag
619
620         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
621
622         * configure.in: use pkg-config to see if GModule is
623         supported; fix to properly turn on included loaders 
624         when GModule isn't supported; don't use AC_CHECK_LIB 
625         when libs are not installed yet
626
627         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
628
629         * Makefile.am (SUBDIRS): add m4macros subdir
630
631         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
632         dependencies also.
633
634 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
635
636         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
637         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
638
639 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
640
641         * gtk/gtktreeview.c
642         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
643         bindings to expand and collapse rows.
644         (gtk_tree_view_real_select_cursor_parent): New key binding.
645         (gtk_tree_view_real_toggle_cursor_row): New key binding.
646
647         * gtk/gtkmarshal.list: new
648         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
649
650 2001-06-06  Havoc Pennington  <hp@redhat.com>
651
652         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
653
654         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
655         Down to move visually rather than logically, since it confuses 
656         people. Add -/+ and Ctrl--/+ bindings for logical movement.
657
658 2001-06-06  Alex Larsson  <alexl@redhat.com>
659
660         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
661         Fix up error messages.
662
663 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
664
665         * gtk/gtktooltips.h: Include gtkwidget.h 
666         (#55798, Karl Nelson)
667
668         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
669         a valid latin-1 character. (Marc Lehmann, #35467)
670
671         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
672         (Marc Lehmann, #35467)
673         
674 2001-06-05  Alex Larsson  <alexl@redhat.com>
675
676         * demos/gtk-demo/appwindow.c (do_appwindow):
677         Don't swap the order of the args to gtk_widget_destroyed.
678
679         * tests/testgtk.c (destroy_properties):
680         Don't crash when the properties window is destroyed.
681
682         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
683         Use with_mnemonics to handle the case of stock items with
684         underscores in them.
685
686 2001-06-05  Havoc Pennington  <hp@redhat.com>
687
688         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
689         gtk_text_iter_reorder
690
691 2001-06-05  Havoc Pennington  <hp@redhat.com>
692
693         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
694
695 2001-06-05  Havoc Pennington  <hp@redhat.com>
696
697         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
698         to the range that was set
699
700         * gtk/gtkrange.c: add value_changed signal, primarily 
701         intended for use with GtkScale
702         (gtk_range_set_increments): new function
703         (gtk_range_set_range): new function with weird name
704         (gtk_range_set_value): new function
705         (gtk_range_get_value): new function
706
707         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
708         from gtk_spin_button_get_value_as_float(). Compat #define
709         added for get_value_as_float.
710
711         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
712
713         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
714
715 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
716
717         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
718
719 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
720
721         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
722
723         * tests/testgtk.c (create_tooltips): Remove usage of
724         gtk_widget_set().
725
726 2001-06-05  Havoc Pennington  <hp@redhat.com>
727
728         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
729
730         Applying patch from Jeff Franks, with function docs added.
731         
732         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
733         remove call to set_mnemonic_widget, change docs a bit.  
734
735         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
736         new function
737
738         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
739         new function
740
741         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
742
743         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
744         function
745         (gtk_radio_button_new_with_mnemonic_from_widget): new function
746
747         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
748         new function
749
750         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
751         function        
752
753         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
754         auto-selection of mnemonic widget.
755
756 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
757
758         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
759         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
760         (gtk_tree_view_column_set_min_width): ditto.
761
762 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
763
764         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
765         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
766
767 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
768
769         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
770         gtk_clist_thaw().
771
772 2001-06-04  Havoc Pennington  <hp@pobox.com>
773
774         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
775         releases for buttons 6, 7
776
777 2001-06-04  Havoc Pennington  <hp@redhat.com>
778
779         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
780         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
781         #55562
782
783 2001-06-04  Havoc Pennington  <hp@redhat.com>
784
785         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
786         where text_view->layout == NULL by assuming its size is 0, 
787         i.e. same as if we haven't done any reflow. Reported by 
788         Hidetoshi Tajima #55448 
789
790 2001-06-04  Havoc Pennington  <hp@redhat.com>
791
792         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
793         and 7 for scroll left/right, from Thomas Broyer
794
795 2001-05-10  Havoc Pennington  <hp@redhat.com>
796
797         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
798         we need to parse the xsetting as if it were an RC file string.
799
800         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
801         value of palette from settings, not from static variable
802
803         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
804         xsettings translation table
805
806         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
807         hardcoding the toolbar style conflicts with new customizable 
808         toolbar style philosophy
809         (gtk_toolbar_class_init): add settings for default toolbar style;
810         these are used unless the app specifically forces a toolbar style
811
812         * gtk/gtksettings.c (settings_install_property_parser): only
813         return at the start if we warn and parser == NULL
814
815         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
816         palette changed handler so we don't notify dead color selections
817
818         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
819         xthickness/ythickness of 0 or 1 properly 
820         (gtk_default_draw_resize_grip): clear the background behind the
821         resize grips, and align to bottom right if we square the 
822         area to be drawn.
823
824         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
825         statusbar label to 1, so it doesn't make toplevels resize oddly
826         (gtk_statusbar_size_request): add grip size to request
827         (gtk_statusbar_size_allocate): hack so the hbox still works with 
828         the grip size in the request
829
830         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
831         bug where showing all on a toplevel makes the toolbar 
832         button text appear despite the toolbar mode
833
834         * gtk/gtkmenubar.c: add internal padding style property
835
836         * gtk/gtktoolbar.c: Add internal padding style property; add
837         shadow type style property
838
839         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
840         state; and put Container::border_width outside the frame
841
842         * gtk/gtktextview.c: don't draw focus rectangle if we're in
843         interior focus mode, we just use blinking cursor
844
845 2001-06-04  Havoc Pennington  <hp@redhat.com>
846
847         * configure.in: Make gdk-pixbuf have same version number as GTK
848
849 2001-06-04  Havoc Pennington  <hp@redhat.com>
850
851         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
852         digits greater than 6. If there actually are limits (which there
853         likely aren't), should clamp to them not warn.
854         (gtk_spin_button_new_with_range): don't take log of 0
855         (gtk_spin_button_size_request): use digits to compute size
856         request, rather than step increment.
857
858         * tests/testgtk.c (create_spins): test larger values of digits
859         
860         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
861         font on map not expose, so we don't get weirdness during scrolling
862
863 2001-06-04  Havoc Pennington  <hp@redhat.com>
864
865         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
866         Sam Solon, bug #54577, update value even if not drawable.
867
868 2001-06-04  Havoc Pennington  <hp@redhat.com>
869
870         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
871         SCROLL_LEFT, reported by Thomas Broyer.
872
873 2001-06-04  Havoc Pennington  <hp@redhat.com>
874
875         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
876         Process updates immediately, to prevent funny lag effect
877         when scrolling, at some mild potential efficiency cost.
878
879 2001-06-04  Havoc Pennington  <hp@redhat.com>
880
881         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
882         slider on the click.
883
884 2001-06-03  Havoc Pennington  <hp@pobox.com>
885
886         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
887         hscale/vscale details, so we can use it for scrollbar as well.
888
889         * tests/testgtk.c (reformat_value): honor digits from GtkScale
890
891         * gtk/gtkenums.h (GtkTroughType): Remove this enum
892         (GtkScrollType): add START and END from GtkTroughType
893
894         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
895         its x/y arguments
896
897         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
898         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
899         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
900         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
901         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
902
903         Notable changes in the process:
904          
905         - stepper_size style property is the height for vertical 
906           ranges, width for horizontal; the other dimension matches
907           the trough size
908         - add ability to do NeXT-style steppers (and several other styles
909           that don't make any sense)
910         - added min_slider_length, fixed_slider_length properties to
911           GtkScrollbar
912         - cleaned some private (or at least useless) functions out of
913           gtkscale.h    
914         - moved bindings to GtkScale from subclasses, even arrow keys,
915           since blind users don't know scale orientation.
916         - change move_slider action signal to use new GtkScrollType,
917           remove GtkTroughType argument
918         - digits rounds the values a range will input to the given 
919           number of decimals, but will not try to force adjustment 
920           values set by other controllers. That is, we no longer
921           modify adjustment->value inside a value_changed handler.
922         - added getters for GtkScale setters
923         - middle-click begins a slider drag
924         
925 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
926
927         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
928         getting the focus code to work.
929         (gtk_tree_view_class_init): Add a bunch of keybindings.
930
931         * gtk/gtktreeviewcolumn.c
932         (gtk_tree_view_column_set_cell_data_func):
933         s/GtkCellDataFunc/GtkTreeCellDataFunc.
934         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
935         of "properties_changed" to help justify the death of the latter
936         signal. (-:
937
938         * tests/testtreefocus.c (main): Let some columns be focussable to
939         test focus better.
940
941 2001-06-01  Havoc Pennington  <hp@redhat.com>
942
943         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
944         
945         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
946         overwrite in overwrite mode if we already deleted the selection
947         and replaced it with new text.  
948
949         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
950         selection to an empty range, clear the clipboard if we owned it.
951         (gtk_label_set_selectable): give up selection if we become
952         unselectable.
953         (gtk_label_state_changed): override state changed to unselect text
954         when insensitive
955         (get_text_callback): add paranoia check that indexes aren't
956         outside of label->text
957         (gtk_label_select_region): make -1 for start_offset mean "end of
958         label," for consistency with GtkEditable
959
960         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
961         GTK_DIALOG_NO_SEPARATOR flag
962
963 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
964
965         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
966         notifications on non-existant "enable_arrow_keys".
967         (#53753, Skip Montanaro)
968
969 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
970
971         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
972         GDK_TYPE_RECTANGLE.
973
974         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
975         of allocation argument be GDK_TYPE_RECTANGLE.
976
977 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
978
979         * gtk/gtkoptionmenu.c: Account for the fact that the border
980         width is _outside_ the window. (Fixes #54585, bug found
981         by Bastien Nocera.)
982
983 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
984
985         * gtk/gtksettings.c (gtk_settings_get_property): Validate
986         value from GDK settings against parameter spec.
987
988         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
989         to temporary values and use g_value_transform(), since
990         thinking that GValue was going to be easy or efficient
991         to use was, of course, a mistake.
992
993         * gtk/gtksettings.c: Add cursor blink setting.
994         
995         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
996
997         * gtk/gtkentry.c: Add cursor blinking.
998
999         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
1000         cursor blink global settings.
1001
1002         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
1003         for :text_position in places where it is missing.
1004
1005 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
1006
1007         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
1008
1009 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
1010
1011         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
1012         not pkg-config. (#51032)
1013
1014         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
1015         (fixes #51952, James Henstridge)
1016         
1017 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
1018
1019         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
1020         Rename to the more correct gtk-go-up.
1021
1022         * gtk/stock-icons/stock_menu_sort_ascending.png:
1023         Added new file.
1024         
1025         * gtk/stock-icons/stock_menu_sort_descending.png:
1026         Changed to show descending instead of ascending.
1027
1028         * gtk/gtkiconfactory.c:
1029         Added menu size icon to sort ascending.
1030
1031         * gtk/stock-icons/Makefile.am:
1032         Added stock_menu_sort_ascending.png.
1033         
1034         * gtk/gtkseparatormenuitem.c:
1035         Use correct typenames.
1036
1037 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
1038
1039         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
1040         gulong as in GSignal.
1041
1042 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
1043
1044         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
1045         instances of GtkCellRenderer in code (all but dnd icon code).
1046         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
1047         there, and I can do multiple Cells per column.
1048
1049         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
1050
1051         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
1052         when model was unreffed prior to removing the row reference.
1053
1054 2001-05-25  Havoc Pennington  <hp@redhat.com>
1055
1056         * gtk/gtkiconfactory.c: fix so that default icons are created if 
1057         you call gtk_stock_list_ids()
1058
1059         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
1060         in list
1061
1062 2001-05-25  Havoc Pennington  <hp@redhat.com>
1063
1064         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
1065         set can render without falling back to missing image icon
1066
1067         * gtk/gtktextview.c (gtk_text_view_size_request): request full
1068         size of text, instead of random values
1069
1070         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
1071         size of tree view, instead of random values
1072
1073         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
1074         image in an appropriate size
1075
1076         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
1077         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
1078
1079         Throughout: fix GTK_STOCK_BUTTON_ instances
1080         
1081         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
1082         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
1083         Add a bunch of new stock items/icons
1084
1085         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
1086         new function, convenience for inserting columns with a data func
1087
1088         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
1089         (_gtk_icon_factory_list_ids): use list of all factories to
1090         generate a list of all known IDs
1091
1092         * gtk/gtkstock.c (gtk_stock_list_ids): replace
1093         gtk_stock_list_items() with a function that returns all IDs known
1094         including those for GtkIconFactory.
1095
1096 2001-05-25  Hans Breuer  <hans@breuer.org>
1097
1098         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
1099         work -> check boxes and radio buttons are drawn now, even on win9x.
1100         Improved line settings a bit, still no clue how to get really dotted
1101         lines on win9x, on NT it's PS_ALTERNATE.
1102
1103         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
1104         GDK_HINT_MIN_SIZE as well
1105
1106         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
1107
1108         * gtk/gtk.def : updated
1109
1110         * gtk/gtktreeprivate.h : change column_drop_func to be a function
1111         pointer not a function pointer pointer
1112
1113         * tests/testdnd.c : include <stdlib.h> for putenv prototype
1114
1115         * tests/testsocket.c : made it compile on win32 again
1116
1117         * tests/makefile.msc : one more test-app uses prop-editor.obj
1118
1119 2001-05-22  Havoc Pennington  <hp@pobox.com>
1120
1121         * gtk/gtkbin.c (gtk_bin_get_child): New function
1122
1123 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
1124
1125         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
1126         to ignore when doing compose processing.
1127
1128 2001-05-22  Joe Shaw  <joe@ximian.com>
1129
1130         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
1131         Simplify as suggested by Havoc. Just get the last iter and work
1132         backward to the tag instead of getting a line and working back from
1133         there. Fixes passing in an invalid offset to
1134         iter_init_from_byte_offset().
1135
1136 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
1137
1138         * gtk/gtktreeview*.h: 
1139         * gtk/gtkcell*.h:
1140         * gtk/gtk*store.h:
1141         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
1142         macros to all objects.
1143
1144 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
1145
1146         * gtk/gtkcellrenderertext.c
1147         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
1148         with very large (TM) amounts of text.  May be moved to
1149         GtkCellRenderer in the future, though I'm not sure it wants to be
1150         this accessible.
1151
1152         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
1153         More sanity brought to this class.  I like it.
1154
1155         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
1156         case.  Kids, don't try this at home.
1157
1158         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
1159         convenience function.
1160
1161         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
1162
1163 2001-05-21  Alexander Larsson  <alexl@redhat.com>
1164
1165         * gtk/gtkfontsel.c:
1166         Added properties. Based on patch by Lee Mallabone.
1167
1168         * gtk/gtkruler.c:
1169         * gtk/gtkhruler.c:
1170         * gtk/gtkvruler.c:
1171         * gtk/gtktext.c:
1172         * gtk/gtktextview.c:
1173         Converted GtkArg to GParam. Based on patches by John Margaglione.
1174
1175         * tests/Makefile.am:
1176         * tests/testtext.c:
1177         Add a property editor to testtext.
1178         
1179 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
1180
1181         * gtk/gtk{h,v,}paned.c: Only show the separator if 
1182
1183         * configure.in: Fixed reversed conditional causing all image
1184         libraries to be linked in.
1185
1186 2001-05-21  Joe Shaw  <joe@ximian.com>
1187
1188         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
1189         that top_y needs to be >= 0.
1190
1191 2001-05-11  Havoc Pennington  <hp@pobox.com>
1192         
1193         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
1194         losing connection to the X server.
1195
1196 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
1197
1198         * configure.in: Start checks for X from pangox/pangoxft
1199         CFLAGS to avoid duplicate libraries.
1200
1201         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
1202
1203         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
1204         to include gobject.
1205         
1206 2001-05-18  Alexander Larsson  <alexl@redhat.com>
1207
1208         * gtk/gtkspinbutton.c:
1209         Convert GtkArgs to GParams. Based on patch by John Margaglione.
1210         Also do size request reasonable for MAXDOUBLE. Previously it printed
1211         the limits to a buffer and overran it. Instead do it using log10() and
1212         limit the width to 10 digits.
1213         
1214         * gtk/gtkwidget.c (gtk_widget_get_property):
1215         Correctly handle setting the parent property to NULL.
1216
1217 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
1218
1219         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
1220         style attributes even if the widget isn't realized.
1221
1222         * demos/gtk-demo/main.c: Use a slightly smaller font.
1223
1224 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
1225
1226         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
1227         This is something that only a widget writer would ever want
1228         to change.
1229
1230         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
1231         gtk_signal_emit_by_name().
1232
1233         * gtk/gtkviewport.c: Fix some warnings.
1234
1235         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
1236         allowing the requisitions of multiple widgets to be grouped
1237         together.
1238
1239         * tests/testgtk.c: Add GtkSizeGroup test
1240
1241         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
1242
1243         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
1244         warnings.
1245
1246         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
1247
1248 2001-04-28  Martin Baulig  <baulig@suse.de>
1249
1250         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
1251         to gtk_image_menu_item_set_icon() and made it work if there's already
1252         an image.
1253         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
1254         (gtk_image_menu_item_new_with_label): New function.
1255
1256 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
1257
1258         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
1259         highlighting code!!!!  The result is okay so long as you don't try
1260         to stress it.  It also highlights a bug in the TextView so it's in
1261         an unproportional font right now until it's fixed.
1262
1263         *demos/gtk-demo/*.c: Clean up code a bit to make it
1264         ugly-parser(TM) friendly. (-:
1265
1266 2001-05-17  Joe Shaw  <joe@ximian.com>
1267
1268         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
1269         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
1270         if it is only partially onscreen.
1271
1272 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
1273
1274         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
1275         not by characters.
1276
1277         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
1278         are not zero or one; that is, when graphemes of multiple characters
1279         are involved.
1280
1281         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
1282         FIXME.
1283
1284 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
1285         
1286         * gtk/gtkbbox.c:
1287         Add properties, based on patch by Lee Mallabone.
1288
1289         * gtk/gtknotebook.c:
1290         * gtk/gtktoolbar.c:
1291         Convert from GtkArg to GParam, based on patch by John Margaglione.
1292         
1293         * gtk/gtkhscale.c:
1294         * gtk/gtkvscale.c:
1295         * gtk/gtkhscrollbar.c:
1296         * gtk/gtkvscrollbar.c:
1297         * gtk/gtkrange.c:
1298         Move adjustment property to GtkRange.
1299
1300         * gtk/gtklabel.c:
1301         Setup mnemonics on property changes
1302
1303         * gtk/gtkwidget.c (gtk_widget_get_property):
1304         GdkExtensionMode is an enum, not a flag. Set it with
1305         g_value_set_enum ().
1306
1307         * tests/prop-editor.c:
1308         Better propery editor.
1309
1310         * tests/testgtk.c:
1311         Add new property test. Pass zero to the property editor to
1312         get properties from all derived types.
1313         
1314 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
1315
1316         * autogen.sh (have_automake): Require libtool-1.4,
1317         automake-1.4p1.
1318
1319         * acinclude.m4: Remove libtool macros.
1320
1321         * gdk-pixbuf/Makefile.am: Add dependencies to loade
1322         modules.
1323
1324         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
1325         for libgdk.
1326
1327         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
1328         libgdk.la for libgtk.
1329
1330         * modules/input/Makefile.am: Make modules have full
1331         dependencies.
1332
1333 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
1334
1335         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
1336         #54699 where paths weren't being checked for correctness.
1337
1338 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
1339
1340         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
1341         in any order you wan, whether or not the column is added to the
1342         tree, or the tree is realized.  Yay!
1343
1344         * gtk/gtktreeviewcolumn.c
1345         (gtk_tree_view_column_setup_sort_column_id_callback): handle
1346         sorting columns a lot saner
1347
1348         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
1349         new function to actually set wether or not a column is
1350         reorderable.
1351
1352         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
1353         if we have 'em.
1354
1355         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
1356         Fix nasty bug where we were showing the button just before
1357         realizing it.  As a result, the parent window was
1358         tree_view->window instead of tree_view->priv->header_window.
1359
1360         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
1361         to let you easily reorder a list or tree.
1362
1363 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
1364
1365         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
1366         from args to properties.
1367
1368 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
1369
1370         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
1371         from args to properties. (#51957)
1372
1373         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
1374         calls to after ->set_property call.
1375
1376 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
1377
1378         * tests/prop-editor.c: Block against redundant changes.
1379
1380         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
1381         properties.
1382
1383 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
1384
1385         * gdk/gdkpixmap.h: Remove creative formatting.
1386
1387 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
1388
1389         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
1390         property API. (#51669)
1391
1392         * gtk/gtkscale.c: Patch from John Margaglione converting to
1393         property API. (#51891)
1394
1395         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
1396         to property API. (#50985)
1397
1398 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
1399
1400         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
1401         buffering state across expose event, so we still call end_paint().
1402
1403 2001-05-11  Alexander Larsson  <alexl@redhat.com>
1404
1405         * gtk/gtkhsv.c (paint_triangle):
1406         Expose the ring in the triangle at the correct place when
1407         exposing just a part of the triangle.
1408
1409         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
1410         Return FALSE, or window focusing will not work.
1411
1412 2001-05-11  Havoc Pennington  <hp@pobox.com>
1413
1414         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
1415         #54144
1416
1417         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
1418         bug #54330
1419
1420 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
1421
1422         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
1423         propagate exposes to NULL child.
1424
1425         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
1426         against not having one of the scrollbars.
1427
1428         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
1429         we don't keep a mnemonic window if we have no mnemonic installed.
1430
1431 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
1432
1433         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
1434         it has the _important_ side effect of initializing a class.
1435
1436 2001-05-10  Alexander Larsson  <alexl@redhat.com>
1437
1438         * gdk/linux-fb/gdkprivate-fb.h:
1439         Make sure you can compile out the implementation/wrapper assert
1440         macros.
1441
1442         * gdk/linux-fb/gdkdrawable-fb2.c:
1443         Check implementation/wrappers, initialize type for pixmap dummys.
1444
1445         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
1446         Hide the cursor if reading from the screen.
1447
1448         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
1449         Fix sign bug in tiling code.
1450
1451         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
1452         Handle background pixmaps.
1453
1454 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
1455
1456         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
1457         function to let user control where columns are dragged.
1458
1459         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
1460         Escape is pressed.
1461
1462 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
1463
1464         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
1465         "columns_changed" signal.
1466         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
1467         motion code to draw arrows to the side if indicator is outside the
1468         widget.
1469         (gtk_tree_view_map_expanded_rows): Implement.
1470
1471 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1472
1473         * demos/testpixbuf-save.c: 
1474         * demos/testpixbuf-drawable.c:
1475         Include gdkfb.h on linux-fb.
1476
1477 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1478
1479         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
1480         New function for getting toplevel window at position.
1481         (gdk_drag_find_window): Use get_toplevel_window () instead
1482         of gdk_window_get_pointer(). (gdk_drag_status): Use
1483         correct context for getting window.
1484
1485         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
1486         g_strdup the atom name.
1487
1488         * gdk/linux-fb/gdkwindow-fb.c:
1489         Costmetic fix.
1490
1491         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
1492         Add code for changing cursor on linux-fb backend (same as
1493         win32).
1494
1495 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
1496
1497         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
1498         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
1499         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
1500         report was not for the development branch of GTK+, but it applies
1501         anyways).
1502
1503 2001-05-04  Havoc Pennington  <hp@redhat.com>
1504
1505         * configure.in: fix some shell typos
1506
1507         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
1508
1509         * gtk/gtkimage.c: handle animations
1510
1511         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
1512         border_width * 2, not just border_width
1513
1514         * gtk/gtkscale.c: add "format_value" signal to allow people
1515         to override the way values are drawn.
1516         (gtk_scale_get_value_size): fix width/height mistake,
1517         and compute size from actual displayed text, not 
1518         from made-up text.
1519
1520         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
1521         signal registration
1522
1523         * tests/testtext.c: Add "Remove all tags" menu item for testing
1524
1525         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
1526
1527         * demos/gtk-demo/main.c (main): add hack so we can find modules
1528         without installing gtk
1529
1530         * demos/gtk-demo/textview.c (insert_text): demo font scaling
1531
1532         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
1533         factor)
1534         (gtk_cell_renderer_text_set_property): remove some bogus
1535         g_object_notify
1536
1537         * gtk/gtktexttag.c: add "scale" property which is a font scaling
1538         factor
1539
1540         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
1541         to layout
1542
1543         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
1544         gtk_text_iter_is_first
1545
1546 2001-01-06  Hans Breuer  <hans@breuer.org>
1547
1548         * gdk/gdk.def : updated exports
1549
1550         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
1551         gdk won't compile anymore
1552  
1553         * gdk/win32/gdkevents-win32.c : initialize ret_val when
1554         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
1555         Improved gdk_flush () to not only do pending drawing operations
1556         but also process all currently pending events. This should make
1557         the behaviour more similar to the X11 version.  
1558
1559         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
1560         option needs to be set even if there is no GDK_GC_BACKGROUND.
1561         (gdk_win32_hdc_get) : use predraw_set_background () independent
1562         of value_mask. This allows to draw dashed lines leaving the original
1563         background intact.
1564
1565         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
1566         after processing, because we can't reuse it as the X11 version does.
1567
1568         * gtk/gtk.def : updated exports
1569
1570         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
1571         would like to get rid of this file again, and use straight
1572         makefile.msc again, as the other Gtk+ subdirs do)
1573
1574         * test/makefile.msc (new file) : build the test apps here
1575
1576 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
1577
1578         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
1579         strike-through setting
1580         (gdk_draw_layout_line_with_colors): Render strike-through
1581
1582 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
1583
1584         * Release 1.3.5
1585
1586         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
1587
1588         * NEWS: Updated
1589
1590         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
1591         Makefile breakage.
1592
1593 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
1594
1595         * demos/gtk-demo/images.c (progressive_timeout): Fix
1596         typo in filename.
1597
1598         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
1599         out FIXME warning; just too annoying.
1600
1601 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
1602
1603         * gdk/linux-fb/gdkcolor-fb.c:
1604         Better error messages.
1605
1606         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
1607         Initialize abs_x and abs_y.
1608         
1609         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
1610         Correct handling of stipple offset.
1611
1612         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
1613         Treat directcolor framebuffers as truecolor.
1614         
1615 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
1616
1617         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
1618         dependency on Atk for accessibility support.
1619
1620         * configure.in **/Makefile.am: Major reworking of substituted
1621         variables for CFLAGS/LIBS to make a lot more sane and 
1622         keep the the compile/link lines a bit shorter.
1623
1624         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
1625
1626 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
1627
1628         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
1629         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
1630         use _gtk_boolean_handled_accumulator.
1631
1632 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
1633
1634         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
1635         to fix things so clicking inside selection leaves cursor
1636         at point where clicked. (#50324)
1637
1638         * gtk/gtksettings.c (gtk_settings_class_init): Restore
1639         sane value for default double click time.
1640
1641         * tests/testtext.c (test_init): Really path to input modules.
1642
1643 2001-05-03  Sven Neumann  <sven@convergence.de>
1644
1645         * demos/testpixbuf-save.c: include target-specific headers as
1646         done in testpixbuf-drawable.c
1647
1648 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
1649
1650         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
1651         new_text_length appropriately when we run into the 
1652         size limit for the entry. (#53445, reported by Jeff Franks)
1653
1654         * tests/testgtk.c (create_entry): Remove most of the
1655         property toggle buttons. Replace with a "Props" button
1656         that brings up a property editor.
1657
1658         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
1659         Split the property editor code out for reuse, improve.
1660
1661 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
1662
1663         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
1664         trap errors around calls to XSetInputFocus since we have
1665         no way of knowing reliably whether we are viewable or
1666         not. (#53947)
1667
1668 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
1669
1670         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1671         fix bug in dropping columns.  Moving columns now basically works
1672         modula some fine tuning.
1673
1674 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
1675
1676         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
1677         autoscroll support.  It mostly works, but could use some fine
1678         tuning.
1679         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1680         Actually move the column.
1681
1682 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
1683
1684         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
1685           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
1686           New default theme! A slighly improved version of the 2.0 Raleigh
1687           theme, with Windows-esque focus/drawing default. 
1688           (GtkWidget::interior_focus defaults to TRUE.)
1689
1690         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
1691
1692 2001-04-30  Havoc Pennington  <hp@pobox.com>
1693
1694         * tests/testtext.c (line_numbers_expose): fix to work with
1695         gtk_paint_layout change
1696
1697 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
1698
1699         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
1700           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
1701           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
1702           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
1703
1704         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
1705           with GtkWidget::interior_focus = TRUE better.
1706
1707         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
1708         ::default_outside_border for more flexibility.
1709
1710         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
1711         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
1712         change that had to be made with g_object_get.
1713
1714 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
1715
1716         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
1717         (gtk_tree_view_move_column_after): Clean up interface. 
1718
1719 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
1720
1721         * gtk/gtkpacker.h:
1722         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
1723          to gtkenum.h.
1724
1725         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
1726         handled in switch).
1727
1728         * gtk/Makefile.am:
1729         (gtk.defs): generate enum portions with  glib-mkenums.
1730         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
1731         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
1732         
1733         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
1734         addition.
1735
1736         * docs/Changes-2.0.txt: keep a note on signal handlers now
1737         not getting emitted during the emission they were connected within.
1738
1739 2001-04-28  Havoc Pennington  <hp@pobox.com>
1740
1741         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
1742
1743 2001-04-24  Havoc Pennington  <hp@redhat.com>
1744
1745         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
1746         (gtk_text_layout_move_iter_to_next_line): fix these two for
1747         invisible text, lots of other stuff still hosed.
1748
1749         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
1750         new function, replaces the get/set palette stuff. This function 
1751         is intended for use by libgnomeui which should set the hook to a
1752         thing which sets the palette in GConf, and we need the
1753         GConf-to-xsettings proxy which will result in the change being
1754         propagated back to the GTK app.
1755
1756         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
1757         about unusable signals that it may be because the signal has 
1758         parameters.
1759
1760         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
1761         style, otherwise gtkrc.c won't know to create a new GtkStyle for
1762         it.
1763         (gtk_widget_modify_color_component): call
1764         gtk_widget_modify_style() so the rc style will get copied.
1765         (gtk_widget_modify_font): ditto
1766
1767         * gtk/gtkrc.c: make a couple variables static
1768
1769         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
1770         help button by default, since it does nothing
1771
1772         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
1773         around with UI
1774
1775         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
1776         so we can have tooltips
1777
1778         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
1779         can have tooltips
1780
1781         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
1782         GDK_ENABLE_BROKEN, because its memory behavior is completely
1783         hosed.
1784
1785         * gtk/gtknotebook.c: remove key press handler, replace with
1786         binding set, add numeric keypad support
1787
1788         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
1789
1790         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
1791
1792         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
1793         addition to plain Delete
1794
1795         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
1796         GDK_KP_Enter in addition to GDK_Return
1797
1798         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
1799         activate on entry instead of key press
1800         (gtk_font_selection_on_clist_key_press): get
1801         rid of this signal handler, not needed with new font sel.
1802
1803         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
1804         no-longer-needed emit_stop_by_name(), just return TRUE
1805
1806         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
1807         cruft, this widget is no longer focusable.
1808
1809         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
1810         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
1811         move_slider action signal, add binding set for vscale/hscale, in
1812         the process support numeric keypad
1813
1814         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
1815         make GDK_Return and GDK_KP_Enter activate the entry via 
1816         binding set, instead of hardcoded.
1817
1818 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
1819
1820         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
1821         code.  Some documentation added.
1822
1823 2001-04-27  Havoc Pennington  <hp@redhat.com>
1824
1825         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
1826
1827         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
1828
1829         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
1830         line/para separators
1831         (gtk_entry_create_layout): set single paragraph mode on the layout
1832
1833         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
1834         spacing between the image and label; instead, inside a button box 
1835         the button will get extra space that will go there, but if people 
1836         configure button box for 0 chubbiness, then there's no spacing.
1837
1838         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
1839         and min/max size style properties, so people can tune their
1840         chubbiness.
1841
1842         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
1843         functions
1844
1845         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
1846         space_style, and button_relief into style properties, remove
1847         functions for setting them
1848         
1849         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
1850         it back down
1851
1852         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
1853         types from gtk_widget_style_get
1854
1855         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
1856         with a style property.
1857
1858         * gdk/x11/gdkevents-x11.c: namespace the settings
1859
1860         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
1861
1862         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
1863         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
1864         be used. Also, translate doc strings for settings. Also, namespace
1865         the double-click-time property. Also, remove bell properties crap.
1866
1867 2001-04-27  Sven Neumann  <sven@gimp.org>
1868
1869         * Makefile.am: before creating links, check if pkg-config files
1870         exist for the default target. Otherwise link to the pkg-config files
1871         that got installed with this build.
1872
1873 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
1874
1875         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
1876         dragging code.  Revealed some (potential) GdkWindow bugs.
1877
1878         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
1879         _gdk_window_init_position to the end of reparent to fix the case
1880         of reparenting when new_x != old_x and new_y != old_y.
1881
1882 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
1883
1884         * gtk/gtkentry.c (strstr_len): Fix optimization that
1885         was correct for the use here, but completely incorrect
1886         in general.
1887
1888 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
1889
1890         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
1891         until patch adding gtk_window_set_size() is recommitted. 
1892
1893         * **Makefile.am configure.in gdk/x11/gdkim-11.c
1894           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
1895           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
1896           (#10784)
1897
1898 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
1899
1900         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
1901         window == NULL in a number of cases.
1902
1903         * tests/testdnd.c: Set module path for gdk-pixbuf.
1904
1905 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
1906
1907         * gtk/Makefile.am xembed.h: File containing #defines
1908         for XEMBED protocol.
1909
1910         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
1911
1912         - Change protocol from old plug/socket specific protocol
1913           to XEMBED draft
1914         - Various fixes to work with GTK+-2.0
1915
1916         Still quite a bit of work to do here to handle initiation
1917         from the socket side (as specified by XEMBED), to handle
1918         the more advanced features of XEMBED, and to figure out
1919         a good way to handle same-app embedding with less overhead
1920         than using full XEMBED.
1921
1922 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
1923
1924         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
1925         track of whether the toplevel has the focus; only send
1926         focus-in events to the focus widget when the window
1927         actually has the focus.
1928
1929 2001-04-25  Havoc Pennington  <hp@pobox.com>
1930
1931         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
1932         were still in the header
1933
1934 2001-04-24  Alexander Larsson  <alexl@redhat.com>
1935
1936         * gtk/gtkclist.[ch]:
1937         * gtk/gtkctree.c:
1938         When there is a row highlighted for D'n'D it must alse
1939         be painted hightlighted on exposes. Otherwise exposes from
1940         the icon being dragged will mess up the hightlight.
1941
1942         * gtk/gtkfontsel.c:
1943         Don't recenter selected font when exposing the font family
1944         clist. This means you can now actually scroll the font family
1945         list.
1946
1947         * gtk/gtknotebook.c:
1948         Fix focus movement on scrolling tabs that are placed on the left
1949         and right.
1950
1951 2001-04-21  Havoc Pennington  <hp@pobox.com>
1952
1953         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
1954         empty/invisible lines.
1955
1956         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
1957         (gtk_text_iter_set_visible_line_index): new functions to set
1958         indexes excluding invisible text
1959
1960         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
1961         index
1962
1963         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
1964         (gtk_text_iter_get_visible_line_offset): new functions to 
1965         get indexes excluding invisible text
1966
1967         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
1968         bunch of extra padding that served no purpose
1969
1970         * gtk/gtkdialog.c: Make all the spacings configurable via style
1971         properties, for chubbiness configuration in themes
1972
1973         * tests/testtext.c: fix path to the immodules.
1974         
1975 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
1976
1977         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
1978         got munched by #endif.
1979
1980         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
1981
1982         * gtk/gtktreeview.c: Refactored code to clean up a number of
1983         events.
1984
1985         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
1986         values to make consistent with other functions.  Spotted by Jeff
1987         Franks <jcf@tpg.com.au>.
1988
1989         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
1990         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
1991
1992 2001-04-23  Sven Neumann  <sven@gimp.org>
1993
1994         * gtk/Makefile.am
1995         * gtk/gtkplug.c
1996         * gtk/gtksocket.c: on request of Owen, reverted my last change 
1997         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
1998
1999 2001-04-23  Sven Neumann  <sven@gimp.org>
2000
2001         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
2002         compile for non-X11 targets again
2003
2004 2001-04-20  Alexander Larsson  <alexl@redhat.com>
2005
2006         * gtk/gtkcolorsel.[ch]:
2007         API Change. Take GdkColor arguments instead of gdouble *.
2008         Leave the old gtk_color_selection_set_color for compatibility,
2009         but marked deprecated.
2010         Do correct rounding when converting RGB <-> HSV.
2011         
2012         * gtk/gtkcolorseldialog.c:
2013         * tests/testgtk.c:
2014         Use new GtkColorSelection API.
2015
2016         * gtk/gtkhsv.c:
2017         Fix problem selecting colors in triangle when Hue is 330.
2018         Fix some black dots around the HSB triangle.
2019         
2020         * gtk/gtkfilesel.c:
2021         return FALSE from the focus_in_event handler to fix focus problems.
2022
2023 2001-04-18  Havoc Pennington  <hp@redhat.com>
2024
2025         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
2026         set, so keybindings are configurable    
2027         (gtk_window_activate_default): Change to activate the focus widget
2028         instead if there's a focus widget, to be consistent with the
2029         behavior that previously existed in key_press_event
2030
2031 2001-04-18  Havoc Pennington  <hp@redhat.com>
2032
2033         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
2034
2035 2001-04-18  Havoc Pennington  <hp@redhat.com>
2036
2037         Close bug #50615:
2038         
2039         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
2040         the layout
2041
2042         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
2043
2044         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
2045
2046         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
2047         
2048         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
2049         to blue for base, in addition to bg
2050         
2051 2001-04-18  Havoc Pennington  <hp@redhat.com>
2052
2053         * tests/testgtk.c (create_image): allow shrinking the image window
2054         to test that we clip to allocation.
2055
2056         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
2057         #9845
2058
2059         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
2060
2061 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
2062
2063         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
2064         mode on shm segments to 0600. We'll see who complains.
2065
2066         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
2067         _gdk_windowing_window_destroy() AFTER recursing through
2068         children.
2069
2070         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
2071         testsocket_child on X.
2072
2073         * tests/testsocket[_child].c: Fix uses of
2074         gtk_window_get_default_accel_group().
2075
2076         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
2077
2078         * gdk/gdkimage.c: (gdk_image_get):
2079         Deal with the possibility that XGetImage() might return NULL.
2080         Allocate the GdkImagePrivate structure only after XGetImage()
2081         succeeds in order not to dereference a NULL ximage pointer.  This
2082         prevents a core dump when XGetImage() fails - which is unlikely,
2083         but can happen due to race conditions accessing the geometries of
2084         drawables.  An x error will still be triggered, but the gdk image
2085         wrapper at least wont seg fault.
2086         
2087 2001-04-18  Havoc Pennington  <hp@redhat.com>
2088
2089         * gtk/gtkimage.c: fix to properly queue resizes when the image is
2090         set
2091
2092         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
2093         if the insertion point isn't editable
2094
2095         * demos/gtk-demo/images.c: Added a GtkImage demo
2096
2097         * demos/gtk-demo/drawingarea.c: drawing area demo
2098         
2099         * demos/gtk-demo/menus.c (create_menu): cleanups
2100
2101 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
2102
2103         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
2104           gdk/x11/gdkevents-x11.c: Introduce an extra child
2105         of toplevel windows that serves to hold the focus to
2106         avoid events being delivered to embedded windows.
2107
2108         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
2109         some extra variables to clean up code and reduce the
2110         number of casts.
2111
2112         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
2113         guint for 1 bit bit fields, not gboolean.
2114
2115 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
2116
2117         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
2118         not TRUE. (Fixes #52925)
2119
2120 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
2121
2122         * Released 1.3.4
2123
2124         * NEWS: Updated
2125
2126         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
2127         use GTK_TYPE_ENUM.
2128
2129 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
2130
2131         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2132
2133         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
2134         names to compatibility #defines so docs work.
2135
2136         * gtk/gtkenums.h: Remove GtkMenuFactoryType
2137
2138         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
2139
2140         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2141
2142         * tests/testgtkrc: No magenta cursors, please.
2143
2144         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
2145
2146         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
2147         
2148 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
2149
2150         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
2151         grabs, since they are no longer necessary.
2152
2153         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
2154         by signal_connect() and call gtk_button_pressed() rather
2155         than signal_connect_after().
2156
2157         * tests/testgtk.c: Restore radio menu items to combos 
2158         since they'll look OK with Raleigh, and it is easier
2159         than finishing the process of removing them that was
2160         started earlier.
2161
2162 2001-04-16  Hans Breuer  <hans@breuer.org>
2163
2164         * gdk/gdk.def :
2165         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
2166
2167         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
2168         we are interested in the functions return value not the function address
2169         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
2170
2171         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
2172
2173 2001-04-14  Hans Breuer  <hans@breuer.org>
2174
2175         * gdk/gdk.def :
2176         * gdk/makefile.msc : updated
2177
2178         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
2179         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
2180         (the testgtk::text backgound pixmap is drawn again)
2181         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
2182         Win32 Pango change
2183         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
2184
2185         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
2186         Not sure if the returned settings have the right unit, because I couldn't
2187         find any docs for the X version ...
2188
2189         * gtk/gtk.def :
2190         * gtk/makefile.msc.in : updated
2191
2192 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
2193
2194         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
2195         wording problems. (Compared to version from Johannes Stezenbach to
2196         check correctness.)
2197
2198 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
2199
2200         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
2201         this to compile.
2202
2203 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
2204
2205         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
2206         not pixbufpos.
2207
2208         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
2209
2210         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
2211         are unsigned insts, therefore use g_value_set_uint.
2212         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
2213
2214 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
2215
2216         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
2217
2218         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
2219         GTK_TYPE_STRING.
2220
2221         * gtk/gtktreeview.c: New functions to allow initial column
2222         dragging work.
2223
2224         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
2225
2226         * tests/testtreefocus.c: give dave some love.
2227
2228         * tests/testtreesort.c: Modify test to check really long samples.
2229
2230 2001-04-11  Alexander Larsson  <alexl@redhat.com>
2231
2232         * gtk-2.0.m4: Pass pkg-config options
2233         before the other args so it works even if
2234         POSIXLY_CORRECT is set.
2235
2236 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
2237
2238         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
2239         0, interface 0).
2240
2241 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
2242
2243         * gtk/gtkcalendar.c (gtk_calendar_button_press):
2244         check for action_func != NULL
2245
2246 2001-04-04  Sven Neumann  <sven@gimp.org>
2247
2248         * tests/testgtk.c (test_init): corrected path to gtk.immodules
2249
2250 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
2251
2252         * Released Gtk+-1.3.3.
2253
2254 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
2255
2256         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
2257
2258 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
2259
2260         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
2261         files to/from source dir. (if we don't stay in builddir, we
2262         can't reach make-inline-pixbuf.
2263
2264         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
2265         deps.
2266
2267         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
2268         ages 0).
2269
2270 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
2271
2272         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
2273         moved to the GtkTreeSortable interface.
2274
2275         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2276         Make more efficient (fixes #50262).
2277
2278 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
2279
2280         * NEWS: Updated.
2281
2282         * configure.in: Remove support for uninstalled glib.
2283
2284         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
2285         so as not to stop emission.
2286
2287         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
2288         is no longer supported.
2289
2290         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
2291         into tests, change build order to build modules before
2292         gtk/.
2293
2294         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
2295         to here.
2296
2297 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
2298
2299         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
2300         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
2301         GPatternSpec. this is actually unlikely to cause breakage in
2302         third-party apps since except for gle, pretty much ever caller
2303         passes NULL here.
2304
2305         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
2306
2307         * *.c: use g_pattern_*() API.
2308
2309         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
2310
2311         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
2312         directions aren't passed in.
2313
2314         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
2315         functionality to be usable from gtkstyle.c as well, give precedence
2316         for conversion to user-supplied parsers.
2317         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
2318
2319         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
2320         _gtk_settings_parse_convert() for rcporperty value conversion.
2321
2322 2001-04-03  Alexander Larsson  <alexl@redhat.com>
2323
2324         * gdk/linux-fb/gdkevents-fb.c:
2325         Add empty gdk_setting_get().
2326
2327 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
2328
2329         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
2330         variable names.
2331         
2332         * gtk/makeenums.pl: touch this so enum files get remade.
2333
2334 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
2335
2336         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
2337         work again when not sorted.
2338
2339         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
2340         and "expand_row" signal, closing bug 52578.
2341
2342         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
2343         support.
2344
2345         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
2346         support.
2347
2348 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2349
2350         * gdk/gdkevents.h: Add GdkEventSetting event for notification
2351         of changes to system settings, gdk_setting_get() to retrieve
2352         a single system setting.
2353
2354         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
2355         to the draft XSETTINGS mechanism.
2356
2357         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
2358         XSETTINGS.
2359
2360         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
2361         of GDK settings changes to the GtkSettings object.
2362
2363         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
2364         double-click-timeout property to GDK.
2365
2366         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
2367         Define GDK boxed types here.
2368
2369         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
2370         gdk/gdkenumtypes.[ch] for enum definitions.
2371
2372         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
2373         * gtk/gtk-boxed.defs: Comment out GDK types
2374         * gtk/gtktypeutils.h: Remove GDK types
2375         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
2376
2377 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
2378
2379         * Applied patch from Ron Steinke to add signal accumulators
2380         so that signals with the convention 'TRUE return means
2381         handled' stop emission on a TRUE return.
2382
2383         * gtk/gtkmain.[ch]: Add private accumulator 
2384         _gtk_boolean_handled_accumulator, used throughout GTK+.
2385         
2386         * gtk/gtkspinbutton.c: Add accumulator for ::output.
2387
2388         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
2389         
2390         * gtk/gtkwidget.c: Add accumulators for event signals,
2391         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
2392         for ::mnemonic-activate.
2393
2394         * gtk/gtkwindow.c: Add accumulator for ::frame_event
2395
2396 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
2397
2398         * gtk/gtkwidget.c: Add missing include.
2399
2400 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
2401
2402         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
2403         marshaller.
2404
2405         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
2406         "changed" signal to "range_changed".
2407
2408         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
2409         removing a tree from one model would remove all trees from that
2410         model.
2411         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
2412         changed signal instead.
2413
2414 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
2415
2416         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
2417         chaining up to parent impl, since we have a INPUT_ONLY
2418         window.
2419
2420         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
2421         foreground color for the cursor.
2422
2423 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
2424
2425         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
2426         param spec when caching property values, since we unref it
2427         later when we free the style.
2428
2429         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
2430         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
2431
2432 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
2433
2434         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
2435         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
2436         stupidity.
2437
2438 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
2439
2440         [ First pass at adding style properties. Still needs some definite
2441         fine-tuning. ]
2442
2443         * gtk/gtkbutton.c: Add ::default_spacing style property.
2444          
2445         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
2446         ::indicator_spacing style properties.
2447
2448         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
2449         style properties.
2450
2451         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
2452         rather than a normal property.
2453
2454         * gtk/gtkwidget.c: Add an ::interior_focus style property to
2455         draw focus inside buttons, in the Windows/Java Metal/etc. style.
2456
2457         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
2458         Honor ::interior_focus.
2459         
2460         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
2461         TRUE.
2462
2463         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
2464         Add ::slider_width, ::trough_border, ::stepper_size,
2465         ::stepper_spacing style properties.
2466
2467         * gtk/gtkscale.[ch] Add ::slider-length style property.
2468
2469 2001-04-02 Alexander Larsson   <alexl@redhat.com>
2470
2471         * gdk/linux-fb/gdkwindow-fb.c:
2472         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
2473         warnings that were spewed on startup.
2474
2475         * gtk/gtkwindow-decorate.c:
2476         gtk_window_reposition -> _gtk_window_reposition
2477
2478 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
2479
2480         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2481         Add boxed type for GtkRequistion. Use it for ::size-request.
2482
2483         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2484         Add a new GtkBorder structure useful for geometry properties
2485         for widgets. Add corresponding GTK_TYPE_BORDER.
2486         
2487         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
2488         Support automatic parser selection like
2489         gtk_settings_install_property_parser().
2490
2491         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
2492         functionality for use by gtk_widget_class_install_style_property.
2493         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
2494
2495 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
2496
2497         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
2498         g_param_spec_unichar(). 
2499
2500 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
2501
2502         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
2503         _NET window managers.
2504
2505         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
2506
2507 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
2508
2509         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
2510         bad needs to be nuked, not just deprecated.
2511
2512         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
2513         gtk_widget_popup().
2514
2515         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
2516         
2517         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
2518         widget.
2519         
2520         * docs/Changes-2.0.txt: updates.
2521         
2522 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
2523
2524         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
2525         for (i = 0; i < 100; i ++)
2526           g_print ("I will confirm it compile before committing\n");
2527
2528 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
2529
2530         * gtk/gtktreestore.c: Initial work on implementing the
2531         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
2532
2533 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
2534
2535         * gtk/gtkwidget.c: fixed a bunch of notifications, added
2536         reference counts around emissions where the widget is used afterwards.
2537         added freeze/thaws around multiple properties being notified.
2538         (_gtk_widget_get_aux_info): cleanups.
2539         
2540         * gtk/gtksettings.c (gtk_settings_install_property): provide
2541         default parsing functions for gdkcolor, enums and flags.
2542
2543         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
2544         applied by owen.
2545         backed out gtk_window_get_location(), gtk_window_set_location(),
2546         gtk_window_get_size() and gtk_window_set_size(), these
2547         have to be sorted out wrg x/y/width/height/default_with/default_height
2548         properties.
2549         kept a flag in GtkWindowGeometryInfo to handle user
2550         resetting default sizes.
2551         cleaned up ZVT comments.
2552         bunch of assorted bug fixes, notification fixes.
2553         (_gtk_window_reposition): make this a really internal function.
2554         
2555         * gtk/testgtk.c: fixups.
2556         
2557 2001-03-31  Hans Breuer  <hans@breuer.org>
2558
2559         * config.h.win32.in : disable USE_MMX for msvc build cause
2560         the assembler doesn't fit and is out of my scope. Disable
2561         USE_GMODULE for msvc build as wel. The right way to share
2562         binaries on win32 would be to use libtiff.dll etc. To reduce
2563         installation hassles IMO it's better to include all fileformats
2564         builtin to gdk-pixbuf
2565
2566         * gdk-pixbuf/makefile.msc : new file
2567
2568         * gdk/gdk.def : updated
2569
2570         * gdk/win32/gdkevents-win32.c : don't erase the background if
2571         .no_bg is set. It improves the scrolling (e.g. of testgtk main
2572         buttons
2573         * gdk/win32/gdkgeometry-win32.c : added comment about the above
2574
2575         * gdk/win32/gdkwindow-win32.c : added three new functions like
2576         the X version. Only one is implemented, because the other two
2577         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
2578         be default behaviour on win32 anyway ...
2579
2580         * gtk/gtk.def : updated
2581
2582         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
2583         from where it was built and add an additional rule to automagically
2584         build gtkmarshal.[hc]
2585
2586         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
2587         before array access for the current entry isn't finished
2588
2589         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
2590         use g_return_val_if_fail
2591
2592         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
2593         for the static array, but let the compiler calculate it. It
2594         makes me wonder if gcc isn't capable to catch bugs like this ...
2595
2596 2001-03-31  James Henstridge  <james@daa.com.au>
2597
2598         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
2599         constant "-1" in the aux info structure.
2600
2601 2001-03-30  Alexander Larsson  <alexl@redhat.com>
2602
2603         * gtk/gtkbutton.c (gtk_button_get_property):
2604         * gtk/gtklabel.c:
2605         Remove leaks.
2606         
2607         * gtk/gtkcontainer.c:
2608         * gtk/gtkhscale.c:
2609         * gtk/gtkhscrollbar.c:
2610         * gtk/gtklayout.c:
2611         * gtk/gtkmisc.c:
2612         * gtk/gtkprogress.c:
2613         * gtk/gtkprogressbar.c:
2614         * gtk/gtkrange.c:
2615         * gtk/gtktable.c:
2616         * gtk/gtkviewport.c:
2617         * gtk/gtkvscale.c:
2618         * gtk/gtkvscrollbar.c:
2619         * gtk/gtkwidget.c:
2620         Property patches, based on patches from John Margaglione and Lee Mallabone.
2621
2622 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
2623
2624         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
2625         adjustment. Cleaned redundant preconditions (spin != NULL). Added
2626         inline API function docs.
2627         (gtk_spin_button_new_with_range): New convenience constructor.
2628         (gtk_spin_button_set_increments): New adjustment helper.
2629         (gtk_spin_button_set_range): New adjustment helper.
2630
2631         * gtk/testgtk.c : added test of the new convenince constructor and
2632         value_changed signals.
2633
2634 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
2635
2636         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
2637         listen to the reorder signal.
2638
2639 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
2640
2641         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
2642         to get the aux info structure fo the widget.
2643
2644         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
2645         above function.
2646
2647         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
2648
2649         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
2650         to get the size of the window manager frame, basically the same
2651         code that gdk_window_get_root_origin() had
2652         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
2653
2654         * gtk/gtkwindow.c (gtk_window_set_default_size): use
2655         gdk_window_resize() if the window is realized and resizeable
2656
2657         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
2658         typo so that setting gravity works
2659
2660         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
2661         allocation if auto_shrink is on, even if the default size
2662         has not changed.
2663
2664         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
2665         g_return_if_fail
2666
2667 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
2668
2669         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
2670         reordering/sorting work.  Now pretty much works.
2671
2672         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
2673         reorder mostly work.  Still need to get the parity correct.
2674
2675         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
2676         signal, so I can listen for the sort_column_changed signal so I
2677         can change my "sort_indicator" property.  Cool.
2678
2679 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
2680
2681         [ Patch from Havoc Pennington, hp@redhat.com ]
2682
2683         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
2684         Add functions gdk_window_begin_resize_drag/begin_move_drag
2685         to start resizing or moving a toplevel window. This
2686         is done either using the _NET_WM_MOVERESIZE protocol,
2687         or, if that isn't present, by emulation.
2688
2689         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
2690         to export the above to GTK+-land.
2691
2692         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
2693         
2694         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
2695         Move this function into gdkwindow, since we need it
2696         when implementing fallback resizing.
2697
2698         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
2699         Fix typo when setting gravity.
2700
2701         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
2702         Add an optional (but on by default) resize grip for resizing 
2703         the parent window.
2704
2705 01-03-29  Alexander Larsson  <alexl@redhat.com>
2706
2707         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
2708         Don't return TRUE from the event handler, that blocks all
2709         event signals on the tooltip widget. Now you can press buttons
2710         in toolbars again.
2711
2712 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
2713
2714         * gtk/testtext.c (create_buffer): Add missing NULL on
2715         valist.
2716
2717         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
2718         c-n-p problem with INCONSISTENT property.
2719
2720         [ Patch from Havoc Pennington  <hp@redhat.com> ]
2721
2722         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
2723         hook.
2724
2725         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
2726         signal as a hook for extending the default popup menu
2727
2728         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
2729         use radio menu items for the input method menuitems
2730
2731         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
2732         inserted unicode from Ctrl-Shift-hex input method
2733
2734         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
2735         validatation here, already done at GtkTextBuffer level.
2736
2737         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
2738         popup_menu run action signal and Shift+F10 and Menu keybindings.
2739
2740         * gtk/gtkentry.c: implement a default handler for popup_menu
2741
2742         * gtk/gtktextview.c: implement a default handler for popup_menu
2743
2744         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
2745         from a key event
2746         
2747         * gtk/gtklabel.c: remove "trailer" cruft
2748
2749 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
2750
2751         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
2752         handle reordering of trees.  Seems to mostly work w/ the exception
2753         of the parity flag.
2754
2755         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
2756         signal.
2757
2758 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
2759
2760         * gtk/gtkwidget.h: c++ fixes.
2761
2762 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
2763
2764         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
2765         memory.
2766
2767 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
2768
2769         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
2770         Nils Barth fixing event return values. (#51041)
2771
2772         * gtk/gtkwidget.c: Fix some return values for default
2773         functions.
2774
2775         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
2776         return values for trough_keys functions.
2777
2778         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
2779         value for add_accelerator (shoudl have been a void
2780         return.)
2781
2782         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
2783         Fix return type of EVENT.
2784
2785         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
2786         signal return a boolean.
2787
2788 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
2789
2790         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
2791         reordered signal.
2792
2793         * tests/testtreesort.c (main): fix spelling.
2794
2795 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
2796
2797         * gtk/gtkliststore.c: More work on implementing sortable
2798         interface.
2799
2800 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
2801
2802         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
2803         reference the widgets in the resulting list. (#11821)
2804         This makes this consistent with gtk_container_children.
2805
2806         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
2807         uses of gtk_window_list_toplevels.
2808
2809 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
2810
2811         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
2812         a virtual function to set whether the IM context should use 
2813         the preedit string. (#51922)
2814         
2815 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
2816
2817         * gdk/gdkpango.h: Remove stale FIXME comment.
2818
2819 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
2820
2821         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
2822         Fixed bug that returned NULL if a filename was selected.
2823
2824 2001-03-24  Havoc Pennington  <hp@pobox.com>
2825
2826         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
2827         to contain the word "theme"
2828
2829 2001-03-24  Havoc Pennington  <hp@pobox.com>
2830
2831         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
2832         slower but finer-grained
2833         (gtk_hsv_focus): get initial focus on the ring or triangle 
2834         according to tab direction
2835
2836         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
2837
2838 2001-03-23  Havoc Pennington  <hp@pobox.com>
2839
2840         * gtk/gtkhsv.c: make this somewhat key-navigable
2841
2842         * gtk/gtkfontsel.c: mnemonics
2843
2844         * gtk/gtkgamma.c: mnemonics
2845
2846         * gtk/gtkcolorsel.c: add mnemonics to labels
2847
2848 2001-03-22  Havoc Pennington  <hp@pobox.com>
2849
2850         Applied big patch from Seth Lytle to fix event handler return
2851         values, slightly modified.
2852
2853         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
2854         handled.
2855         (gtk_calendar_key_press): return TRUE for GDK_space triggers
2856         select_day
2857
2858         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
2859         (gtk_clist_button_release): return TRUE if handled
2860
2861         * gtk/gtkcolorsel.c (mouse_release):
2862         (palette_activate): 
2863         (palette_press): 
2864         (palette_new): 
2865         (mouse_press): 
2866         (get_screen_color): 
2867         fixed return type (void to gboolean), return TRUE,
2868         added GTK_SIGNAL_FUNC cast
2869
2870         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
2871         (void to gboolean), and return TRUE
2872         (gtk_combo_button_release): changed return value to TRUE after
2873         gtk_grab_add on combo->popwin
2874
2875         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
2876         collapse or expand
2877
2878         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
2879         button/motion
2880
2881         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
2882         press/release and motion that trigger act
2883
2884         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
2885
2886         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
2887         for GDK_Return
2888         
2889         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
2890         (gtk_list_button_release): return TRUE if selection
2891
2892         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
2893         press
2894
2895         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
2896         (gtk_menu_shell_button_release): chain parent_menu_shell retval
2897
2898         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
2899         nothing triggered
2900         (gtk_notebook_button_release): return TRUE if we do anything
2901
2902         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
2903         (gtk_spin_button_button_release): return TRUE or chained retval
2904
2905         * gtk/gtktext.c (gtk_text_button_press): 
2906         (gtk_text_button_release): return TRUE
2907         (gtk_text_key_press): remove redundant retval code
2908         
2909         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
2910         and sensitive
2911         (gtk_tree_item_subtree_button_click): changed type to gint, and return
2912         TRUE if sensitive
2913
2914         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
2915         return TRUE
2916
2917 2001-03-23  Havoc Pennington  <hp@redhat.com>
2918
2919         * gtk/testgtk.c: fix warnings
2920
2921         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
2922
2923         * gtk/gtktextview.c: fix warnings
2924
2925         * gtk/gtktext.c (find_cursor_at_line): fix warning
2926
2927         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
2928
2929         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
2930         of this function
2931
2932         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
2933         fix warning
2934
2935         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
2936
2937         * gtk/gtkfontsel.c: fix warning
2938
2939         * gtk/gtkcolorsel.c: fix warnings
2940
2941 2001-03-23  Havoc Pennington  <hp@redhat.com>
2942
2943         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
2944
2945         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
2946
2947         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
2948         and deprecated gtk_check_menu_item_set_show_toggle().
2949         
2950         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
2951
2952         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
2953
2954         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
2955
2956 2001-03-23  Havoc Pennington  <hp@redhat.com>
2957
2958         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
2959         some docs
2960
2961 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
2962
2963         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
2964         this.
2965
2966         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
2967         set_cell to set_value
2968
2969         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
2970         set_cell to set_value
2971
2972 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
2973
2974         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
2975         fix braino.
2976         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
2977         support.
2978
2979         * gtk/gtktreeview.c: Addition of initial sortable support.
2980
2981         * gtk/gtktreestore.c: Addition of initial sortable support.
2982
2983         * gtk/gtkliststore.c: Addition of initial sortable support.
2984
2985         * gtk/gtkmarshal.list: yet another marshaller.
2986
2987         * gtk/gtktreedatallist.[ch]: shared code between the store models
2988         for handling sorting headers.
2989
2990 2001-03-22  Havoc Pennington  <hp@redhat.com>
2991
2992         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
2993         (gtk_container_unset_focus_chain): Add ability to override the 
2994         focus chain for a container explicitly
2995
2996 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
2997
2998         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
2999         added PROP_MNEMONIC_WIDGET.
3000
3001         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
3002         (gtk_window_remove_mnemonic): 
3003         (gtk_window_add_mnemonic): fixed assertions.
3004         (gtk_window_activate_mnemonic): constrain modifier checks to those
3005         permitted by gtk_accelerator_get_default_mod_mask().
3006         got rid of gtk_window_get_default_accel_group().
3007
3008         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
3009         activatable widgets either by focussing or a warning.
3010         added a signal accumulator to ::activate_mnemonic which stops the
3011         emission once a handler returned TRUE.
3012
3013 2001-03-22  Havoc Pennington  <hp@pobox.com>
3014
3015         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
3016         the stock item label
3017
3018         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
3019
3020         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
3021
3022         * demos/gtk-demo/*.c: Add mnemonics all over the place
3023
3024         * gtk/gtklabel.h: mark parse_uline deprecated
3025
3026 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3027
3028         * gtk/gtkitemfactory.[ch]:
3029         Add support for stock and normal imagemenuitems.
3030         
3031         * gtk/testgtk.c:
3032         Add some tests for mnemonics, stock toolbars, stock
3033         and image menuitems in itemfactory and gdk_window_scroll.
3034
3035 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3036
3037         * gtk/gtkbutton.[ch]:
3038         * gtk/gtkdialog.c:
3039         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
3040         removed accel_group argument. Renamed gtk_button_new_accel() to
3041         gtk_button_new_with_mnemonic() and removed accel_group argument.
3042
3043         * gtk/gtkcheckbutton.[ch]:
3044         New function gtk_check_button_new_with_mnemonic().
3045
3046         * gtk/gtkentry.c:
3047         Override activate_mnemonic and just grab focus.
3048
3049         * gtk/gtkitemfactory.c:
3050         Don't add menu uline accel group, instead use mnemonics support.
3051
3052         * gtk/gtklabel.[ch]:
3053         New support for mnemonics.
3054
3055         * gtk/gtkmarshal.list:
3056         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
3057
3058         * gtk/gtkmenu.[c]:
3059         * gtkmenushell.c:
3060         Use mnemonics instead of accel groups for uline
3061         support in menu items.
3062         Removed gtk_menu_get_uline_accel_group() and
3063         gtk_menu_ensure_uline_accel_group().
3064
3065         * gtk/gtkmenuitem.c:
3066         Override activate_mnemonic to handle switching between
3067         menu items if there are collisions.
3068         
3069         * gtk/gtknotebook.c:
3070         Connect to activate_mnemonic on the tab_label, so that
3071         activating it switches to that notebook page.
3072
3073         * gtk/gtkwidget.[ch]:
3074         Add activate_mnemonic signal. New function
3075         gtk_widget_activate_mnemonic() to emit it.
3076         Default implementation does activate/grab_focus.
3077
3078         * gtk/gtkwindow.[ch]:
3079         Add support for mnemonics in windows.
3080         New functions:
3081         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
3082         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
3083
3084         * gtk/testgtk.c:
3085         Update to function name changes.
3086         
3087 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3088
3089         * gtk/gtkimagemenuitem.[c]:
3090         Add gtk_image_menu_item_new_from_stock()
3091
3092 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
3093
3094         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3095         Fix buglet in meeting.
3096
3097 2001-03-19  Havoc Pennington  <hp@redhat.com>
3098
3099         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
3100         add a bunch of accessor functions. This is because we have
3101         reasonable expectations of extending what fields it contains in
3102         the future.
3103
3104         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
3105         changes
3106
3107         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
3108         GtkIconSource   
3109
3110 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
3111
3112         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
3113         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
3114
3115         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
3116           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
3117           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
3118           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
3119         Change float to double everywhere with the exception of 0<->1.0 alignment
3120         and GtkCurve.
3121
3122 2001-03-19  Tor Lillqvist  <tml@iki.fi>
3123
3124         * gdk/win32/gdkdrawable-win32.c
3125         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
3126         output.
3127
3128         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
3129         gdkwin32.h.
3130
3131 2001-03-18  Tor Lillqvist  <tml@iki.fi>
3132
3133         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
3134         print_event_state, print_event): Use preprocessor macro to make
3135         code more compact. Print also GDK_WINDOW_STATE events.
3136         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
3137         
3138         * gtk/gtk.def
3139         * gtk/makefile.mingw.in: Update.
3140
3141         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
3142         to catch also Cygwin.
3143
3144 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
3145
3146         * gtk/gtkspinbutton.[hc]: added rc-style argument
3147         GtkSpinButton::shadow_type.
3148         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
3149         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
3150         rc-style settings.
3151
3152         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
3153
3154         * gtk/gtkwidget.c: quark cleanups.
3155
3156         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
3157         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
3158         to create_rc_style() (we don't do cloning in standard OO sense).
3159         added per rc style properties.
3160         
3161         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
3162         property values and for caching those. some cleanups.
3163         
3164         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
3165         
3166         * gtk/gtksettings.[hc]: new file for global rc-file properties
3167         (at least currently, should get extended to support X properties
3168         and other communication mechanisms).
3169         
3170         * gtk/gtkwidget.[hc]: added style property support:
3171         (gtk_widget_class_install_style_property_parser): install style
3172         property pspec with parser function for rc-file values other
3173         than LONG, DOUBLE or STRING.
3174         (gtk_widget_class_install_style_property): same as above without
3175         parser (parsers are going to be needed quite infrequently).
3176         (gtk_widget_style_get_property): retrive style property value.
3177         (gtk_widget_style_get_valist): same as above with varargs support,
3178         has NOCOPY semantics.
3179         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
3180
3181 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
3182
3183         * demos/gtk-demo/main.c (row_activated_cb): modified to use
3184         "row_activated" signal.
3185
3186         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
3187         stupidity.  Lets actually pass in the row with this signal...
3188
3189 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
3190
3191         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
3192
3193         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
3194
3195         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
3196         everything into the ::destroy function, and freed a lot more.
3197
3198 2001-03-16  Havoc Pennington  <hp@redhat.com>
3199
3200         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
3201         instead of gint16, to avoid overflow issues, since sizes > 16-bit
3202         are now allowed.
3203
3204 2001-03-16  Havoc Pennington  <hp@redhat.com>
3205
3206         * Applied patch from Nils Barth (bug # 51041) to 
3207         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
3208         in various places.
3209
3210 2001-03-15  Havoc Pennington  <hp@redhat.com>
3211         
3212         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
3213         for properties to set on the tag.
3214
3215         * gtk/testtext.c: fixups to reflect create_tag change
3216         
3217         * gtk/gtktexttag.c (gtk_text_tag_set_property):
3218         background/foreground stipple are objects, not boxed.
3219
3220         * demos/gtk-demo/textview.c: intellihancing
3221
3222 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
3223
3224         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
3225         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
3226
3227 2001-03-16  Alexander Larsson  <alexl@redhat.com>
3228
3229         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
3230         Fix sign error with queued region translations.
3231
3232 2001-03-15  HideToshi Tajima  <tajima@happy>
3233
3234         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
3235         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
3236         * gtk/gtkentry.c (update_im_cursor_location): 
3237         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
3238         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
3239         set_cursor_pos to set_cursor_location in GtkInputContext class
3240
3241 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
3242
3243         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
3244         the location of the cell relative to its area.
3245         * gtk/gtkcell*: modified for above change
3246         * gtk/gtktreeview.c: modified for above change.
3247
3248 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
3249
3250         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
3251          (gtk_tree_view_finalize): actually unref the model.  Thanks to
3252         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
3253
3254 2001-03-14  Havoc Pennington  <hp@redhat.com>
3255
3256         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
3257         
3258         * gtk/gtk.h: remove gtkdata.h
3259
3260         * gtk/Makefile.am: remove gtkdata
3261         
3262         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
3263         not "disconnect" on the adjustments.
3264         
3265         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
3266         GtkData
3267
3268         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
3269         not GtkData
3270
3271         * configure.in: handle case where X render exists, but Pango lacks
3272         Xft support.
3273
3274 2001-03-15 Alexander Larsson  <alexl@redhat.com>
3275
3276         * gtk/gtktoolbar.[ch]:
3277         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
3278         to add stock items to toolbars.
3279
3280         * gtk/Makefile.am:
3281         Remove ../gdk/gdkim.h from gdk_headers.
3282
3283 2001-03-15  Sven Neumann  <sven@gimp.org>
3284
3285         * gdk/gdkim.h: removed
3286         
3287         * gdk/gdkprivate.h
3288         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
3289
3290 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
3291
3292         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
3293         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
3294         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
3295         set_cursor_pos() virtual method
3296
3297         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
3298         (gtk_im_context_xim_set_cursor_pos): add implementation for
3299         set_cursor_pos() method
3300
3301         * gtk/gtkentry.c (recompute_idle_func): set current cursor
3302         position to input methods
3303
3304 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
3305
3306         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
3307         code a lot.
3308
3309         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
3310         g_mem_chunk.
3311         (_gtk_tree_data_list_alloc): use g_mem_chunk.
3312         (_gtk_tree_data_list_node_to_value): Fix to switch on
3313         G_TYPE_FUNDAMENTAL.
3314         (_gtk_tree_data_list_value_to_node): Fix to switch on
3315         G_TYPE_FUNDAMENTAL.
3316         (_gtk_tree_data_list_node_copy): Fix to switch on
3317         G_TYPE_FUNDAMENTAL.
3318
3319 2001-03-12  Havoc Pennington  <hp@redhat.com>
3320
3321         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
3322         to convert to new property API. Also, change default_width and
3323         default_height get_property to return 0 as the flag value for
3324         "unset"; -1 is not a valid value for these fields.
3325
3326 2001-03-12  Havoc Pennington  <hp@redhat.com>
3327
3328         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
3329         enum with registration for icon sizes, instead of strings.
3330
3331         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
3332         gtkwidget.c: Fix to reflect GtkIconSize
3333         
3334 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3335
3336         Make GtkFB compile and link.
3337         
3338         * gdk/linux-fb/gdkdrawable-fb2.c:
3339         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3340         
3341         * gdk/linux-fb/gdkwindow-fb.c:
3342         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3343         Added gdk_window_shape_combine_region.
3344         Added assorted placeholders for unimplemented new GdkWindow API calls.
3345
3346 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3347
3348         * gtk/gtkfilesel.c:
3349         Add more test when converting filenames from/to utf-8.
3350         Don't allow entering text in the filename entry which isn't allowed in
3351         a filename. Just beep instead.
3352
3353 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3354
3355         * gtk/gtkclist.c:
3356         Scroll using gdk_window_scroll(). Don't wait for exposes.
3357         Move the column headers in an order that makes them flash less.
3358
3359 2001-03-10  Hans Breuer  <hans@breuer.org>
3360
3361         * gdk/gdk.def : updated
3362
3363         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
3364         to offseting the clip_mask at the right place
3365
3366         * gdk/win32/gdkwindow-win32.c : don't create background brushes
3367         for all the gdkClasses, especially not for the input_only case.
3368         Otherwise flickering wont be avoidable, because we don't get
3369         WM_ERASEBKGND message for these windows.
3370
3371         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
3372         and fixed massive redraw problems apparently triggered by Alexanders 
3373         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
3374         but it seems to work quite well :-)
3375
3376         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
3377         prototype
3378
3379 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
3380
3381         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
3382         (gtk_list_store_set_cell): Fix a stupid typo.
3383
3384 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
3385
3386         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
3387         select_all not work if you're in SINGLE mode (it doesn't make that
3388         much sense, anyway.)
3389
3390         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3391         handle types more sanely.
3392         (_gtk_tree_data_list_value_to_node): handle types more sanely.
3393         (_gtk_tree_data_list_node_copy): handle types more sanely.
3394
3395         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
3396         GValue better. Converts the type as well.
3397
3398         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
3399         GValue better. Converts the type as well.
3400
3401 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
3402
3403         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
3404         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
3405         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
3406         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
3407
3408         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
3409         gdk_im/gdk_ic.
3410
3411 2001-03-09  Hans Breuer  <hans@breuer.org>
3412
3413         * gdk/gdk.def : updated
3414
3415         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
3416         for their palette
3417
3418         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
3419         removing
3420
3421         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
3422         removing and implemented Havoc's GdkWindow state functions; 
3423         stick/unstick only as no-op, cause I don't know how to emulate 
3424         on win32 ...
3425
3426         * gtk/gtk.def : updated
3427
3428         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
3429
3430         * gtk/gtktypeutils.c : #include <string.h>
3431
3432         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
3433
3434 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
3435
3436         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
3437         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
3438         not a boxed.
3439
3440 2001-03-09  Alexander Larsson  <alexl@redhat.com>
3441
3442         * docs/Changes-2.0.txt:
3443         Document expose event->region change and that gtk_widget_event
3444         doesn't allow passing expose events.
3445
3446         * gdk/gdkevents.h:
3447         Add region to expose event.
3448         
3449         * gdk/gdkevents.c:
3450         Handle event->region in gdk_event_copy() and gdk_event_free().
3451
3452         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
3453         Generate expose_event->region when creating expose events.
3454
3455         * gdk/x11/gdkevents-x11.c:
3456         Generate expose events with regions when translating X events.
3457
3458         * gtk/gtkcontainer.[ch]:
3459         Default expose handler that propagates expose events to NO_WINDOW
3460         children. New function gtk_container_propagate_expose()
3461
3462         * gtk/gtkwidget.[ch]:
3463         Moved gtk_widget_event implementation to gtk_widget_event_internal.
3464         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
3465         expose events. New function gtk_widget_send_expose() to send expose
3466         events. New function gtk_widget_region_intersect() to calculate
3467         window/region intersections.
3468         
3469         * gtk/gtkmain.c (gtk_main_do_event):
3470         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
3471         Use gtk_widget_send_expose() to send expose events.
3472         
3473         * gtk/gtkbin.c:
3474         * gtk/gtkbox.c:
3475         * gtk/gtkfixed.c:
3476         * gtk/gtkimagemenuitem.c:
3477         * gtk/gtklist.c:
3478         * gtk/gtkpacker.c:
3479         * gtk/gtktable.c:
3480         * gtk/gtktree.c:
3481         Remove expose handler, using the default container implementation
3482         instead.
3483         
3484         * gtk/gtkbutton.c:
3485         * gtk/gtkcheckbutton.c:
3486         * gtk/gtkeventbox.c:
3487         * gtk/gtkfixed.c:
3488         * gtk/gtkhandlebox.c:
3489         * gtk/gtklayout.c:
3490         * gtk/gtklistitem.c:
3491         * gtk/gtkmenu.c:
3492         * gtk/gtkmenubar.c:
3493         * gtk/gtkmenuitem.c:
3494         * gtk/gtknotebook.c:
3495         * gtk/gtkoptionmenu.c:
3496         * gtk/gtkpaned.c:
3497         * gtk/gtkscrolledwindow.c:
3498         * gtk/gtktogglebutton.c:
3499         * gtk/gtktoolbar.c:
3500         * gtk/gtktreeitem.c:
3501         * gtk/gtkviewport.c:
3502         Chain expose handler to parent class handler. Use
3503         gtk_container_propagate_expose() to propagate exposes.
3504
3505         * gtk/gtkclist.c (check_exposures):
3506         * gtk/gtktext.c (process_exposes):
3507         Use gtk_widget_send_expose instead of gtk_widget_event.
3508
3509 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
3510
3511         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
3512
3513 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
3514
3515         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
3516         unref the nodes.   Fixes bug #50058.
3517
3518         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
3519         "::ref_iter" to "::ref_node".
3520         (gtk_tree_model_unref_node): change "::unref_iter" to
3521         "::unref_node". Fixes bug #50064.
3522
3523 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
3524
3525         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
3526         support for invisible cells.
3527          (gtk_tree_view_bin_expose): ditto
3528
3529 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
3530
3531         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
3532         on gobjects.
3533
3534         * tests/testtreefocus.c (main): New test file.
3535
3536         * tests/testtreeview.c: update to latest glib changes.
3537
3538         * tests/testtreecolumns.c: update to latest glib changes.
3539
3540 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
3541
3542         * gtk/testgtk.c: re-enabled event watcher emission hooks.
3543
3544 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
3545
3546         * *.c: added accumulator data argument to g_signal_newc()
3547         functions.
3548
3549         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
3550         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
3551         * gtk/treestoretest.c (make_window):
3552         s/g_signal_connect/g_signal_connectc/.
3553
3554         * gtk/gtktextbuffer.c: completed signal arg fixups,
3555         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
3556
3557 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
3558
3559         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
3560         G_CONST_RETURN.
3561
3562         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
3563         ::hierarchy-changed signal when a widget changes
3564         from anchored to unanchored or vice versa.
3565         (anchored means 
3566          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
3567         Use a private flag to keep track of this efficiently.
3568
3569 2001-03-07  Havoc Pennington  <hp@redhat.com>
3570
3571         * gtk/testgtk.c (create_spins): uglify so that size request gets
3572         tested.
3573
3574         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
3575         request on values for upper/lower, completes #6152
3576
3577 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
3578
3579         * Makefile.am: Remove gtk-config-2.0 again.
3580         (Grrrr, pkg-config. And stops make loops.)
3581
3582 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
3583
3584         * gtk/gtksignal.[hc]: removed old emission hook API.
3585         
3586         * docs/Changes-2.0.txt: fixed sections.
3587         
3588         * gtk/gtktextbuffer.c: signal arg fixups.
3589
3590 2001-03-07  Havoc Pennington  <hp@redhat.com>
3591
3592         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
3593
3594         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
3595         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
3596         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
3597         validation and the redraw which is higher priority than the
3598         validation.
3599
3600 2001-03-07  Havoc Pennington  <hp@redhat.com>
3601
3602         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
3603         (gtk_entry_set_property): remove trailer
3604
3605         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
3606         (gtk_entry_get_width_chars): new functions, to set size request to 
3607         a given number of characters
3608
3609         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
3610
3611         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
3612         (gtk_dialog_get_has_separator): new function
3613         (run_delete_handler): fix to not emit "response" signal
3614         because we already did in the delete event handler installed
3615         at dialog creation time.
3616         
3617         * gtk/gtkdialog.h: add a has_separator property,
3618         add GTK_DIALOG_NO_SEPARATOR flag
3619
3620 2001-03-07  Havoc Pennington  <hp@redhat.com>
3621
3622         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
3623         off decorations for a window.
3624
3625         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
3626         changes
3627
3628         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
3629         to get location of PangoLayout inside the label, closes #51198
3630
3631         * gtk/testgtk.c (create_bbox): fix up button box usage
3632
3633         * gtk/testcalendar.c (create_calendar): fix up button box usage
3634
3635         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
3636
3637         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
3638
3639         * gtk/gtkhbbox.h: deprecations
3640
3641         * gtk/gtkvbbox.h: deprecations
3642
3643         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
3644         emulate deprecated gtk_button_box_get_spacing
3645
3646         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
3647         the "set global default" functions
3648         (struct _GtkButtonBox): remove "spacing" field, use the one from 
3649         GtkBox base class
3650
3651         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
3652
3653         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
3654         render the icon, return the missing image icon.
3655
3656         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
3657         image icon if the load fails.   
3658
3659         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
3660         when no image is found; should be the Netscape "missing image"
3661         icon eventually but for now is a random image
3662
3663         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
3664         role for the session manager
3665
3666         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
3667
3668         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
3669         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
3670
3671         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
3672
3673 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
3674
3675         * gtk/*.c: marshaller fixes.
3676         
3677         * gtk/gtkmarshal.list: extreme cleanup.
3678
3679         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
3680         param spec for now.
3681
3682         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
3683         where appliable.
3684
3685         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
3686         special cased autogenerated boxed types from gtktypebuiltins_ids.c
3687         which are not reference counted:
3688         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
3689         PangoFontDescription, GtkTreeIter and GtkTreePath.
3690
3691 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
3692
3693         * gtk/gtktreeselection.h: 
3694         * gtk/gtktreemodel.c:
3695         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
3696         file should be included directly, and gobject/gmarshal.h
3697         as well as gtk/gtkmarshal.h even can't be included directly.
3698
3699         * Makefile.am: grr, install gtk-config-2.0.
3700
3701         * gtk/testgtk.c:
3702         * gtk/simple.c:
3703         * gtk/gtkmenu.c:
3704         * gtk/gtkitemfactory.c: use g_object_connect() instead of
3705         passing "*signal*::*" args to gtk_widget_set().
3706         
3707         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
3708         
3709         * gtk/*.c: removed trailer arg from property setters and getters.
3710         macro fixups.
3711
3712 2001-03-07  Alexander Larsson  <alexl@redhat.com>
3713
3714         * gtk/gtklabel.c (set_markup): Removed warning
3715
3716 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
3717
3718         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
3719         field to allow you to hide cell renderers.
3720
3721         * gtk/gtkcellrenderer.c: Add support for invisible cells.
3722
3723         * gtk/gtktreeview.c: Add support for invisible cells.
3724
3725 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
3726
3727         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
3728         Add "clicked" signal back to columns.
3729
3730         * ChangeLog: remove conflict markers.
3731
3732 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
3733
3734         * gtk/gtkbutton.c: Add animation of activation by, on 
3735         activate, pressing the button, and adding a timeout that 
3736         releases the button after 250ms or on key release and
3737         emits ::clicked. (#51501)
3738
3739         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
3740         action area, we connect to ::clicked instead of ::activate
3741         so the dialog stays up through the animation.
3742
3743 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
3744
3745         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
3746         check the ignore_enter flag for the menu shell that
3747         the item is actually a child of, not for attached
3748         submenus. (#51536)
3749
3750 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
3751
3752         * gtk/gtkmain.c (gtk_propagate_event): Only do special
3753         special key-press grab handling for widgets within
3754         GtkWindows. Otherwise, fall through to normal case.
3755
3756         This prevents key events being sent twice to GtkInvisible
3757         widgets, which can cause all sorts of mischief.
3758
3759 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
3760
3761         * gtk/gtkmain.c (gtk_propagate_event): When a grab
3762         widget is in effect, give the grab widget a first
3763         crack at KEY_PRESS/RELEASE events. (#424)
3764
3765 2001-03-06  James Henstridge  <james@daa.com.au>
3766
3767         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
3768         offset for the window_state_event to point at window_state_event
3769         rather than no_expose_event.
3770
3771 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
3772
3773         * gtk/gtkimmodule.h: fix busted /* comment */
3774
3775 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
3776
3777         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
3778         object properties.
3779
3780 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
3781
3782         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
3783         add object properties.
3784
3785         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
3786         to add object properties.
3787
3788         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
3789         object properties.
3790
3791         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
3792         add object properties.
3793
3794         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
3795         object properties.
3796
3797 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
3798
3799         * gtk/gtktreemodel.c: renamed "child_toggled" to
3800         "has_child_toggled".
3801
3802         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
3803         handle new signal name.
3804
3805         * gtk/gtktreestore.c: Updated to handle new signal name.
3806         * gtk/gtklisttore.c: Updated to handle new signal name.
3807         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
3808
3809 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3810
3811         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
3812         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
3813
3814 2001-03-05  Michael Natterer  <mitch@gimp.org>
3815
3816         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
3817         pixbuf-engine coincidentially also failed to make one of it's
3818         parent_class pointers static, causing overwriting of GtkLabel's
3819         parent_class pointer in pixbuf_style_class_init().
3820         (Will commit the fix to the pixbuf-engine too).
3821
3822 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3823
3824         * gdk/gdkwindow.h:
3825         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
3826         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
3827         gdk_window_set_icon_list for net wmspec functionality.
3828
3829         * gdk/x11/gdkwindow-x11.c:
3830         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
3831         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
3832         gdk_window_set_icon_list.
3833         Added gdk_wmspec_change_state helper function and used it in the code.
3834         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
3835
3836         * gtk/gtkdialog.c (gtk_dialog_init):
3837         Set GDK_WINDOW_TYPE_HINT_DIALOG.
3838
3839         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
3840         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
3841
3842         * gtk/gtkwindow.c:
3843         new function gtk_window_set_type_hint.
3844         On realize, set type hint and modal hint.
3845
3846         * gtk/gtkwindow.h:
3847         Added type_hint field and gtk_window_set_type_hint.
3848
3849 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3850
3851         * gtk/gtklabel.[ch]:
3852         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
3853         New function gtk_label_get_accel_keyval () to get the underline accelerator
3854         of the label. Setting the label pattern overrides other attributes.
3855
3856 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
3857
3858         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
3859         Added missing initializers to gtk_rc_style_init().
3860
3861 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
3862
3863         * gtk/gtktextview.c: fixed bug #51097 about setting 
3864         gtk_text_view_set_border_window_size() if the widget is 
3865         already realized.
3866
3867 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
3868
3869         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
3870
3871         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
3872         comment. Won't do to have duplicated doc comments between
3873         the platform subdirs.
3874
3875 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
3876
3877         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
3878           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
3879
3880         Detectable auto-repeat - make a repeating key generate
3881         press/press/press/release instead of press/release pairs.
3882
3883         If we have Xkb and XkbSetDectableAutoRepeat supports
3884         that, we do it that way. Otherwise, when we get
3885         a release event, we check ahead with XPending to see
3886         if the next key is a KeyPress with the same keycode
3887         and timestamp. (Not 100% reliable, but pretty close.)
3888           
3889 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
3890         
3891         * gtk/gtkmain.c (gtk_propagate_event): Only do special
3892         special key-press grab handling for widgets within
3893         GtkWindows. Otherwise, fall through to normal case.
3894  
3895         This prevents key events being sent twice to GtkInvisible
3896         widgets, which can cause all sorts of mischief.
3897  
3898 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
3899  
3900         * gtk/gtkmain.c (gtk_propagate_event): When a grab
3901         widget is in effect, give the grab widget a first
3902         crack at KEY_PRESS/RELEASE events. (#424)
3903  
3904 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
3905
3906         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
3907         to extend the selection. (Roughly based on patch
3908         from Jay Cox, #50939)
3909
3910         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
3911         to properly handle previous GDK_BUTTON_PRESS. 
3912         (Patch from Jay Cox, #50938)
3913
3914         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
3915         '\0' back along with the deleted text. (#51148)
3916
3917 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
3918
3919         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
3920         the group when extracting it from the X keyboard event.
3921
3922         * modules/input/Makefile.am modules/input/imipa.c: 
3923         Simple module for entering IPA. (Do we need a 
3924         gtk-stupid-input-tricks CVS module?)
3925
3926 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
3927
3928         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
3929         const.
3930
3931         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
3932
3933         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
3934         is no focus widget for the dialog currently, grab the focus as well
3935         as the default.
3936
3937         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
3938         the action area's children to iterate through, not the
3939         dialog's children.
3940
3941 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
3942
3943         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
3944         Add plug-socket tests. (Won't work worth a darn until I commit
3945         the rest of the plug-socket changes, but no reason these
3946         can't go into CVS now.)
3947
3948 2001-03-02  Havoc Pennington  <hp@redhat.com>
3949
3950         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
3951         _gdk_region_get_xrectangles()
3952
3953         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
3954
3955         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
3956
3957         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
3958         function, contributed by Ron Steinke    
3959
3960         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
3961         gdk_net_wm_supports
3962
3963         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
3964         New function, contributed by Ron Steinke
3965
3966         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
3967         used to line up the text in the entry when using the entry for
3968         editable sheet cell hacks
3969
3970         * gtk/testgtk.c (create_entry): test the activate_default setting
3971         on GtkEntry
3972
3973         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
3974         cause the entry to activate the default button for a dialog when 
3975         activated
3976         (gtk_entry_get_activates_default): new function
3977
3978 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
3979
3980         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
3981         Hwang to move call to sync_selection() up a few lines
3982         to before the row list is modified, to fix crash when
3983         removing rows in the undo_selection list.
3984
3985         (Test case provided by Daniel Elstner:
3986
3987         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
3988
3989 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
3990
3991         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
3992         of tree->root_tree in parent_set rather than _map(), 
3993         fixing #50892 in a bit better manner.
3994
3995 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
3996
3997         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
3998
3999 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
4000
4001         * gtk/gtkstyle.c : Remove duplicate fwd decl for
4002         gtk_default_draw_shadow.
4003
4004 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
4005
4006         * gdk/gdkimage.c (gdk_image_new): Remove excess 
4007         warning, make warnings more verbose, treat a error
4008         in shmat as permanent, and don't try again.
4009         (#51163, Ed Randall.)
4010
4011 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
4012
4013         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
4014         delay for the first click before starting to scroll.
4015         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
4016
4017         * gtk/gtktext.c: GtkText should have I-beam cursor. 
4018         (based on gtk-enf-990513-1.patch, Eric Fisher.)
4019
4020 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
4021
4022         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
4023         cleanup to remove some references to unused
4024         ->xoffset, ->yoffset.
4025
4026 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
4027
4028         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
4029         mask. (#51039, fix from Martin Maierhofer)
4030
4031 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
4032
4033         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
4034         for unshifted + and shifted = for non-us keyboards.
4035         Make <Control>+ and <Control>- work as well as 
4036         <Control>KP_Plus, <Control>KP_Minus for recursive
4037         open/close.  (#2682, René Seindal)
4038
4039 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
4040
4041         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
4042         the active menu item before deactivating the menu,
4043         so gtk_menu_popdown doesn't change the history. (#50964)
4044         
4045 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
4046
4047         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
4048         draw lines with text_gc rather than black_gc.
4049         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
4050
4051 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
4052
4053         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
4054         Move handling of buttons fully in gtktreeviewcolumn.  This code is
4055         less interrelated then it was, but it still requires the
4056         GtkTreeView to map it.
4057
4058         * test/testtreecolumn.c: Now I can add a column to one view,
4059         remove it, add it to the another view, remove it, then re-add it
4060         to the first.  Nifty.
4061
4062 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
4063
4064         * docs/tutorial/gtk-tut.sgml: Minor corrections
4065
4066 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
4067
4068         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
4069         GtkRowReference.
4070
4071 2001-02-28  Havoc Pennington  <hp@redhat.com>
4072
4073         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
4074         draw_default
4075         (gtk_widget_draw_focus): remove this function; we could instead
4076         make it just gtk_widget_draw(), but in most cases I think the
4077         result would be broken user code, so think it's better to have
4078         that code not compile and get fixed
4079         (gtk_widget_draw_default): ditto
4080
4081         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
4082         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
4083         
4084         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
4085         widgets lose/get the default, instead of calling draw_default
4086         
4087         * docs/Changes-2.0.txt: note about all this
4088
4089         Then fixed every widget in GTK, I won't list all the filenames.
4090
4091 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
4092
4093         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
4094         _gtk_tree_row_reference_deleted.
4095         (inserted_callback): Proxy out to
4096         _gtk_tree_row_reference_inserted.
4097         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
4098         get around signal emission ordering problem.
4099
4100         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4101         fix to work with SINGLE 
4102         (_gtk_tree_selection_internal_select_node): Major sanitization on
4103         selections.  SINGLE now seems to work.
4104
4105         * tests/Makefile.am: add testtreecolumn.c:
4106
4107         * tests/testtreecolumn.c: New test.  Mostly points out selection
4108         bugs currently, but will test columns later.
4109
4110         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
4111         selection bug.  I hate touching this code -- it's scary.
4112
4113 2001-02-26  Havoc Pennington  <hp@redhat.com>
4114
4115         * gtk/testgtk.c: test the window state stuff
4116
4117         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
4118         window come to the user's attention as if it were just created
4119         (gtk_window_iconify): new function
4120         (gtk_window_deiconify): new function
4121         (gtk_window_stick): new function
4122         (gtk_window_unstick): new function
4123         (gtk_window_maximize): new function
4124         (gtk_window_unmaximize): new function
4125
4126         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
4127
4128         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
4129
4130         * gdk/x11/gdkevents-x11.c: create window state events when
4131         appropriate
4132         (gdk_wmspec_supported): new function
4133
4134         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
4135         iconification before showing the window
4136         (gdk_window_deiconify): new function
4137         (gdk_window_stick): new function
4138         (gdk_window_unstick): new function
4139         (gdk_window_maximize): new function
4140         (gdk_window_unmaximize): new function
4141
4142         * gdk/gdkwindow.c: store the window state in the window; 
4143         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
4144         window->mapped.
4145         (gdk_window_get_state): return the current window state
4146
4147         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
4148         (gdk_event_get_state): handle GDK_WINDOW_STATE
4149         (gdk_synthesize_window_state): function to create the window state
4150         events
4151
4152         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
4153         event, for changes to "window state" such as maximized, sticky, 
4154         etc.
4155         
4156         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
4157         focuses a window
4158
4159         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
4160         finds out if we support a given WM spec hint
4161
4162 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
4163
4164         * docs/faq/gtk-faq.sgml: New question re memory leaks.
4165
4166 2001-02-25  Hans Breuer  <hans@breuer.org>
4167
4168         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
4169         cause we want to loose those prototypes only in the latter case
4170
4171         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
4172         GdkPixmapImplWin32 because it itsn't derived from it. Use the
4173         impl member variable instead
4174
4175         * gtk/gtk.def : updated
4176
4177         * gtk/gtklist.c : 
4178         * gtk/gtkmenus.c : include <string.h> for memset ()
4179
4180         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
4181         for everthing built here, but for gtk-x.x.dll only. This solves
4182         problem of indifferent gtk type definitions
4183
4184 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
4185
4186         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
4187
4188 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
4189
4190         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
4191         column that is exposed.
4192
4193         (_gtk_tree_view_update_size): Changed name from set_size, and
4194         changed function to do more work, and not force people calling it
4195         to figure out the size.  Simplifies a lot of code elsewhere.
4196
4197 2001-02-23  Alexander Larsson  <alexl@redhat.com>
4198
4199         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
4200         return solid masks for xpms that have no transparent color.
4201         This makes the ..._create_from_xpm... API backwards
4202         compatible.
4203
4204 2001-02-23  Tor Lillqvist  <tml@iki.fi>
4205
4206         * README.win32: Update. Mention the gtk-1-3-win32-production
4207         branch.
4208
4209         * gdk/win32/bdfcursor.c: New file. A program that generates
4210         xcursors.h. Thanks to Stefan Ondrejicka.
4211
4212         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
4213         compact format.
4214
4215         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
4216
4217         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
4218         function, uses xcursors.h.
4219         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
4220         cursor from inline data instead of using LoadCursor() to generate
4221         it from a resource.
4222
4223         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
4224         event, must check the Windows message for mouse button state, as
4225         the GDK event state might not have been built if it is
4226         undelivered. Remove one goto.
4227
4228         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
4229         SetCursor() if the current cursor as returned by GetCursor() is
4230         the window's previous cursor. The ChildWindowFromPoint() test
4231         apparently didn't work correctly.
4232
4233         * gdk/win32/rc/*.cur: Remove.
4234
4235         * gdk/win32/rc/gdk.rc.in: Remove cursors.
4236
4237         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
4238
4239         * gtk/makefile.{mingw,msc}.in: Updates.
4240
4241 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
4242
4243         * gtk/gtktreemodel.h: add functions for signal emission.
4244
4245         * gtk/gtktreestore.c: move to use above functions instead of
4246         g_signal_emit.
4247
4248         * gtk/gtkliststore.c: ditto
4249
4250 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
4251
4252         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
4253         GObject instead of GtkObject.
4254
4255         * gtk/gtkliststore.c: ditto.
4256
4257         * gtk/gtktreemodelsort.c: ditto.
4258
4259         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
4260         GtkTreeModelIface, instead of in each model.
4261
4262 2001-02-21  Havoc Pennington  <hp@redhat.com>
4263
4264         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
4265         unbreak this function
4266
4267         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
4268         properties
4269
4270         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
4271         properties
4272
4273         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
4274         properties
4275
4276         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
4277         mean unset the max length
4278
4279 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
4280
4281         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
4282         Changed name to be set_cell_data_func to make it clear what
4283         the functino does.  Close bug #51069.
4284
4285 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
4286
4287         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
4288         have memory actually freed.  Keeps box running longer.
4289
4290 2001-02-21  Alexander Larsson  <alexl@redhat.com>
4291         
4292         * gtk/gtkseparatormenuitem.[ch]:
4293         Added new menu separator item. The drawing and size handling
4294         is still done in GtkMenuItem, but the API is a bit more sane.
4295         
4296         * gtk/Makefile.am:
4297         Add gtkseparatormenuitem.[ch].
4298
4299         * gtk/gtk.h:
4300         Add gtkseparatormenuitem.h.
4301         
4302         * gtk/gtkentry.c:
4303         * gtk/gtkmenufactory.c:
4304         * gtk/gtktextview.c:
4305         Use the new API for menu separators.
4306         
4307         * demos/gtk-demo/menus.c (create_menu):
4308         Add some GtkSeparatorMenuItem demo code.
4309
4310 2001-02-20  Havoc Pennington  <hp@redhat.com>
4311
4312         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
4313         Lee Mallabone
4314
4315         * gtk/gtkarrow.c: Convert to new property API, patch from 
4316         Lee Mallabone
4317
4318 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
4319
4320         * tests/testtreeview.c (toggled_callback): fix to reflect change
4321         in GtkTreeModelStore.
4322
4323 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
4324
4325         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
4326         function to create an icon set from a pixbuf.
4327
4328 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4329
4330         * gtk/gtkcellrenderertext.[ch]:
4331         Add a "markup" property.
4332
4333         * gtk/treestoretest.c:
4334         Use the markup property, remove some leftover stuff from
4335         GtkTreeModelMapping.
4336
4337 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4338
4339         * gtk/gtklabel.c (gtk_label_set_selectable):
4340         Queue a redraw if the selectable setting was changed.
4341
4342 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4343
4344         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
4345         Actually copy the whole gc, not just the public parts.
4346         
4347         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4348         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
4349         labels.
4350
4351 2001-02-19  Havoc Pennington  <hp@pobox.com>
4352
4353         * gdk/gdkwindow.c: docs
4354
4355         * gdk/gdkrgb.c: docs
4356
4357         * gdk/gdkregion-generic.c: docs
4358
4359         * gdk/gdkgc.c (gdk_gc_set_values): docs
4360
4361         * gdk/gdkdraw.c: docs
4362
4363         * gdk/gdkdrawable.h: deprecate drawable get/set data
4364
4365 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
4366
4367         * demos/gtk-demo/dialog.c: Add simple new demo.
4368
4369 2001-02-19  Havoc Pennington  <hp@redhat.com>
4370
4371         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
4372         insert_child_anchor signal, bug #50245
4373
4374         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
4375         from create_child_anchor, so the anchor is passed in
4376
4377         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
4378         (_gtk_widget_segment_new): have the child anchor object passed in, 
4379         instead of creating it.
4380
4381         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
4382         to gtk_text_buffer_get_modified
4383
4384 2001-02-19  Havoc Pennington  <hp@redhat.com>
4385
4386         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
4387         changed GLib without fixing GTK
4388
4389         * gtk/gtkrange.h: Rename all the stupid implementation detail 
4390         functions to have an underscore in front. Most of them should 
4391         probably just go away, but for starters don't export them.
4392         Bug #50482
4393
4394 2001-02-19  Havoc Pennington  <hp@redhat.com>
4395
4396         * gdk/gdkcolor.h: test was backward, so deprecated functions were
4397         excluded by default
4398
4399         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
4400         clean up the old code a bit
4401
4402         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
4403         inconsistent state
4404
4405         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
4406         draw inconsistent state
4407
4408         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
4409         (create_menu): add inconsistent test
4410
4411         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
4412         new function
4413         (gtk_check_menu_item_get_inconsistent): new function
4414         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
4415         state (using etched in for now)
4416
4417         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
4418         draw inconsistent state
4419
4420         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
4421         function, used when the user has selected a range of stuff in
4422         different states
4423         (gtk_toggle_button_get_inconsistent): accessor for that
4424         (gtk_toggle_button_paint): draw inconsistent state (etched in?
4425         don't know what else to do)
4426
4427 2001-02-19  Hans Breuer <hans@breuer.org>
4428
4429         * gtk/gtk.def : updated exported symbols
4430
4431         * gtk/makefile.msc.in : updated
4432
4433         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
4434         a colormap, when invoked from testgtk::entry. I'm not sure where
4435         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
4436         avoids immediate crashing ...
4437
4438         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
4439         any objections ?
4440
4441         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
4442         0 parameter. At least msvc doesn't like macros with var args. 
4443         I simply removed the extra 0, was it a feature or a typo ?
4444
4445         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
4446         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
4447         because the value assignment to the internal struct wasn't working.
4448         I'm not absolutely sure. The problem could have been resolved by
4449         changing the "func" declartion in the struct, but was the pointer
4450         to the function pointer intended ?
4451
4452         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
4453
4454         * gdk/gdk.def : updated exported symbols
4455
4456         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
4457         only use SetDIBitsToDevice if there is a palette at the drawable
4458         and the image is GDK_VISUAL_PSEUDO_COLOR
4459
4460         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
4461
4462         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
4463
4464         * gdk/*/makefile.msc : updated
4465
4466 2001-02-19  Havoc Pennington  <hp@redhat.com>
4467
4468         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
4469         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
4470
4471         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
4472         (gdk_key_repeat_restore): nuke
4473
4474         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
4475         (gdk_init_check): no atexit func
4476
4477         * gdk/gdkrgb.h: mark some stuff deprecated
4478
4479         * gdk/gdkcolor.h: mark some stuff deprecated
4480         
4481         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
4482
4483         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
4484
4485 2001-02-16  Havoc Pennington  <hp@redhat.com>
4486
4487         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
4488         scroll steps.
4489
4490         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
4491         steps, and add Ctrl-arrow shortcuts for paging visually as with
4492         HScale, since Page Up and Page Down move logically.
4493
4494         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
4495         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
4496         
4497         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
4498         steps
4499         (gtk_range_scroll): handle the visual steps
4500
4501         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
4502         scroll steps
4503
4504         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
4505         steps, not the logical ones.
4506
4507         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
4508         (scroll_vertical): handle up/down steps
4509
4510 2001-02-19 Alexander Larsson  <alexl@redhat.com>
4511
4512         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
4513         Copy data and free data with free().
4514
4515         * gdk-pixbuf/gdk-pixbuf.c:
4516         * gdk-pixbuf/io-jpeg.c:
4517         * gdk-pixbuf/io-png.c:
4518         Use g_try_malloc/g_free instead malloc/free.
4519         
4520         * gdk-pixbuf/test-gdk-pixbuf.c:
4521         Must... initialize... gobject...
4522         
4523         * gdk-pixbuf/pixops/timescale.c:
4524         * gtk/gtkcalendar.c:
4525         Use g_malloc instead of malloc.
4526         
4527 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
4528
4529         * gtk/testgtkrc:
4530         Comment out property assignments, these don't work yet.
4531
4532 2001-02-17  Havoc Pennington  <hp@pobox.com>
4533
4534         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
4535         bit.
4536
4537 2001-02-17  Havoc Pennington  <hp@pobox.com>
4538
4539         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
4540         shadowed variables that had broken size request in some cases,
4541         leading to bogus tooltips (#50996)
4542
4543 2001-02-06  Jon K Hellan  <hellan@acm.org>
4544
4545         Implement fast browsing of tooltips, bug #50619
4546         
4547         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
4548         and last_popdown
4549         
4550         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
4551         use_sticky_delay and last_popdown.
4552         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
4553         time of popdown.
4554         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
4555         is NULL.
4556         (gtk_tooltips_recently_shown): New static function.  Return true
4557         if < sticky_delay has elapsed since last popdown.
4558         (gtk_tooltips_event_handler): Display window after sticky_delay
4559         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
4560         since last popdown.
4561         
4562 2001-02-17  Havoc Pennington  <hp@pobox.com>
4563
4564         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
4565         instead of (). #6394
4566
4567         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
4568         G_CONST_RETURN, make it return by reference, #50473
4569         
4570 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
4571
4572         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
4573         generated ENTER_NOTIFY event with 0, otherwise not explicitely
4574         setup fields contain garbage (e.g. subwindow, breaking
4575         gdk_drawable_ref() upon event copy).
4576         (gtk_menu_stop_navigating_submenu_cb): same here.
4577
4578         * gtk/gtklist.c (gtk_list_vertical_timeout): 
4579         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
4580         * gtk/gtkclist.c (vertical_timeout): 
4581         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
4582         default-zero-intialization for unions to memset(,0,), as unions are
4583         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
4584         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
4585
4586         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
4587         g_closure_sink() warning.
4588
4589         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
4590         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
4591         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
4592         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
4593         
4594 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
4595
4596         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
4597         gtk_*_store_get, and moved to GtkTreeModel.
4598
4599         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
4600
4601         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
4602
4603         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
4604
4605         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
4606         set the func.
4607
4608         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4609         freeze/thaw notify between setting all the properties for a cell.
4610
4611         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
4612
4613 2001-02-15  Havoc Pennington  <hp@redhat.com>
4614
4615         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
4616         the X coordinates so they're with respect to the line, rather than 
4617         with respect to the layout.
4618
4619         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
4620         Mallabone
4621
4622         * gtk/testgtk.c (create_range_controls): add vscale tests, 
4623         and inverted test
4624
4625         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
4626         #50806
4627
4628         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
4629
4630         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
4631         gtk_text_iter_is_end
4632
4633         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
4634         rename gtk_text_buffer_get_end_iter
4635
4636         * gtk/testgtk.c (create_labels): Add test for selectable
4637
4638         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
4639         the selection stuff. This code is kind of broken since it doesn't 
4640         use the theme engine.
4641
4642         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
4643         fix infinite loop and y offset problem
4644         (gdk_draw_layout_line_with_colors): fix foreground color handling
4645
4646         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
4647         that makes the label selectable.
4648         
4649         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
4650         layout when the style is set, since fonts etc. could have changed.      
4651
4652 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
4653
4654         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
4655
4656         * gtk/gtktreemodelsimple.[ch]: removed.
4657
4658 2001-02-16  Alexander Larsson  <alexl@redhat.com>
4659
4660         * gtk/gtktreemodelmapping.[ch]:
4661         New files. Implement GtkTreeModelMapping.
4662         
4663         * gtk/Makefile.am:
4664         Add gtktreemodelmapping.[ch].
4665         
4666         * gtk/gtk.h:
4667         Add gtktreemodelmapping.h
4668
4669         * gtk/treestoretest.c:
4670         Test the GtkTreeModelMapping
4671
4672 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
4673
4674         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
4675         have a demo, we might as well pass in real values.  Thanks to
4676         clahey for pointing this out.
4677
4678 2001-02-14  Havoc Pennington  <hp@pobox.com>
4679
4680         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
4681         "static" to a private function
4682         (gtk_image_menu_item_class_init): remove destroy handler,
4683         add "image" object property
4684
4685 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
4686
4687         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
4688         Add a shortcut if the window and the current clip_region doesn't
4689         overlap. This is needed when there are a lot of windows in a
4690         window. The layout test in testgtk is a good test.
4691
4692         * gdk/linux-fb/gdkwindow-fb.c:
4693         Whitespace fix.
4694
4695 2001-02-13  Sven Neumann  <sven@convergence.de>
4696
4697         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
4698
4699 2001-02-13  Alexander Larsson  <alexl@redhat.com>
4700
4701         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
4702         Don't reference last_cursor if it is null. Fixes crash when rotating
4703         the screen before having moved the mouse.
4704
4705         * gdk/linux-fb/gdkcc-fb.c: Zapp!
4706
4707         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
4708
4709         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
4710         when using 90 or 270 degrees rotation.
4711
4712 2001-02-12  Havoc Pennington  <hp@pobox.com>
4713
4714         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
4715         it always set the foreground, even if we were only using
4716         a stipple.
4717         (gdk_draw_layout_line_with_colors): new function, allow
4718         override colors
4719         (gdk_draw_layout_with_colors): new function, allow override
4720         colors
4721         (gdk_pango_layout_line_get_clip_region): function to get the clip
4722         region for a logical text range
4723         (gdk_pango_layout_get_clip_region): get the clip region for a
4724         logical text range
4725
4726         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
4727         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
4728         the right number of arguments.
4729
4730         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
4731         enhance the function to check that node data corresponds to a 
4732         view still belonging to the tree.
4733
4734         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
4735         GtkTreePath
4736         (gtk_tree_view_inserted): ditto
4737         (gtk_tree_view_child_toggled): ditto
4738
4739         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
4740         simplify this code.
4741
4742         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
4743         a PangoAttrList
4744
4745         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
4746
4747         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
4748
4749         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
4750         size in the size request 
4751         (gtk_menu_bar_size_allocate): consider toggle size here
4752
4753         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
4754         that displays a widget in the toggle slot
4755
4756         * gtk/testgtk.c: test GtkImageMenuItem
4757
4758         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
4759         
4760         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
4761         request and allocation
4762
4763         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
4764
4765         * gtk/gtkcheckmenuitem.c
4766         (gtk_check_menu_item_toggle_size_request): ditto
4767         
4768 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
4769
4770         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
4771         reference.
4772
4773         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
4774         and refuse to initialize GTK+ if they fail.
4775
4776 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
4777
4778         * configure.in: Add check for gtk-doc version.
4779
4780 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
4781
4782         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
4783         where the xpad/ypad was only being used on one side!
4784
4785 2001-02-11  Tor Lillqvist  <tml@iki.fi>
4786
4787         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
4788         function, copied from X11 version.
4789
4790         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
4791         DestroyCursor failures. The reason for the problem (despite the
4792         inconsistent messages from GetLastError()) was that
4793         DestroyCursor() cannot be called while a cursor is set in a
4794         window. Set the new cursor first and then destroy the old one.
4795         Thanks to jpe@archaeopteryx.com.
4796
4797         * gdk/win32/gdkcc-win32.c: Remove.
4798
4799         * gdk/win32/Makefile.am: Remove from here, too.
4800         
4801         * gdk/gdk.def
4802         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
4803
4804         * gtk/gtk.def
4805         * gtk/makefile.mingw.in: Updates.
4806
4807 2001-02-08  Havoc Pennington  <hp@redhat.com>
4808
4809         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
4810         add a widget to a bin that already has a child.
4811
4812         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
4813
4814         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
4815         
4816         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
4817
4818         * gdk/gdk.h: remove gdkcc.h
4819
4820         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
4821
4822         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
4823         GdkPixbuf, since the previous implementation was GdkColorContext
4824         dependent.
4825
4826         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
4827         
4828 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
4829
4830         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
4831         a sane value!
4832
4833 2001-02-08  Havoc Pennington  <hp@redhat.com>
4834
4835         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
4836         lighten them.
4837
4838 2001-02-08  Havoc Pennington  <hp@redhat.com>
4839
4840         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
4841         validation idle
4842
4843         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
4844         cell renderer
4845
4846         * demos/pixbuf-demo.c (timeout): remove deprecated
4847         gtk_widget_draw
4848
4849         * demos/testpixbuf-save.c (main): remove deprecated
4850         gtk_drawing_area_size
4851
4852         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
4853         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
4854         at the start of the allocation.
4855         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
4856         unsetup or NULL model.
4857
4858         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
4859         even/odd/sorted cells in the tree view.
4860
4861         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4862         bugfixes
4863
4864         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
4865         backgrounds with draw_flat_box using different detail for even/odd
4866         rows.
4867
4868         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
4869         row, so we can draw the alternating colors thing
4870
4871         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
4872         property from a synonym property, notify for the synonym.
4873         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
4874         (gtk_text_tag_get_property): Always return the font, even if
4875         all its fields aren't set
4876
4877         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
4878         store the attr list; it leaves us with no way to change attributes
4879         in _render according to the render flags, and no way to implement
4880         get_property. Instead store all the specific text attributes. 
4881         Separate whether an attribute is enabled from its value. Sync all
4882         properties with GtkTextTag, make them all consistent, etc.
4883
4884         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
4885         renderers can highlight the sort row/column     
4886
4887         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
4888         accessor functions to get values; this has the side effect of
4889         showing up which accessor functions were missing. Added those.
4890
4891         * gtk/gtktreeviewcolumn.h: Replace set_justification with
4892         set_alignment, to be consistent with GtkLabel, GtkMisc
4893
4894         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
4895         arrow.
4896
4897         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
4898
4899         * gtk/gtktreesortable.h: updates in here
4900
4901 2001-02-07  Sven Neumann  <sven@convergence.de>
4902
4903         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
4904         pango dimensions after painting the background. We used to draw
4905         gigantic flat boxes here.
4906
4907 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
4908
4909         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
4910         error introduced with earlier commit) (pointed out by
4911         Ollie Lho)
4912
4913 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
4914
4915         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
4916         which are no longer necessary.
4917
4918 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
4919
4920         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
4921
4922 2001-02-04  Tor Lillqvist  <tml@iki.fi>
4923
4924         * gdk/gdk.def
4925         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
4926         Provide dummy implementations.
4927
4928 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
4929
4930         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
4931
4932         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
4933         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
4934         deprecated this function.
4935
4936         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
4937         argument.
4938
4939 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
4940
4941         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
4942
4943 2001-02-03  Havoc Pennington  <hp@pobox.com>
4944
4945         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
4946         Mikael Hermansson with patch from Mikael (if there was a toggle
4947         start one after the first character in the range, this function
4948         was broken). Bug #50380
4949
4950 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
4951
4952         * configure.in: Remove confusing comment about X11.
4953
4954 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
4955
4956         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
4957         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
4958         
4959 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
4960
4961         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
4962         it breaks things on BSD. If you want to compile GTK+ with
4963         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
4964         when configuring, since GTK+ simply can't be "pure ANSI" 
4965         in the header files it uses. (#8170, Greg Hudson)
4966
4967 2001-02-02  Havoc Pennington  <hp@redhat.com>
4968
4969         * gtk/gtkwindow.c: docs
4970
4971         * gtk/gtkwidget.c: docs
4972         (gtk_widget_set_colormap): add a reference to the colormap
4973         (gtk_widget_get_default_colormap): add a reference to the colormap
4974
4975         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
4976
4977         * gtk/gtktextiter.c: docs
4978
4979         * gtk/gtkmain.c (gtk_propagate_event): docs
4980
4981         * gtk/gtkpaned.c (gtk_paned_get_position): docs
4982         (gtk_paned_set_position): docs
4983
4984         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
4985         sort interface, no implementation yet.
4986
4987         * demos/testpixbuf.c (new_testrgb_window): replace
4988         gtk_drawing_area_size() with gtk_widget_set_usize()
4989
4990         * demos/testpixbuf-drawable.c (main): ditto
4991         
4992         * gtk/testgtk.c: remove use of GtkStatusbarMsg
4993
4994         * gtk/gtktextbuffer.c: docs
4995
4996         * gtk/gtkstock.c: docs
4997
4998         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
4999
5000         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
5001
5002         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
5003         
5004         * gtk/gtkimage.c: add some docs in here
5005         (gtk_image_size_request): change name of
5006         gtk_widget_render_stock_icon
5007         (gtk_image_get_icon_set): don't dup returned string
5008         (gtk_image_get_icon_set): don't dup returned string
5009
5010         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
5011         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
5012         and gtkiconfactory.h functions
5013
5014         * gtk/gtkiconfactory.c: add some docs in here
5015
5016         * gtk/gtkmain.c (gtk_get_default_language): document
5017         (gtk_get_current_event): document
5018         (gtk_get_current_event_state): document
5019         (gtk_get_event_widget): document
5020
5021         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
5022
5023         * gtk/gtkcontainer.c: Add some documentation
5024         (gtk_container_add): give a more explanatory warning on adding an
5025         already-parented widget, this is kind of a FAQ and also a common
5026         typo that's easier to debug with a nice warning 
5027
5028         * gtk/gtkcellrenderertoggle.c
5029         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
5030         adding this, it's useless
5031         (gtk_cell_renderer_toggle_set_active): remove
5032         (gtk_cell_renderer_toggle_get_radio): add
5033
5034         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
5035         the NULL cell renderer, that doesn't make any sense to me. 
5036
5037         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
5038         demo code should never use deprecated features.
5039
5040         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
5041         code should never use deprecated features.
5042
5043         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
5044         gtk_widget_queue_clear_area deprecated
5045
5046         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
5047         deprecated
5048
5049         * gtk/gtklabel.h: mark gtk_label_get() deprecated
5050
5051         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
5052         a GdkImage deprecated, replaced by new consistently-named
5053         functions       
5054
5055         * gtk/gtkmain.h: Mark gtk_exit() deprecated
5056
5057         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
5058
5059         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
5060         deprecated
5061
5062         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
5063         so it won't appear in docs and confuse people.
5064
5065         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
5066
5067         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
5068         macros deprecated. (can't mark the type itself deprecated, since
5069         GtkProgressBar is not deprecated and we need the type decl to use
5070         GtkProgressBar)
5071
5072         * gtk/gtkpixmap.h: Mark deprecated
5073
5074         * gtk/gtkoldeditable.h: Mark deprecated
5075
5076         * gtk/gtklist.h: Mark deprecated
5077
5078         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
5079         for anything anymore.
5080
5081         * gtk/gtkctree.h: Mark deprecated
5082
5083         * gtk/gtkclist.h: Mark deprecated
5084
5085         * gtk/gtkpreview.h: Mark deprecated
5086
5087         * gtk/gtkpacker.h: Mark deprecated
5088
5089         * gtk/gtktipsquery.h: Mark deprecated
5090
5091         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
5092
5093         * gtk/gtkvruler.h: Add comment that it will move out of GTK
5094
5095         * gtk/gtkhruler.h: Add comment that it will move out of GTK
5096
5097         * gtk/gtkruler.h: Add comment that it will move out of GTK
5098
5099         * gtk/gtkgamma.h: Add comment that it will move out of GTK
5100
5101         * gtk/gtkcurve.h: Add comment that it will move out of GTK
5102
5103 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
5104
5105         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
5106         gdk_colormap_sync private since it was never exported
5107         in a header file.
5108
5109         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
5110         colormap->colors[] for StaticGray, StaticColor colormaps.
5111
5112         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
5113         was being used as if it was image->bits_per_pixel.
5114
5115         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
5116         for the image in the GdkImage structure since it isn't
5117         reconstructable, and we need it to handle packed types
5118
5119         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
5120         the assumption that on Win32 image->bits_per_pixel == image->depth,
5121         always.
5122
5123         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
5124
5125         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
5126         warning message if no converter can be found. 
5127
5128 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
5129
5130         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
5131         chars to isupper() / tolower(). (#567)
5132
5133         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
5134         to clear up 64-bit warnings. (#567)
5135
5136 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
5137
5138         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
5139         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
5140
5141         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
5142         since some people set $(libdir) separately. (#1290, David Kaelbling)
5143
5144 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
5145
5146         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
5147         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
5148         MAXPATHLEN, but the code here depends on a fixed value.)
5149         (#4524)
5150
5151 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
5152
5153         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
5154         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
5155
5156 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
5157
5158         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
5159         viewable there is no way that moving the node will cause the 
5160         focus row to become not viewable, so omit check on the visibility
5161         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
5162
5163 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
5164
5165         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
5166         selection before inserting new text.
5167
5168 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
5169
5170         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
5171         Make the sensitivity of the reparented child track that of
5172         the original parent menu item. (#34218, David Hodson)
5173
5174         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
5175         the case where the current item is destroyed properly.
5176
5177         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
5178         some edge cases with child-less menuitems.
5179         
5180 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
5181
5182         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
5183         key pop down window. (#12074, Jon K Hellan)
5184
5185 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
5186
5187         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
5188         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
5189         The solution here isn't perfect - you get an extraneous
5190         emission of "toggle", which could conceivably confuse an app,
5191         but better than the current situation. LXR search seems to
5192         indicate that no apps in GNOME CVS connect to "toggle".
5193
5194 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
5195
5196         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
5197         gtk_public_h_sources to directly here to avoid warning when
5198         building srcdir != builddir. (#9656)
5199
5200 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
5201
5202         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
5203         handlers in gtkrange.c return the proper values (TRUE == handled)
5204         (#10316).
5205
5206         This is just the tip of the iceberg, but gtkrange.c is the
5207         most common place where the propagation is problematical,
5208         and also a place where it is almost certainly safe to change
5209         this in the stable branch.
5210
5211         (You don't want right click popups on a range control or anything...)
5212
5213 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
5214
5215         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
5216         area on focus out, even if a background pixmap isn't set.
5217         (#13941)
5218         
5219 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
5220
5221         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
5222         to deal with setting the shape properly when scrolling arrows are
5223         turned on, but not visible because there is sufficient space.
5224         (#13432)
5225
5226 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
5227
5228         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
5229         items with submenus, destroy the item along with the submenu.
5230         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
5231         properly.
5232
5233         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
5234         later.
5235
5236 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
5237
5238         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
5239         the focus widget sometimes wasn't drawn with the default if there
5240         was no default widget.
5241
5242         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
5243         unreference pixmaps. 
5244
5245         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
5246         for some extra safety.
5247
5248 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
5249
5250         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
5251         the text of a cell to the old pointer value better, by
5252         copying the new text before freeing the old text. Some code
5253         cleanup. (#8079, Karl Nelson)
5254
5255 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
5256
5257         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
5258         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
5259
5260 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
5261
5262         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
5263         item from a menu, check to see if it matches 
5264         menu->old_active_menu_item, and if so, unref and clear
5265         old_active_menu_item (Patch from Pavel Cisler)
5266
5267         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
5268         menu_shell->active_menu_item, if it is the child being
5269         removed. (Patch based on that of Gene Ragan, #50337)
5270
5271 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
5272
5273         * gdk/linux-fb/gdkselection-fb.c: 
5274         * gdk/linux-fb/gdkcolor-fb.c: 
5275         * gdk/linux-fb/gdkdrawable-fb2.c: 
5276         * gdk/linux-fb/gdkfont-fb.c: 
5277         * gdk/linux-fb/gdkim-fb.c: 
5278         * gdk/linux-fb/gdkinput.c: 
5279         * gdk/linux-fb/gdkkeyboard-fb.c: 
5280         * gdk/linux-fb/gdkmain-fb.c: 
5281         * gdk/linux-fb/gdkrender-fb.c: 
5282         A bunch of whitespace cleanup.
5283         
5284 2001-01-30  Havoc Pennington  <hp@pobox.com>
5285
5286         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
5287         #ifdef GTK_ENABLE_BROKEN.
5288
5289         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
5290         GTK_ENABLE_BROKEN just before including the broken headers.
5291         
5292         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
5293         deprecated types registered.
5294
5295         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
5296         we have to test the broken stuff.
5297
5298         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
5299         
5300 2001-01-30  Havoc Pennington  <hp@redhat.com>
5301
5302         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
5303         here where prev pointer was set to the wrong thing
5304
5305         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
5306         (gtk_tree_path_is_descendant): new function
5307
5308         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
5309         cached length
5310         (gtk_list_store_get_iter): don't modify iter if we can't get the
5311         path.
5312
5313         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
5314         
5315         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
5316         GtkTreeDragDest
5317
5318         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
5319         was causing segfault
5320
5321         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
5322         pointer to NULL
5323
5324         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
5325
5326         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
5327         on returning FALSE
5328         (gtk_list_store_iter_children): ditto
5329         (gtk_list_store_iter_nth_child): ditto
5330         (gtk_list_store_iter_nth_child): ditto
5331         (gtk_list_store_iter_parent): ditto
5332
5333         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
5334         on iter->user_data != NULL instead of silently accepting it.
5335         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
5336         we are returning TRUE.
5337         (gtk_tree_store_iter_children): ditto
5338         (gtk_tree_store_iter_nth_child): ditto
5339         (gtk_tree_store_iter_parent): ditto
5340         (gtk_tree_store_insert): remove handling of parent->user_data ==
5341         NULL, replace with parent == NULL       
5342
5343         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
5344         and a comment explaining things
5345
5346         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
5347         interface support to GtkTreeStore.
5348
5349         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
5350         FALSE if no prev, fix
5351
5352         * gtk/gtktreeview.c (set_source_row): use a row reference
5353         (set_dest_row): use a row reference
5354
5355 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
5356
5357         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
5358         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
5359         (gtk_tree_selection_select_iter): The same as above.
5360
5361 2001-01-26  Havoc Pennington  <hp@redhat.com>
5362
5363         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
5364         which holds a handle to a specific row (particular set of values
5365         in the model, i.e. pointer-identity row).
5366
5367         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
5368         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
5369         Still need to use it for the src/dest row saved on the drag context.
5370
5371 2001-01-26  Havoc Pennington  <hp@redhat.com>
5372
5373         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
5374
5375         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
5376         not offset by TREE_VIEW_HEADER_HEIGHT
5377         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
5378         TREE_VIEW_HEADER_HEIGHT
5379
5380         * configure.in (included_loaders): for me, --with-included-loaders
5381         generates the error "the specified loader yes does not exist",
5382         i.e. the arg defaults to "yes", so change test for value ""
5383         to test for value "yes", and include all loaders in that case.
5384
5385         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
5386
5387         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
5388         handle TREE_VIEW_VERTICAL_SEPARATOR
5389         (gtk_tree_view_bin_expose): fix to consider the row offset as
5390         pointing halfway into vertical separator.       
5391         (gtk_tree_view_draw_node_focus_rect): ditto
5392
5393         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
5394         --gtk-debug=updates, which causes gdk_window_set_debug_updates
5395         (TRUE) to be called.
5396
5397         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
5398         debug mode where the invalid region is colored in on invalidate,
5399         so you can see the flicker and know whether your redraw code is 
5400         doing a good job.
5401
5402         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
5403         tree window coordinates (clip rect is in tree window coords)
5404
5405         * gtk/Makefile.am: add gtktreednd.[hc]
5406
5407         * gtk/gtkliststore.c: implement gtktreednd interfaces.
5408
5409         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
5410         drag-and-drop data operations on a model (so we can set up tree
5411         drag-and-drop automatically)
5412
5413         * gtk/testgtk.c: Add a window to change sensitivity in the
5414         GtkLabel test; add a way to change the entry frame in GtkEntry
5415         test
5416
5417         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
5418         (gtk_entry_get_has_frame): new functions to remove the frame
5419         around an entry
5420         (gtk_entry_size_request): shrink requisition if no frame
5421         (gtk_entry_draw_focus): don't draw frame if no frame
5422
5423         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
5424         checks inside a cell renderer
5425         (gtk_default_draw_option): ditto for options
5426
5427         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
5428         children from the alignment, not the button
5429         (gtk_tree_view_column_init): ref/sink the column, to emulate
5430         GObject refcounting.
5431
5432         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
5433         
5434         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5435         Use theme functions to draw the toggles 
5436
5437         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
5438
5439         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
5440         GdkPangoAttrEmbossed to use in rendering insensitive text
5441
5442         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
5443
5444         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
5445         using new GDK features
5446         
5447 2001-01-24  Alexander Larsson  <alexl@redhat.com>
5448
5449         * gtk/gtkimage.c:
5450         Splitted gtk_image_clear into gtk_image_clear() and
5451         gtk_image_reset(). Call gtk_image_clear() in ::destroy
5452         to avoid leaks.
5453
5454         * gtk/gtklabel.c (set_markup):
5455         Don't leak text.
5456
5457         * gtk/gtktextlayout.c:
5458         Always free display->shaped_objects.
5459
5460         * gtk/testgtk.c (create_clist):
5461         Don't leak custom style.
5462
5463 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5464
5465         * gtk/gtkcolorsel.c (grab_color_at_mouse):
5466         Don't leak image. Simplify using gdk_colormap_query_color().
5467         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
5468
5469         * linux-fb/gdkcolor-fb.c:
5470         Implemented gdk_colormap_query_color.
5471
5472 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5473
5474         * linux-fb/gdkcursor-fb.c:
5475         Don't leak built-in cursors.
5476
5477         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
5478         Don't leak tmp_points.
5479
5480         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
5481         Don't modify desc. Don't leak font if the PangoFont
5482         isn't found.
5483         
5484         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
5485         Free dash_list.
5486
5487         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
5488         Don't leak string.
5489         
5490 2001-01-20  Havoc Pennington  <hp@pobox.com>
5491
5492         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
5493         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
5494         me, matches Pango
5495
5496 2001-01-22  Havoc Pennington  <hp@redhat.com>
5497
5498         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
5499
5500         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
5501
5502         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
5503         Remove, move back to gdk-pixbuf
5504
5505         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
5506         to all the word functions
5507
5508         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
5509         before doing anything on NULL layout or if we don't have the focus
5510
5511         * gtk/testtext.c (fill_example_buffer): "justification"
5512
5513         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
5514         to be called "justification" not "justify"
5515
5516         * demos/gtk-demo/textview.c (create_tags): "justification"
5517         
5518         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
5519
5520 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5521
5522         * gdk/gdkwindow.c (gdk_window_invalidate_region):
5523         Don't leak visible_region. Use visible_region instead of region.
5524         
5525         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
5526         Don't do extra gdk_drawable_ref(). This is not X.
5527         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
5528         gdk_fb_focused_window is ref:ed.
5529         (gdk_fb_window_send_crossing_events): Watch out for destroyed
5530         windows.
5531
5532 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5533
5534         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
5535         Don't leak the PangoFontDescriptor.
5536
5537 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
5538
5539         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
5540         when not realized.
5541         (gtk_tree_view_scroll_to_cell): Make work when not realized.
5542         (gtk_tree_view_realize): add scroll_to support
5543         (gtk_tree_view_finalize): add a finalize method.  Populate.
5544         (gtk_tree_view_insert_column): ref and sink the column.
5545         (gtk_tree_view_append_column): ref and sink the column.
5546         (gtk_tree_view_queue_draw_node): New function to handle redrawing
5547         individual nodes.  Should make the code much more efficient, if
5548         actually used.
5549
5550 2001-01-19  Havoc Pennington  <hp@redhat.com>
5551
5552         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
5553         byte_offset variable was being used to mean both "offset into
5554         layout" and "offset into buffer line" which was no longer true
5555         with addition of preedit string; fix
5556
5557 2001-01-19  Havoc Pennington  <hp@redhat.com>
5558
5559         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
5560
5561         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
5562         function
5563
5564         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
5565         implement
5566
5567         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
5568         scroll_to_cell, matches TextView scroll functions better
5569         (gtk_tree_view_tree_to_widget_coords): new function
5570         (gtk_tree_view_widget_to_tree_coords): new function
5571         (gtk_tree_view_get_visible_rect): new function
5572         (gtk_tree_view_get_path_at_pos): accept negative coordinates
5573         (gtk_tree_view_draw_node_focus_rect): new function moved from
5574         draw_focus, also, use width of bin_window as width of the focus
5575         rect
5576         (gtk_tree_view_expand_row): fix bug where it didn't recognize
5577         already-expanded rows
5578         (gtk_tree_view_get_cell_rect): new function
5579         (gtk_tree_view_get_path_at_pos): return the click position
5580         relative to the passed-in cell
5581         (gtk_tree_view_set_expander_column): new function
5582
5583         * configure.in: remove gtk-config-2.0 chmod
5584
5585         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
5586         and properly handle drags with targets we don't understand
5587         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
5588         scrolling anyway
5589         (gtk_text_view_drag_drop): stop scrolling here though, and set the
5590         mark invisible
5591
5592         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
5593         function
5594         (gtk_drag_dest_get_target_list): new function
5595         (gtk_drag_dest_set_target_list): new function
5596         
5597         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
5598
5599         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
5600         related to drag-and-drop
5601
5602 2001-01-19  Alexander Larsson  <alexl@redhat.com>
5603
5604         * gdk/linux-fb/gdkprivate-fb.h:
5605         Define EMULATE_GDKFONT.
5606         Add extra pango_font stuff to GfkFontPrivate.
5607         
5608         * gdk/linux-fb/gdkdrawable-fb2.c:
5609         * gdk/linux-fb/gdkfont-fb.c:
5610         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
5611         emulation using PangoFont.
5612
5613 2001-01-17  Havoc Pennington  <hp@pobox.com>
5614
5615         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
5616         all the non-deprecated set_foo functions. Added missing object
5617         properties, and added g_object_notify() to setters. 
5618         Wrote docs.
5619         
5620 2001-01-18  Tor Lillqvist  <tml@iki.fi>
5621
5622         * gtk/gtkmain.c
5623         * gtk/gtkrc.c: (Win32) Use the new
5624         g_win32_get_package_installation_(sub)directory() functions.
5625
5626         * config.h.win32.in: New file.
5627         
5628         * config.h.win32: Removed.
5629
5630         * configure.in: Output config.h.win32.
5631
5632         * Makefile.am: Add it to EXTRA_DIST.
5633
5634         * gtk/gtk.def: Update.
5635
5636 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
5637
5638         * gtk/gtklabel.c (gtk_label_size_request): Set the
5639         attributes onto the PangoLayout even if they are newly
5640         created from label->pattern.
5641
5642 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
5643
5644         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
5645
5646         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
5647         structures in functions. Fixes bug where gtk_dataset_*
5648         was accidentally still being used in one place, causing
5649         every dest side event to be treated independently.
5650
5651         * gtk/gtkdnd.c: Remove last vestages of handling
5652         ::draw (fixes warning)
5653         
5654         * gtk/gtkentry.[ch]: Add drag and drop support.
5655
5656         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
5657         new function gtk_check_drag_threshhold() for checking
5658         to check if (dx,dy) has exceeded the threshhold for starting
5659         a drag and use it everywhere.
5660
5661 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
5662
5663         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
5664         add -I{includedir}/gtk-2.0.
5665
5666         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
5667         gdk/gdk-pixbuf.h: Doc fixups.
5668         
5669         * gtk/gtkobject.h: Remove trailing , from enum
5670
5671 2001-01-17 Alexander Larsson <alexl@redhat.com> 
5672
5673         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
5674         Doh! Mixed up x and y.
5675
5676         * gdk/linux-fb/gdkglobals-fb.c:
5677         Removed gdk_fb_pointer_grab_window_events,
5678         added _gdk_fb_pointer_grab_owner_events and
5679         _gdk_fb_keyboard_grab_owner_events.
5680
5681         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
5682         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
5683         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
5684         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
5685         Send crossing events after ungrab finished.
5686         (gdk_keyboard_grab): Set ..._owner_events
5687         (type_masks): Move out of function.
5688         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
5689         gdk_fb_keyboard_event_window): New functions, return the
5690         window an event should be targeted at. Handles grabs and
5691         event propagation. Can return NULL.
5692         (gdk_event_make): Remove event_mask checking. Now always
5693         returns an event.
5694                 
5695         * gdk/linux-fb/gdkkeyboard-fb.c:
5696         * gdk/linux-fb/gdkproperty-fb.c:
5697         * gdk/linux-fb/gdkselection-fb.c:
5698         Use new event_window/gdk_event_make() behaviour.
5699         
5700         * gdk/linux-fb/gdkmouse-fb.c:
5701         Use new event_window/gdk_event_make() behaviour.
5702         Only send motion events if in the same window.
5703         If grabbed, use cursor from window if sibling of grabbed
5704         window, and cursor from grabbed window otherwise.
5705
5706         * gdk/linux-fb/gdkprivate-fb.h:
5707         Update gdk_fb_window_send_crossing_events, gdk_event_make
5708         and grab varaible declarations. Add gdk_fb_*_event_window().
5709
5710         * gdk/linux-fb/gdkwindow-fb.c:
5711         Use new event_window/gdk_event_make() behaviour.
5712         Keep correct track of focus window.
5713         (gdk_window_set_events): Set all specific button motion masks
5714         if GDK_BUTTON_MOTION_MASK set.
5715
5716         * gtk/gtkdnd.c (gtk_drag_update):
5717         Free info->last_event if gdk_drag_motion returned FALSE.
5718
5719 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5720
5721         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
5722         Eliminate redraws when input-only windows are shown or
5723         hidden. Thanks to jpe@archaeopteryx.com.
5724
5725 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
5726
5727         * docs/faq/gtk-faq.sgml: FAQ update:
5728           - Update to bugzilla
5729           - Add GTK+ and security/SUID/SGID
5730           - Add DnD question
5731
5732 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
5733
5734         * gdk/linux-fb/gdkdnd-fb.c:
5735         Some cleanups.
5736         
5737 2001-01-15  Havoc Pennington  <hp@pobox.com>
5738
5739         * tests/testtreeview.c: add test stuff for CellRendererToggle
5740
5741         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
5742         accessor
5743
5744         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
5745         only toggle on button press (would do release like GtkButton, but
5746         we'd need implicit grab code for treeview cells)
5747
5748 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5749
5750         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
5751
5752         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
5753         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
5754
5755         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
5756         to g_{locale,filename}_{to,from}_utf8 to match current API.
5757
5758         * gtk/makefile.msc.in (gtk_OBJECTS)
5759         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
5760
5761         * gtk/gtk.def: Update.
5762
5763 2001-01-15  Tor Lillqvist  <tml@iki.fi>
5764
5765         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
5766         implementaion that more closely mimics the events that an X server
5767         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
5768         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
5769         with nested preview widgets, for instance, more responsive when
5770         you move the mouse quickly into them.
5771         (find_window_for_pointer_event): Make it actually compile.
5772         (gdk_event_translate): Set send_event to the value of
5773         InSendMessage (). This doesn't really mean the same as X11's
5774         send_event flag, but is close enough, says jpe@archaeopteryx.com
5775
5776 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5777
5778         * gdk/linux-fb/gdkdnd-fb.c:
5779         Implemented drag and drop.
5780         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
5781         when it tries to free and then copy the same event (info->last_event).
5782         I am not sure about why this happens, but will continue looking.
5783
5784 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5785
5786         * gdk/linux-fb/gdkwindow-fb.c:
5787         Use gdk_window_invalidate_rect instead of
5788         gdk_window_invalidate_rect_clear to minimise flashing.
5789         When hiding windows you need to clear the root window though.
5790
5791 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5792
5793         * gdk/linux-fb/gdkdrawable-fb2.c:
5794         For optization, add an full_shapes argument to gdk_fb_clip_region.
5795         If this is false, only the cliprects of the shapes are used.
5796
5797         * gdk/linux-fb/gdkprivate-fb.h:
5798         Export gdk_fb_window_peek_shape.
5799         Add full_shapes to gdk_fb_clip_region.
5800
5801         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
5802         When moving a window, don't clear everything under the it, just the
5803         root window. Makes stuff faster and flash less.
5804         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
5805         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
5806         offset of the shape.
5807         
5808
5809 2001-01-12  Havoc Pennington  <hp@redhat.com>
5810
5811         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
5812         current invalid region, fixes redraw bug while scrolling the 
5813         text widget
5814
5815         * gtk/gtktextview.c, gtk/gtktextview.h:
5816         Rearrange the scrolling/validation/etc. code in a major way, 
5817         so it seems to make sense to me. Probably isn't genuinely that
5818         much better, but...
5819
5820         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
5821         notifies
5822
5823         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
5824
5825 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
5826
5827         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
5828         Hide mouse pointer while rotation. Show it afterwards.
5829
5830 2001-01-12  Alexander Larsson  <alexl@redhat.com>
5831
5832         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
5833         windows in consideration when generating clip region.
5834
5835         * gdk/linux-fb/gdkfb.h:
5836         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
5837
5838         * gdk/linux-fb/gdkprivate-fb.h:
5839         Add shape to GdkWindowFBDatat.
5840         exported gdk_fb_window_get_abs_shape().
5841         removed gdk_fb_draw_lines declaration.
5842
5843         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
5844         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
5845         send focus changes when there is a grabbed window.
5846         (gdk_window_get_pointer): Handle shaped windows.
5847         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
5848         (gdk_fb_window_peek_shape): Returns the shape for a window,
5849         handles GDK_FB_USE_CHILD_SHAPE.
5850         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
5851         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
5852         (gdk_window_shape_combine_mask): Implement.
5853
5854         * gtk/gtkwindow-decorate.c:
5855         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
5856         setting the shape of a window makes the window transparent.
5857
5858 2001-01-11  Havoc Pennington  <hp@redhat.com>
5859
5860         * gtk/gtktreemodelsimple.h: Oops, broke some macros
5861
5862 2001-01-10  Havoc Pennington  <hp@redhat.com>
5863
5864         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
5865         add this function, bug 40251
5866
5867         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
5868         of type macro   
5869
5870 2001-01-11  Alexander Larsson  <alexl@redhat.com>
5871
5872         * acconfig.h:
5873         Added ENABLE_SHADOW_FB
5874
5875         * configure.in:
5876         Added --disable-shadowfb
5877
5878         * gdk/linux-fb/gdkcursor-fb.c:
5879         Update shadowfb when updating cursor
5880
5881         * gdk/linux-fb/gdkdrawable-fb2.c:
5882         Added wrappers for shadowfb that calls  the normal drawable
5883         methods, but calls gdk_shadow_fb_update(bounding box) when
5884         GdkWindows are drawed to.
5885         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
5886         which also returns the bounding box.
5887
5888         * gdk/linux-fb/gdkfb.h:
5889         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
5890
5891         * gdk/linux-fb/gdkgeometry-fb.c:
5892         Update shadowfb when scrolling window.
5893
5894         * gdk/linux-fb/gdkglobals-fb.c:
5895         Add _gdk_fb_screen_angle.
5896         
5897         * gdk/linux-fb/gdkkeyboard-fb.c:
5898         Test code for screen rotation. Shift-F2 in the xlate driver
5899         rotates the screen.
5900
5901         * gdk/linux-fb/gdkmain-fb.c:
5902         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
5903
5904         * gdk/linux-fb/gdkmouse-fb.c:
5905         Use fb_width/height instead of modeinfo.xres/yres.
5906
5907         * gdk/linux-fb/gdkprivate-fb.h:
5908         Added fb_men, fb_width, fb_height & fb_stride. When using
5909         shadow fb these can differ from the framebuffer stuff.
5910         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
5911         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
5912         _gdk_fb_screen_angle. Removed CM, RP.
5913
5914         * gdk/linux-fb/gdkrender-fb.c:
5915         Added code for shadowfb handling and screen rotation using
5916         shadowfb.
5917
5918         * gdk/linux-fb/gdkwindow-fb.c:
5919         Use fb_mem, fb_stride, fb_width, fb_height.
5920         Added recompute_rowstride to reset the rowstride of all windows.
5921         Added gdk_fb_recompute_all() which recomputes rootwindow size,
5922         window abs positions and window rowstrides. Usefull when the
5923         rotation has changed.
5924
5925 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
5926
5927         * docs/faq/gtk-faq.sgml: update to make web site updating easier
5928
5929 2001-01-10  Havoc Pennington  <hp@redhat.com>
5930
5931         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
5932         where sibling == iter
5933         (gtk_tree_store_insert_after): handle sibling == iter
5934         (gtk_tree_store_prepend): remove stamp checks
5935         (gtk_tree_store_insert_before): ditto
5936         (gtk_tree_store_append): ditto
5937         (gtk_tree_store_get_path): ditto
5938         (gtk_tree_store_get_value): ditto
5939         (gtk_tree_store_iter_has_child): ditto
5940         (gtk_tree_store_iter_n_children): ditto
5941         (gtk_tree_store_iter_nth_child): ditto
5942         (gtk_tree_store_insert_after): ditto
5943         (gtk_tree_store_is_ancestor): ditto
5944         (gtk_tree_store_iter_depth): ditto
5945         (gtk_tree_store_insert_before): assert that sibling's parent is
5946         the same as the passed-in parent
5947         (gtk_tree_store_insert_after): assert that sibling's parent is
5948         the same as the passed-in parent
5949
5950         
5951         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
5952         function to get the first iterator in a model
5953         
5954         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
5955         conventionally the "root" in this sense is just NULL afaict.
5956
5957         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
5958         where sibling == iter
5959         (gtk_list_store_insert_after): handle case where sibling == iter
5960
5961         * tests/testtreeview.c (run_automated_tests): fairly lame basic
5962         automated tests for ListStore, TreeStore
5963
5964         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
5965         (gtk_list_store_insert): update tail pointer, and fix it to work
5966         (gtk_list_store_insert_before): update tail pointer, and fix it to work
5967         (gtk_list_store_append): use tail to be faster
5968         (gtk_list_store_prepend): fix it, update tail pointer
5969         (gtk_list_store_insert_after): fix it, update tail pointer
5970
5971         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
5972         the list
5973
5974 2001-01-09  Havoc Pennington  <hp@redhat.com>
5975
5976         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
5977         is NULL due to a pending resize
5978
5979         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
5980         column width to values less than 1
5981
5982         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
5983         width to be between min/max width, and still set the width 
5984         even if autosize is turned on, so the tree view can use this 
5985         function in order to autosize.
5986         (gtk_tree_view_column_init): set initial width to 1 not 0
5987
5988         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
5989         setter function to modify column width, so we get notification
5990         (gtk_tree_view_insert_iter_height): ditto
5991         (gtk_tree_view_calc_size): ditto
5992         (gtk_tree_view_check_dirty): ditto
5993
5994         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
5995         properties to change all the interesting attributes of the tree
5996         view column.
5997         (gtk_tree_view_column_set_header_clickable): rename set_clickable
5998         (gtk_tree_view_column_get_clickable): add
5999         (gtk_tree_view_column_set_cell_renderer): don't unset the current
6000         attributes; assume a cell renderer with equivalent object
6001         properties has been swapped in. Do g_object_notify().
6002         (gtk_tree_view_column_set_visible): g_object_notify
6003         (gtk_tree_view_column_get_sizing): rename from get_col_type
6004         (gtk_tree_view_column_set_sizing): g_object_notify
6005         (gtk_tree_view_column_set_width): add g_object_notify
6006         (gtk_tree_view_column_set_min_width): ditto
6007         (gtk_tree_view_column_set_max_width): ditto
6008         (gtk_tree_view_column_set_title): ditto
6009         (gtk_tree_view_column_set_clickable): ditto
6010         (gtk_tree_view_column_set_widget): ditto
6011         (gtk_tree_view_column_set_justification): ditto
6012
6013 2001-01-09  Havoc Pennington  <hp@redhat.com>
6014
6015         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
6016         there are no rows in the model
6017
6018         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
6019         NULL, then return the start of the list
6020
6021         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
6022         if we can't get any rows from an empty model 
6023
6024         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
6025         extraneous * after function pointer typedef usage
6026
6027         * Makefile.am: don't specify full path to cp and rm
6028
6029         * gtk/gtkcellrenderertextpixbuf.c
6030         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
6031         NULL before dereferencing, fixes a segfault that happened from
6032         time to time
6033
6034         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
6035         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
6036         and reindent the function
6037         (gtk_cell_renderer_pixbuf_get_size): indentation
6038
6039         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
6040         we quit it
6041         (gtk_dialog_add_buttons_valist): add g_return_if_fail
6042         (gtk_dialog_set_default_response): New function, to set default
6043         button
6044         (gtk_dialog_set_response_sensitive): New function, to set 
6045         sensitivity of buttons
6046
6047         * gtk/gtkcellrendererpixbuf.c
6048         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
6049         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
6050
6051         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
6052         handle any G_TYPE_OBJECT subclass, not just the base class, and 
6053         also boxed types.
6054         (_gtk_tree_data_list_value_to_node): ditto
6055
6056         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
6057         --gtk-debug=tree
6058
6059         * gtk/gtkmain.c: add GTK_DEBUG_TREE
6060
6061         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
6062
6063 2001-01-09  Tor Lillqvist  <tml@iki.fi>
6064
6065         * gdk/win32/gdkevents-win32.c: Implement better mouse
6066         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
6067         (find_window_for_pointer_event): New function.
6068         (gdk_event_translate): Use it when handling mouse events.
6069
6070 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
6071
6072         * configure.in:
6073         Added --with-included-loaders option
6074
6075         * gdk-pixbuf/Makefile.am:
6076         * gdk-pixbuf/gdk-pixbuf-io.c:
6077         Add support for including selected gdk-pixbuf loaders only.
6078
6079         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
6080         gtk_window_set_has_frame):
6081         Added inline documentation.
6082
6083         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
6084         * docs/reference/gdk/tmpl/windows.sgml:
6085         Added inline documentation.
6086
6087 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
6088
6089         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
6090         realizing buttons that have already been realized.
6091
6092 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
6093
6094         * tests/testtreeview.c (main): Show menu items before adding to
6095         option menu.
6096
6097         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
6098         around if we kill them.
6099
6100         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6101         Return if we pass in a NULL model.
6102
6103 2001-01-08  Havoc Pennington  <hp@redhat.com>
6104
6105         * tests/testtreeview.c: hack on this some
6106
6107         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
6108         gtk_tree_store_set_valist, v is for arrays, valist for varargs
6109         list
6110         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
6111
6112         * gtk/gtkliststore.h: Add varargs set() and get() convenience
6113         functions
6114
6115 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6116
6117         * gtk/gtkwindow-decorate.[hc]:
6118         * gtk/Makefile.am:
6119         New files. Contains an implementation of a minimal WM for
6120         linux-fb.
6121
6122         * gtk/gtkwindow.h:
6123         Add the possibility for GtkWindows to specify a frame. This
6124         is used for the window decoration code, but could concievably
6125         be used for X programs too (xmms style windows).
6126         GtkWindow->frame is the toplevel window if the window is framed.
6127         The signal frame_event gets all events that are targeted to
6128         GtkWindow->frame.
6129         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
6130         
6131         * gtk/gtkwindow.c:
6132         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
6133         Call out to gtkwindow-decorate.c for WM support in linx-fb.
6134
6135 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6136
6137         * docs/README.linux-fb:
6138         Correct filename ~/.pangoft2_aliases
6139
6140         * gdk/gdkwindow.h:
6141         Added new function gdk_window_get_decorations.
6142
6143         * gdk/linux-fb/gdkfb.h:
6144         Removed _gdk_window_get_decorations declaration.
6145         Renamed _gdk_window_set_child_handler to
6146         gdk_fb_window_set_child_handler.
6147
6148         * gdk/linux-fb/gdkwindow-fb.c:
6149         Renamed _gdk_window_set_child_handler to
6150         gdk_fb_window_set_child_handler.
6151
6152         * gdk/x11/gdkwindow-x11.c:
6153         New function gdk_window_get_mwm_hints().
6154         Implemented gdk_window_get_decorations.
6155
6156         * docs/reference/gdk/tmpl/windows.sgml:
6157         * docs/reference/gdk/gdk-sections.txt:
6158         Added gdk_window_get_decorations docs.
6159         
6160 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
6161
6162         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
6163         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
6164         gdk_fb_window_send_crossing_events):
6165         Possibly send focus events when the mouse moves from one
6166         window to another.
6167
6168 2001-01-07  Tor Lillqvist  <tml@iki.fi>
6169
6170         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
6171         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
6172         to match current API.
6173
6174         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
6175         environment variable is set, don't call g_error when on a
6176         palettized (PseudoColor) display. Some people want to use GTK+ 
6177         in 256-colour mode even though works only partially.
6178
6179         * gdk/gdk.def
6180         * gtk/gtk.def
6181         * gtk/makefile.mingw.in: Update.
6182
6183 2001-01-05  Havoc Pennington  <hp@redhat.com>
6184
6185         * tests/testtreeview.c: hack on this a bit
6186
6187         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
6188         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
6189
6190         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
6191         was spelled incorrectly
6192         (GTK_IS_TREE_MODEL_SIMPLE): ditto
6193
6194         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
6195         from gtk_tree_view_set_headers_active   
6196
6197         * gtk/gtktexttag.c:
6198         (gtk_text_tag_get_property): handle PROP_DIRECTION
6199         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
6200         properties, bug 40235
6201
6202         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
6203         forward_to_line_end
6204
6205 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
6206
6207         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
6208         modules/input/gtkimcontextxim.c: Adapt to new prototypes
6209         for unicode,locale,filename conversion functions.
6210
6211 2001-01-05  Havoc Pennington  <hp@redhat.com>
6212
6213         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
6214         broken if called on the first position in the buffer.
6215
6216         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
6217         forward_to_delimiters to be called only if we aren't already at
6218         the delimiters.
6219
6220 2001-01-05  Havoc Pennington  <hp@redhat.com>
6221
6222         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
6223
6224 2001-01-05  Alexander Larsson  <alexl@redhat.com>
6225
6226         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
6227         colormap in here. Sync from X port.
6228         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
6229         Sync from X port.
6230         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
6231         This happens now and then, and i don't think it is a bug.
6232         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
6233         != endpoint.
6234         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
6235         GDK_LINE_SOLID.
6236
6237         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
6238         some of the fields filled in at least.
6239
6240         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
6241         miLineArcD is no more, remove it from the function definition.
6242
6243 2001-01-04  Havoc Pennington  <hp@redhat.com>
6244
6245         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
6246         this
6247
6248         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
6249         user_data instead of tree_node
6250
6251         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
6252         TREE_VIEW_COLUMN_SIZE
6253
6254         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
6255         "size" field to "width" finishes bug 40061
6256
6257         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
6258         for bitfields, bug 40268
6259
6260 2001-01-04  Havoc Pennington  <hp@redhat.com>
6261
6262         Rename some stuff:
6263         
6264         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
6265
6266         s/GtkModelSimple/GtkTreeModelSimple/g;
6267         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
6268         s/gtk_model_simple/gtk_tree_model_simple/g;
6269         s/gtkmodelsimple/gtktreemodelsimple/g;
6270
6271         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
6272
6273         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
6274         s/column_set_col_type/column_set_sizing/g;
6275
6276         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
6277         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
6278
6279         s/GtkCellRendererType/GtkCellRendererState/g;
6280         
6281         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
6282         (gtk_cell_renderer_toggle_class_init): change "state" property to
6283         "active", to match GtkToggleButton
6284         (gtk_cell_renderer_toggle_get_active): new function, bug
6285         40269
6286         (gtk_cell_renderer_toggle_set_active): new function
6287         (gtk_cell_renderer_toggle_set_property): route changes to toggle
6288         state through gtk_cell_renderer_set_active
6289
6290 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
6291
6292         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
6293         temporarily until they work again.  Brought up to date with
6294         changes in the model.
6295         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
6296         model.
6297
6298 2001-01-04  Havoc Pennington  <hp@redhat.com>
6299
6300         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
6301         equal to the line length, then position iterator before paragraph 
6302         separators. Fixes crash reported by Mikael Hermansson when
6303         pressing left arrow from the start of a line.   
6304
6305         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
6306         about byte indexes off the end
6307         (iter_set_from_char_offset): add g_error about char offsets
6308         off the end
6309
6310 2001-01-03  Havoc Pennington  <hp@redhat.com>
6311
6312         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
6313
6314         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
6315         of private functions; remove inclusion of private headers.
6316
6317         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
6318         function, so we don't need private functions in gtktextdisplay.c
6319
6320         * gtk/gtktextiterprivate.h: underscore-ification
6321
6322         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
6323         to instead say "only useful to implement widgets"
6324
6325         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
6326         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
6327         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
6328
6329         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
6330         This function was completely broken
6331
6332         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
6333
6334         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
6335
6336         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
6337
6338         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
6339
6340         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
6341
6342         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
6343
6344         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
6345         gtk_paint_layout
6346
6347         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
6348         gtk_paint_layout
6349
6350         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
6351         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
6352         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
6353         which were not implemented.     
6354
6355         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
6356         insert_pixbuf signal. Rename delete_text to delete_range since it
6357         also deletes pixbufs and child anchors. This almost closes bug
6358         40245 (still need to deal with child anchors)
6359
6360         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
6361         insert_pixbuf, change signal names as appropriate, change types of
6362         signals taking marks/tags to have the specific type, not just
6363         G_TYPE_OBJECT
6364         
6365         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
6366         closes bug 40051
6367
6368         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
6369         unnecessary remove_contents() call
6370         (gtk_option_menu_class_init): add a "changed" signal, closes
6371         bug 40039
6372         (gtk_option_menu_update_contents): emit "changed" if the 
6373         active menu item changes
6374
6375         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
6376         cast to GtkObject, reported by Jonas Borgstrom
6377         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
6378         we can't do stuff with side effects in finalize. Instead, spew a
6379         warning if the loader isn't closed.
6380
6381         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
6382         colormap in here, non-X ports probably need to sync to this change
6383
6384         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
6385         assertion that colormap != NULL, you can set the colormap to NULL
6386         if you like.
6387         
6388         * Makefile.am: remove gtk-config-2.0
6389
6390         * configure.in: Use pkg-config to locate GLib. Remove
6391         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
6392         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
6393         Use pkg-config to locate Pango. Output correct Pango libs to
6394         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
6395
6396         * Makefile.am (pkgconfig_DATA): install only target-specific pc
6397         files
6398         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
6399         X11 pc files
6400
6401         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
6402         unref from here
6403
6404 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
6405
6406         * configure.in:
6407         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
6408
6409 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
6410
6411         * gtk/gtktextlayout.c
6412         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
6413         variable when moving back onto a single line.
6414
6415 2001-01-01  Havoc Pennington  <hp@redhat.com>
6416
6417         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6418
6419         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6420
6421         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
6422         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
6423
6424 2001-01-01  Havoc Pennington  <hp@redhat.com>
6425
6426         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
6427
6428         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
6429         GtkTextAttributes
6430
6431         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
6432         #40246
6433         (gtk_text_attributes_copy_values): rename from 
6434         gtk_text_attributes_copy
6435         (gtk_text_attributes_copy): a more standard GTK copy function, 
6436         which returns a new object
6437
6438 2001-01-01  Havoc Pennington  <hp@redhat.com>
6439
6440         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
6441         
6442         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
6443         don't fill in tree_view->priv->selection, kind of an unexpected
6444         side effect
6445
6446         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
6447         gtkintl.h
6448         
6449         * gtk/gtkcellrenderer.c: Remove definition of _ and include
6450         gtkintl.h
6451         (gtk_cell_renderer_get_property): remove calls to g_value_init
6452
6453         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
6454         gtkintl.h
6455
6456         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
6457         and include gtkintl.h
6458         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
6459         property names
6460
6461         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
6462         GtkTreeSelection
6463         (_gtk_tree_selection_new_from_with_view): rename, return
6464         GtkTreeSelection
6465         (_gtk_tree_selection_set_tree_view): rename with uscore
6466         (gtk_tree_selection_get_selected): fill in the "model" out param
6467         first, so it gets filled in even if we return at the top of the 
6468         function
6469         (gtk_tree_selection_real_select_all): add a comment and an else{}
6470         to clarify this a bit
6471         (gtk_tree_selection_real_unselect_all): add the same else{}
6472
6473         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
6474         set_tree_view to have underscore prefixes, move them to the
6475         private header, fix return type of new_with_tree_view
6476         (struct _GtkTreeSelection): mark struct
6477         fields private  
6478
6479         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
6480         GtkTreeModelFlags, not a guint
6481         (gtk_tree_path_prev): return gboolean not gint
6482         (gtk_tree_path_up): return gboolean not gint
6483
6484         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
6485         return GtkTreeModelFlags, not a guint
6486
6487         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
6488         that child model is non-null before unrefing it
6489         (g_value_int_compare_func): make this a qsort compare func, not 
6490         a boolean predicate
6491
6492         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
6493         (add -umn to the end), and mark it unimplemented
6494         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
6495         I don't see what it's for - doesn't the model always sort itself?
6496         (gtk_tree_model_sort_set_compare): this had the wrong signature
6497
6498         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
6499         Fix the docs to say that it destructively replaces existing
6500         attributes (previously said that it added attributes).
6501         (gtk_tree_view_column_set_visible): canonicalize bool before
6502         equality testing. Also, check for realization before
6503         hiding/showing the tree_column->window; if this window could exist
6504         before realization, then it's busted and needs fixing, we can't 
6505         create GDK resources pre-realization. Also, remove
6506         superfluous queue_resize(), since set_size() does that for us.
6507         (gtk_tree_view_column_set_col_type): check realization before 
6508         using tree_column->window
6509
6510         * gtk/gtktreedatalist.c: fix filename in copyright notice
6511
6512 2000-12-31  Havoc Pennington  <hp@pobox.com>
6513
6514         * gtk/gtktextview.c: Rearrange all the
6515         scroll-while-dragging-or-selecting code to be different, not
6516         necessarily better. ;-)
6517         (gtk_text_view_scroll_to_mark): Change this
6518         function to take within_margin as a fraction instead of a pixel
6519         value, and to take alignment arguments (indicating where to align 
6520         the mark inside the visible area)
6521         
6522         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
6523         to GtkObject
6524
6525         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
6526         behavior so that offsets past the end of the line are not 
6527         allowed, and an offset equal to the line length moves the iterator
6528         to the next line
6529         (gtk_text_iter_set_line_index): make parallel change
6530         (gtk_text_iter_get_bytes_in_line): add this function
6531         
6532         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
6533         of byte indexes off the end of the line; byte index at the end of
6534         the line now returns FALSE and doesn't fill in the requested
6535         values, byte index past the end of the line is an error.  Also,
6536         don't allow -1 offset anymore, since its meaning is unclear.
6537
6538         This change exposes some bug in visual cursor motion, where we
6539         end up with a huge invalid byte index; needs fixing. Symptom of 
6540         bug is a crash when you hit up arrow.
6541         
6542         (_gtk_text_line_char_locate): match the change to byte_locate
6543
6544         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
6545         from start of line properly. fixes bug reported by Mikael
6546         Hermansson where backspace would delete all text before the
6547         cursor.
6548
6549 2000-12-30  Tor Lillqvist  <tml@iki.fi>
6550
6551         * gdk/win32/gdkwindow-win32.c
6552         (gdk_window_impl_win32_get_visible_region): New function, as in
6553         the X11 backend.
6554         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
6555         instead of duplicating the same code here.
6556
6557         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
6558         GDK_COLORMAP macro.
6559
6560         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
6561         destroy function.
6562         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
6563         access that.
6564
6565         * gtk/gtk.def: Update.
6566
6567         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
6568
6569 2000-12-30  Havoc Pennington  <hp@pobox.com>
6570
6571         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
6572         colormap on input only windows, to avoid special cases all over
6573         the code for these windows.
6574
6575 2000-12-26  Tor Lillqvist  <tml@iki.fi>
6576
6577         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
6578         we are on a palettized display ("PseudoColor" in X11), as the code
6579         for that doesn't work anyway, and never has.
6580
6581 2000-12-22  Alexander Larsson  <alexl@redhat.com>
6582
6583         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
6584         Don't use isprint() for chars > 255.
6585
6586 2000-12-21  Havoc Pennington  <hp@redhat.com>
6587
6588         * tests/testtreeview.c: more work
6589
6590 2000-12-21  Alexander Larsson  <alexl@redhat.com>
6591
6592         * docs/README.linux-fb:
6593         Update the docs to the new pangoft2 way.
6594
6595 2000-12-21  Alexander Larsson  <alexl@redhat.com>
6596
6597         * configure.in:
6598         For linux-fb get the pangoft2 cflags and libs. This needs a recent
6599         pango version.
6600         Remove modules/linux-fb/Makefile.
6601
6602         * gdk/linux-fb/gdkdrawable-fb2.c:
6603         Render glyphs using freetype.
6604
6605         * gdk/linux-fb/gdkfb.h:
6606         Add new fb-specific functions needed for managing windows.
6607
6608         * gdk/linux-fb/gdkmain-fb.c:
6609         Remove gdk_font_init/fini() calls.
6610
6611         * gdk/linux-fb/gdkpango-fb.c:
6612         Remove old implementation. Use pangoft2 instead.
6613
6614         * gdk/linux-fb/gdkprivate-fb.h:
6615         Remove PangoFBFont and related stuff.
6616
6617         * gdk/linux-fb/gdkwindow-fb.c:
6618         Implement drawable->get_visible_region.
6619         Implement support for _gdk_window_set_child_handler () and
6620         _gdk_window_get_decorations().
6621
6622         * modules/Makefile.am:
6623         Remove linux-fb subdir.
6624
6625         * modules/linux-fb/*:
6626         Removed all.
6627         
6628 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
6629
6630         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
6631         calls, as they are no longer needed.
6632
6633         * gtk/gtktreemodelsort.c: Fix up the comparison code.
6634         
6635         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
6636         figure out how to emit a signal on an interface.
6637
6638 2000-12-20  Havoc Pennington  <hp@redhat.com>
6639
6640         * tests: new directory to contain tests, gtk/test* should move
6641         here sometime (with appropriate on-cvs-server hackery)
6642
6643         * tests/testtreeview.c, tests/Makefile.am: a test
6644         
6645         * configure.in (AC_OUTPUT): add tests/Makefile
6646
6647         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
6648         and "invisible_set" which were missing
6649
6650         * gtk/gtkrbtree.h: some cheesy indentation fix
6651         
6652 2000-12-20  Alexander Larsson  <alexl@redhat.com>
6653
6654         * gtk/gtkinvisible.c (gtk_invisible_realize):
6655         Attach the style to the window so that the style it is not
6656         leaked when unrealizing the window.
6657
6658 2000-12-18  Havoc Pennington  <hp@redhat.com>
6659
6660         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
6661         begin/end user action where appropriate
6662         (gtk_text_view_commit_handler): add begin/end user action
6663
6664         * gtk/gtktextbuffer.c: add begin/end user action signals, and
6665         bracket interactive operations with begin/end user action pair.
6666         
6667         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
6668         "interactive" arg from insert_text and delete_text signals.
6669         Add begin_user_action, end_user_action signals
6670         (gtk_text_buffer_begin_user_action): 
6671         (gtk_text_buffer_end_user_action): New functions to delimit 
6672         a user-visible action
6673
6674         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
6675         signals.
6676         
6677 2000-12-18  Havoc Pennington  <hp@redhat.com>
6678
6679         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
6680         was pretty non-working.
6681
6682         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
6683         by passing the length to g_utf8_validate().
6684
6685 2000-12-16  Havoc Pennington  <hp@pobox.com>
6686
6687         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
6688         Port to GObject, can go back in gdk-pixbuf after setting up 
6689         a gdk-pixbuf-marshal.h header over there.
6690
6691         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
6692         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
6693         args
6694         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
6695         set
6696         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
6697         here, do it when we create the buttons later
6698         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
6699         (gtk_tree_view_map): paranoia checks that column->button is shown 
6700         and unmapped
6701         (gtk_tree_view_size_request): only request visible children.
6702         Move header size calculation in here, for cleanliness, and 
6703         to maintain invariants for child widgets if we eventually 
6704         let users set different children inside the buttons
6705         (gtk_tree_view_map_buttons): factor out code to map buttons,
6706         since it was being called several times
6707         (gtk_tree_view_size_allocate_buttons): move_resize the drag
6708         windows instead of just moving them; their height may change 
6709         if we allow random widgets in there, or the theme changes.
6710         (gtk_tree_view_size_allocate): move button size allocation 
6711         above emitting the scroll signals, to ensure a sane state when we
6712         hit user code
6713         (gtk_tree_view_button_release): remove queue_resize after
6714         tree_view_set_size(), set_size() will handle any resize queuing
6715         that's needed
6716         (gtk_tree_view_focus_in): just queue a draw, don't fool with
6717         draw_focus goo
6718         (gtk_tree_view_focus): use gtk_get_current_event() and
6719         gdk_event_get_state()
6720         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
6721         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
6722         semicolon
6723         (gtk_tree_view_create_button): show the button here
6724         (gtk_tree_view_button_clicked): actually emit the clicked signal
6725         on the column
6726         (_gtk_tree_view_set_size): return right away if the size is
6727         unchanged, as a cheesy optimization
6728         (gtk_tree_view_setup_model): rename set_model_realized to 
6729         setup_model to match the flag that indicates whether we've 
6730         called it
6731         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
6732         exist, because set_scroll_adjustment does that and it shouldn't
6733         matter what order you call these in
6734         (gtk_tree_view_get_vadjustment): ditto
6735         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
6736         for paranoia
6737         (gtk_tree_view_set_headers_visible): call
6738         gtk_tree_view_map_buttons() instead of using cut-and-paste code
6739         (gtk_tree_view_append_column): clarify whether the return value
6740         is the count of columns before or after, and do the increment 
6741         separately from the return statement so you can tell from the code.
6742         (gtk_tree_view_remove_column): ditto
6743         (gtk_tree_view_insert_column): ditto
6744         (gtk_tree_view_get_column): remove g_return_if_fail for columns
6745         outside the existing range, the docs say that outside-range
6746         columns are allowed, so we handle them as documented. (Presumably
6747         this allows a nice loop with column != NULL as test.)
6748         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
6749         mean (left/right/center etc.).
6750         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
6751         (gtk_tree_view_expand_row): add docs
6752         (gtk_tree_view_collapse_row): add docs
6753
6754         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
6755         function to emit the clicked signal on a column
6756         
6757         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
6758         state of an event
6759         (gdk_event_get_time): don't treat GDK_SCROLL 
6760         as a button event, remove default case from switch so gcc 
6761         will whine if we don't explicitly handle all event types
6762
6763         * gtk/gtktreeselection.h: added some FIXME 
6764         
6765         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
6766         "columns" to "n_columns" and "column" to "columns" for clarity
6767
6768 2000-12-16  Havoc Pennington  <hp@pobox.com>
6769         
6770         * gtk/gtktextiter.c: General cleanup of the log attr iteration
6771         stuff. This should make e.g. the delete key work again in the
6772         text widget...
6773         (gtk_text_iter_forward_cursor_positions): handle negative count
6774         (gtk_text_iter_backward_cursor_positions): handle negative count
6775         (gtk_text_iter_forward_word_ends): handle negative count
6776         (gtk_text_iter_backward_word_starts): handle negative count
6777
6778         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
6779         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
6780         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
6781         GObject. No doubt will cause breakage.
6782
6783         * demos/gtk-demo/textview.c: remove hacks around
6784         non-GObject-ification of the text objects
6785
6786         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
6787         the text tag
6788         
6789 2000-12-14  Havoc Pennington  <hp@pobox.com>
6790
6791         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
6792         that we have Xrender
6793
6794 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
6795
6796         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
6797         Add two virtualized functions gdk_drawable_get_clip_region - to
6798         get the clip region when drawing.
6799         
6800         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
6801         use invalidate_region.
6802
6803         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
6804         region.
6805
6806         * acconfig.h configure.in: Check for Xft. For now, assume
6807         that if Xft is found, Pango was compiled with Xft support
6808         as well.
6809
6810         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
6811         gdk_colormap_query_color().
6812         
6813         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
6814         with Xft if appropriate.
6815
6816         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
6817         a pangoxft context if we have XFT and the environment
6818         variable GD_USE_XFT is set.
6819         
6820         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
6821         and also possibly an XftDraw structure.
6822
6823         * gtk/gtkfontsel.c: Handle the case where the font from the
6824         style doesn't match any of the fonts a bit better.
6825         
6826         * gtk/testgtk.c: Add tabs between directional segments for
6827         hebrew/arabic test. (Not really necessary, just a little
6828         prettier.)
6829
6830 2000-12-14  Havoc Pennington  <hp@redhat.com>
6831
6832         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
6833         reading a file
6834
6835 2000-12-14  Havoc Pennington  <hp@redhat.com>
6836
6837         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
6838         unused call to get_last_line()
6839
6840         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
6841         here until boxed is working (and maybe after that - we should
6842         really not gratuitously break old code)
6843
6844         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
6845         specific types for font_desc and tabs args, move them to
6846         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
6847         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
6848
6849         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
6850         use GTK_TYPE_POINTER for signal signatures as a hack-around
6851
6852         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
6853         PangoTabArray
6854
6855         * gtk/gtktextlayout.c (line_display_iter_to_index): 
6856         make static
6857         (line_display_index_to_iter): make static
6858
6859         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
6860         to marshal a string not a boxed
6861
6862         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
6863
6864         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
6865         since the UTF-8 isn't validated yet
6866
6867         * gtk/gtktextsegment.c (char_segment_check_func): don't require
6868         lines to end in '\n'
6869         
6870         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
6871         forward_to_delimiters, and grapheme boundaries
6872         (gtk_text_view_delete_from_cursor): properly handle non-newline
6873         delimiters, and grapheme boundaries
6874
6875         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
6876         to gtk_text_iter_forward_to_delimiters, and make it work properly
6877         if empty lines end with a character other than '\n'
6878
6879         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
6880         position
6881
6882 2000-12-15  Tor Lillqvist  <tml@iki.fi>
6883
6884         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
6885
6886         * gtk/gtk.def
6887         * gdk/gdk.def: Update.
6888
6889         * gdk/win32/gdkmain-win32.c
6890         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
6891         gdkmain-win32.c here.
6892
6893         * gdk/win32/makefile.mingw.in (all): No need to make
6894         gdk-win32res.o here, the makefile one step up will call us to make
6895         it.
6896
6897         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
6898         gdkkeys-win32.
6899
6900         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
6901
6902         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
6903         call to g_source_add().
6904
6905         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
6906         leak. Thanks to Andreas Kemnade.
6907
6908 2000-12-13  Havoc Pennington  <hp@pobox.com>
6909
6910         * gtk/gtktextbtree.h: Remove double _ in front of some functions
6911
6912         * gtk/gtktext*.[hc]: update accordingly
6913         
6914 2000-12-13  Havoc Pennington  <hp@pobox.com>
6915
6916         * gtk/gtktextbtree.h: Put _ in front of every function in this 
6917         header file
6918
6919         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
6920
6921 2000-12-13  Alex Larsson  <alexl@redhat.com>
6922
6923         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
6924         Add support for ps2 intellimouse.
6925
6926         * gdkkeyboard-fb.c:
6927         Move shift-F1 repaint handling to xlate handler only.
6928         
6929         * docs/README.linux-fb:
6930         Add imps2 to docs.
6931         Document the new refresh keys.
6932         
6933 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
6934
6935         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
6936
6937         * gtk/gtkbox.c: change property types from (u)long to (u)int for
6938         ::position and ::padding.
6939
6940         * gtk/gtkcontainer.c: make ::border_width an INT property.
6941
6942         * gtk/gtkpacker.c: make ::position an INT property.
6943
6944         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
6945         guard against NULL h/v scrollbars, since this is used at construction
6946         time.
6947
6948         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
6949         internal gtk_clist_constructor().
6950
6951         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
6952         gtk_ctree_constructor().
6953
6954         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
6955         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
6956
6957         * docs/reference/Makefile.am: fun stuff, disabled docs generation
6958         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
6959
6960         * gtk/gtkwidget.[hc]:
6961         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
6962         and gtk_widget_get().
6963         (gtk_widget_new): use g_object_new_valist().
6964         (gtk_widget_set): use g_object_set_valist().
6965
6966         * gtk/gtkobject.[hc]:
6967         removed gtk_object_arg_get_info(), gtk_object_getv(),
6968         gtk_object_query_args(), gtk_object_newv(),
6969         gtk_object_class_add_signals(),
6970         gtk_object_class_user_signal_new(),
6971         gtk_object_class_user_signal_newv(),
6972         gtk_object_arg_set(), gtk_object_arg_get(),
6973         gtk_object_args_collect(),
6974         gtk_object_default_construct(),
6975         gtk_object_constructed(),
6976         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
6977         removed nsignals, signals and n_args members from GtkObjectClass.
6978         (gtk_object_new): use g_object_new_valist().
6979         (gtk_object_set): use g_object_set_valist().
6980         (gtk_object_get): use g_object_get_valist().
6981         
6982         * gtk/gtkcompat.h: define gtk_object_default_construct().
6983         
6984         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
6985         g_object_new().
6986
6987         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
6988         fucntions, cleaned up method assignments (make sure your structures
6989         are setup properly before calling out). removed all GTK_CONSTRUCTED
6990         hacks ;)
6991
6992 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
6993
6994         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
6995         off-by-one error in checks. (Dave Lambert)
6996
6997 2000-12-12  Alexander Larsson  <alexl@redhat.com>
6998
6999         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
7000         Don't free gdk_fb_keyboard twice.
7001
7002 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
7003
7004         * gtk/testgtk.c:
7005         (create_tooltips): 
7006         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
7007         use GObject swapped_signal:: properties instead.
7008
7009         * gtk/gtkcellrenderertoggle.c: 
7010         * gtk/gtkcellrenderertextpixbuf.c: 
7011         * gtk/gtkcellrenderertext.c: 
7012         * gtk/gtkcellrendererpixbuf.c: 
7013         * gtk/gtkcellrenderer.c:
7014         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
7015         missing warnings for invalid property ids, install properties
7016         with g_object_class_install_property() now.
7017         
7018         * gtk/gtksignal.c:
7019         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
7020         
7021 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
7022         
7023         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
7024         to determine if a window is the focus widget within
7025         its toplevel.
7026
7027         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
7028         to be boolean.
7029
7030         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
7031         of the case where the container CAN_FOCUS to here instead
7032         of having it in each individual move-the-focus place.
7033
7034         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
7035         focusing to be geometric in a much more obvious sense. Arrowing
7036         around is still non-intuitive because it isn't perfect and
7037         because entries, etc, grab the arrow keys, but it at least
7038         usually will do what you expect now.
7039         
7040         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
7041         file.
7042
7043         * gtk/gtknotebook.c: Change tabs to be a single item in
7044         the focus chain. Make movement of focus on tabs with arrow
7045         keys wrap around.
7046         
7047         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
7048         CHECK_FIND_CHILD macro to give informative error messages
7049         instead of silent returns.
7050
7051         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
7052         flag since we handle GdkReturn on the tabs.
7053
7054         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
7055         windows rather than sending expose events directly.
7056
7057         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
7058         definition for GtkNotebookPage into .c file, since it is private.
7059
7060         * gtk/testgtk.c (create_notebook): Add option for 
7061         testing borderless notebook.
7062
7063         * gtk/testgtk.c (page_switch): Removed egregious poking
7064         around in GTK+ internals.
7065
7066         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
7067
7068         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
7069         properly through gtk_clist_focus. Make the title headers a
7070         single item in the tab-focus chain, and make left-right wrap
7071         around.
7072
7073         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
7074         focus method so that wrapping around works properly.
7075
7076         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
7077         that is handled for the widget now. 
7078
7079 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
7080
7081         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
7082         widgets as TOPLEVEL.
7083
7084         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
7085         TOPLEVEL widgets are containers.
7086
7087         * gtk/gtkinvisible.h: Remove useless include.
7088
7089 2000-12-11  Havoc Pennington  <hp@redhat.com>
7090
7091         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
7092         Handle chopping off \r\n and 0x2029 in addition to \n before
7093         passing to PangoLayout
7094
7095         * gtk/gtkimcontextsimple.c
7096         (gtk_im_context_simple_get_preedit_string): 
7097         return an empty string if no match is pending
7098
7099         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
7100         assertion that the returned preedit string was sane
7101
7102         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
7103         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
7104         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
7105
7106 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
7107
7108         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
7109         Fix up finalizer to chain to its parent.
7110
7111 2000-12-11  Alexander Larsson  <alexl@redhat.com>
7112
7113         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
7114         Clearified the difference between the keyboard types. Wrote a note
7115         about the magic sysrq key to get out of raw mode.
7116
7117 2000-12-09  James Henstridge  <james@daa.com.au>
7118
7119         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
7120         member to hold masks for detecting the start of a protocol packet.
7121         (mouse_devs): add packet start masks for ps2 and ms device types.
7122         Left the mask for fidmour blank, as I have no idea what it should
7123         be.
7124         (handle_mouse_io): skip bytes until we get to the start of a
7125         packet.  My Logitech mouse seems to be passing an extra NULL pad
7126         byte, and GPM does a similar thing here.
7127         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
7128         this is the ms mouse driver.
7129         (gdk_fb_mouse_ms_packet): fix up button handling, which was
7130         completely broken except for button1.  It was checking the wrong
7131         bit in the packet for the status of the right mouse button, and
7132         wrongly assuming right == button2 rather than 3.  I fixed that and
7133         also added support for middle button (button2).
7134
7135 2000-12-08  Havoc Pennington  <hp@redhat.com>
7136
7137         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
7138         that cause a segfault on text insertion
7139
7140         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
7141         warning
7142
7143         * gtk/gtktextiter.c (test_log_attrs): use
7144         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
7145
7146         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
7147         Get log attrs for a line, using a cache stored on the buffer
7148         
7149         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
7150         reported by Jeff Franks
7151
7152 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7153
7154         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
7155         /dev/ttyS0 -> /dev/mouse
7156
7157 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7158
7159         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
7160         Added dummy gdk_fontset_load.
7161
7162 2000-12-08  Alexander Larsson  <alexl@redhat.com>
7163
7164         * docs/README.linux-fb:
7165         * docs/Makefile.am:
7166         Initial GtkFB docs.
7167         
7168         * gdk/linux-fb/Makefile.am:
7169         Define GDK_DATA_PREFIX.
7170
7171         * gdk/linux-fb/gdkmain-fb.c:
7172         Fix typo.
7173         Change default display to /dev/fb0.
7174
7175         * gdk/linux-fb/gdkpango-fb.c:
7176         Add $(prefix)/share/fonts/ to font path.
7177         
7178 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7179
7180         * gdk/linux-fb/gdkkeyboard-fb.c:
7181         New file containing the abstracted keyboard driver. Most code
7182         taken from gdkinput-ps2.c
7183
7184         * gdk/linux-fb/gdkinput-ps2.c:
7185         Removed file.
7186         
7187         * gdk/linux-fb/Makefile.am:
7188         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
7189
7190         * gdk/linux-fb/gdkcolor-fb.c:
7191         display->fb was renamed to display->fb_fd.
7192
7193         * gdk/linux-fb/gdkcursor-fb.c:
7194         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7195
7196         * gdk/linux-fb/gdkinput.c:
7197         Moved gdk_input_init here from gdkinput-ps2.c
7198
7199         * gdk/linux-fb/gdkmain-fb.c:
7200         display->fb was renamed to display->fb_fd.
7201         Now the tty and the console is opened here instead
7202         of in the keyboard driver. Also check GDK_VT to see what
7203         tty to open.
7204         Move gdk_beep () here from gdkinput-ps2.c
7205         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7206
7207         * gdk/linux-fb/gdkmouse-fb.c:
7208         Add header.
7209         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7210         Return correct keyboard modifiers.
7211         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
7212
7213         * gdk/linux-fb/gdkprivate-fb.h:
7214         Add tty and vt info to display.
7215         Add orignal modeinfo storage to display
7216         Update global functions
7217
7218         * gdk/linux-fb/gdkwindow-fb.c:
7219         Added gdk_fb_window_find_focus().
7220         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7221
7222 2000-12-07  Havoc Pennington  <hp@pobox.com>
7223
7224         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
7225         function, noticed by Alex
7226
7227 2000-12-06  Elliot Lee  <sopwith@redhat.com>
7228
7229         * configure.in: Detect freetype properly
7230
7231         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
7232         above.
7233
7234 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7235
7236         * gdk/linux-fb/Makefile.am:
7237         Add gdkmouse-fb.c
7238         
7239         * gdk/linux-fb/gdkmouse-fb.c:
7240         New file. Abstracted the mouse drivers a bit.
7241
7242         * gdk/linux-fb/gdkcursor-fb.c:
7243         The cursor hide/show functions was moved here from gdkinput-ps2.c.
7244
7245         * gdk/linux-fb/gdkinput-ps2.c:
7246         Removed old mouse handling code. Moved cursor handling code
7247         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
7248         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
7249         gdk_mouse_get_info.
7250
7251         * gdk/linux-fb/gdkmain-fb.c:
7252         Pass NULL pointers for x,y in gdk_mouse_get_info call.
7253
7254         * gdk/linux-fb/gdkprivate-fb.h:
7255         Removed public gdk_fb_find_common_ancestor, added and renamed
7256         functions for the new mouse handling code.
7257
7258         * gdk/linux-fb/gdkwindow-fb.c:
7259         Moved gdk_fb_window_send_crossing_events here. added global
7260         variable gdk_fb_window_containing_pointer. made
7261         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
7262         renamed to gdk_mouse_get_info.
7263
7264 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7265
7266         * gdk/linux-fb/gdkevents-fb.c:
7267         Update to match latest gmain/gsource changes.
7268
7269         * gdk/linux-fb/gdkinput-ps2.c:
7270         Bogus gdk_keymap_get_entries_for_keycode implementation so that
7271         it links. Will be implemented later.
7272
7273 2000-12-03  Havoc Pennington  <hp@pobox.com>
7274
7275         * gdk/Makefile.am: add gdkkeys.[hc]
7276
7277         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
7278         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
7279
7280         * acconfig.h, configure.in: add checks and command line options
7281         for XKB
7282
7283         * gdk/x11/gdkkeys-x11.c: Implement the above functions
7284         
7285         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
7286         and group in the key event
7287
7288         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
7289         field with the low-level hardware key code, and a group
7290         field with the keyboard group
7291
7292         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
7293         and declare a couple globals used for keymap handling
7294         
7295         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
7296         hold down Shift-Control and type a hex number to get a Unicode 
7297         character corresponding to the hex number
7298         (gtk_im_context_simple_get_preedit_string): Fix cursor position
7299         (return bytes not chars)
7300
7301 2000-12-05  Elliot Lee  <sopwith@redhat.com>
7302
7303         * gdk/gdkcolor.h: Make GdkColor specify element sizes
7304         to avoid waste on 64-bit platforms.
7305
7306 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
7307
7308         * INSTALL: Fix link to PNG home, remove reference
7309         to fribidi.
7310
7311         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
7312         
7313         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
7314         tested.)
7315
7316         * gtk/gtkcheckmenuitem.c: Permanently turn on
7317         always_show_toggle.
7318
7319         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
7320         be NULL. (Vladimir Klebanov, #26545)
7321
7322         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
7323         some signed/unsigned comparison problems. (#6510,
7324         David Kaelbling)
7325
7326         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
7327         return type to boolean (Oskar Liljeblad, #18648)
7328
7329 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7330
7331         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
7332         Remove bogus colormap setting.
7333
7334 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7335
7336         * gdk/linux-fb/gdkcolor-fb.c:
7337         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
7338
7339         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
7340         Must set colormap.
7341         
7342 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
7343
7344         * docs/tutorial/gtk-tut.sgml: DND updates
7345
7346 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
7347
7348         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7349         Remove old debug g_warning().
7350         (gdk_fb_draw_drawable): The src argument can be either a wrapper
7351         or an implementation, just pass the implementation to draw_drawable_2.
7352         
7353         * gdk/linux-fb/gdkprivate-fb.h:
7354         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
7355
7356         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7357         clear and invalidate area when window is destroyed.
7358         (send_map_events): Remove old commented out code.
7359
7360 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7361
7362         * gdk/linux-fb/gdkpango-fb.c:
7363         Use italic instead of oblique in font aliases.
7364         
7365         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
7366         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
7367         other unsupported functions.
7368
7369 2000-12-04  Havoc Pennington  <hp@redhat.com>
7370
7371         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
7372
7373         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
7374
7375         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
7376
7377         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
7378         hack to avoid infinite loops (synthetic expose event) - 
7379         Owen has more appropriate fixes in a branch he'll check in later.
7380
7381         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
7382         separator, CR, and CRLF as line ends
7383
7384         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
7385         into lines using pango_find_paragraph_boundary(); other bits of
7386         the widget are still going to be broken if the boundary isn't '\n'
7387         though
7388
7389 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7390
7391         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
7392         multiply.
7393
7394         * gdk/linux-fb/gdkpango-fb.c:
7395         Copied some 26.6 scaling macros from pango to clean up the rounding.
7396         (pango_fb_font_get_glyph_info): Correct sign on x value.
7397
7398         * gdk/linux-fb/gdkprivate-fb.h:
7399         Removed unreferenced external functions.
7400
7401         * modules/linux-fb/Makefile.am: Use ` instead of '.
7402
7403         * modules/linux-fb/basic.c:
7404         Remove dead code. In particular the dummy lang engine which broke all
7405         pango layouts in GtkFB. Don't include tables-big.i anymore.
7406
7407         * modules/linux-fb/tables-big.i:
7408         Upgrade to latest version from pango. Left for reference, basic_ranges
7409         moved to basic.c.
7410         
7411 2000-12-04  Havoc Pennington  <hp@redhat.com>
7412
7413         Fix bugs Alex found:
7414         
7415         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
7416         to "draw"
7417
7418         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
7419
7420         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
7421
7422         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
7423         implementation in here, apparently the expose() implementation was
7424         dead code.
7425
7426 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7427
7428         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7429         Return positive descent.
7430
7431 2000-12-02  Havoc Pennington  <hp@pobox.com>
7432
7433         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
7434         method and signal
7435         
7436         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
7437         calls gdk_window_process_updates() to push the exposes through
7438         (gtk_widget_class_init): No more draw signal, no
7439         gtk_widget_real_draw()  
7440         
7441         * gtk/gtkbin.c (gtk_bin_draw): remove
7442
7443         * gtk/gtkbox.c (gtk_box_draw): remove
7444
7445         * gtk/gtkbutton.c (gtk_button_draw): remove
7446
7447         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
7448
7449         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
7450
7451         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
7452
7453         * gtk/gtkclist.c (gtk_clist_draw): remove
7454
7455         * gtk/gtkentry.c (gtk_entry_draw): remove
7456
7457         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
7458
7459         * gtk/gtkfixed.c (gtk_fixed_draw): remove
7460
7461         * gtk/gtkframe.c (gtk_frame_draw): remove
7462
7463         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
7464
7465         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
7466
7467         * gtk/gtklayout.c (gtk_layout_draw): remove
7468
7469         * gtk/gtklist.c (gtk_list_draw): remove
7470
7471         * gtk/gtklistitem.c (gtk_list_item_draw): remove
7472
7473         * gtk/gtkmenu.c (gtk_menu_draw): remove
7474
7475         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
7476
7477         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
7478
7479         * gtk/gtknotebook.c (gtk_notebook_draw): remove
7480
7481         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
7482
7483         * gtk/gtkpacker.c (gtk_packer_draw): remove
7484
7485         * gtk/gtkrange.c (gtk_range_draw): remove
7486
7487         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
7488
7489         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
7490
7491         * gtk/gtktable.c (gtk_table_draw): remove
7492
7493         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
7494
7495         * gtk/gtktext.c (gtk_text_draw): remove
7496
7497         * gtk/gtktextview.c (gtk_text_view_draw): remove
7498
7499         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
7500
7501         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
7502
7503         * gtk/gtktree.c (gtk_tree_draw): remove
7504
7505         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
7506
7507         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
7508
7509         * gtk/gtkviewport.c (gtk_viewport_draw): remove
7510
7511         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
7512
7513         * gtk/gtkvscale.c (gtk_vscale_draw): remove
7514
7515         * gtk/gtkwindow.c (gtk_window_draw): remove
7516
7517 2000-20-01  Anders Carlsson  <andersca@gnu.org>
7518
7519         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
7520         a GtkToggleButton is both insensitive and active, it was being
7521         drawn by the GtkButton draw handler which doesn't check the
7522         state. Now it's calling gtk_toggle_button_paint instead.
7523         
7524 2000-12-01  Havoc Pennington  <hp@redhat.com>
7525
7526         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
7527         dangling pointers to the appearance attributes from the 
7528         line display
7529
7530         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
7531         width/height to mean "full width/height of drawable"
7532
7533         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
7534         click to select word/line
7535         
7536         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
7537         when getting log attrs. Get a slice, so that pixmaps and stuff
7538         are properly handled.
7539
7540         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
7541         paste into the selection (replaces selection now, previously
7542         crashed or added to selection). Reveals longstanding btree bug -
7543         select multiple lines, middle-click on the selection, boom. This
7544         isn't related to my changes though.
7545
7546         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
7547         PangoLogAttrs changes
7548         (gtk_entry_move_backward_word): ditto
7549
7550         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
7551         functions return bool whether the iter moved onto a
7552         dereferenceable position.
7553  
7554         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
7555         functions for motion in terms of display lines.
7556
7557         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
7558         get the buffer a mark is inside
7559         
7560 2000-12-01  Alexander Larsson  <alexl@redhat.com>
7561
7562         * gdk/linux-fb/Makefile.am:
7563         * modules/linux-fb/Makefile.am:
7564         Freetype 2 final uses freetype-config
7565
7566         * gdk/linux-fb/gdkpango-fb.c:
7567         Upgrade to use Freetype 2 final.
7568         More flexible support for font aliases, this also fixes a bug with
7569         GtkFontSelector, as the aliases must be visible in the font/family list,
7570         or GtkFontSelector reads uninitialized memory.
7571
7572 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
7573
7574         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
7575         XGetIMValues to properly terminate variable argument list, and do
7576         NULL return check for ic_values and xim_styles.
7577
7578         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
7579         Restore preedit state after XmbResetIC().
7580         
7581         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
7582         XvaCreateNestedList() should take XvaNestedList, but not
7583         XvaNestedList*.
7584
7585         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
7586         preedit_draw_callback, preedit_caret_callback): Match
7587         "preedit-changed" signal name to "preedit_changed" to be
7588         consistent to the spec.
7589
7590         * gtk/gtkimcontextsimple.c (check_table):
7591         Match "preedit-changed" to "preedit_changed" to be consistent
7592         to the spec.
7593
7594 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
7595
7596         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
7597         gc->clip_region == NULL>
7598
7599 2000-11-30  Tor Lillqvist  <tml@iki.fi>
7600
7601         Changes by Hans Breuer:
7602         
7603         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
7604         Dont't use negative width and height as max_hints. This fixes
7605         Owen's recent testgtk changes for win32.
7606
7607         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
7608         gdk_win32_hdc_release): These are exported and may be called with
7609         other drawable types than our GdkDrawableImplWin32 (?).
7610
7611         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
7612         so always #define USE_BACKING_STORE.
7613
7614         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
7615         of printf for debugging output.
7616
7617         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
7618         
7619         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
7620
7621         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
7622         declaration.
7623
7624         * gtk/gtktexttypes.h: Ditto.
7625
7626         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
7627         (GDK_VoidSymbol) also if in case of arg check failure.
7628
7629         * gtk/gtkimcontextsimple.c
7630         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
7631         position to the pointer, but to the variable it points to.
7632
7633         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
7634
7635         * gtk/gtk.def: Updates.
7636
7637 2000-11-29  Elliot Lee  <sopwith@redhat.com>
7638
7639         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
7640         GTK_TYPE_TREE_MODEL.
7641
7642 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7643
7644         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
7645         Set the size of the font from the description.
7646         (gdk_text_width): Gross hack that calculates the width
7647         of text by text_length * size/2. This is necessary because
7648         GtkLabel does some ugly gtk_string_width call to calculate
7649         an good size.
7650         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
7651
7652 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
7653
7654         * docs/tutorial/gtk-tut.sgml: DND updates
7655
7656 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7657
7658         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
7659         If you pass width or height == 0 to gdk_window_clear_area they
7660         should be calculated from the window size.
7661
7662 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7663
7664         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
7665         a grab, but no grab-cursor, use the cursor from the grabbed
7666         window. (gdk_fb_window_send_crossing_events): Send normal
7667         enter/leave notifications if grab and owner_events == TRUE.
7668
7669 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7670
7671         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7672         Do implicit button grabs, even if the window doesn't
7673         want the event.
7674         (gdk_fb_window_send_crossing_events): If there is a
7675         grab, only the grabbed window gets normal enter/leave
7676         notifications. On ungrab go from grabbed window to current.
7677         Don't send any notification to b when propagating from c -> b.
7678         If setting a grab on window, don't set prev_window.
7679         (handle_mouse_input): Send enter/leave events to the window the
7680         mouse is over, not the grabbed one.
7681         
7682 2000-11-28  Elliot Lee  <sopwith@redhat.com>
7683
7684         * gdk/gdkregion-generic.c: Zap warning.
7685         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
7686         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
7687
7688 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
7689
7690         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
7691         The cursor should be hidden if it is part of either the
7692         source or destination region. Not only if it is in both.
7693         (gdk_window_set_transient_for): Silence warnings.
7694
7695 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7696
7697         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
7698         The default mode in X is Pie Arcs, therefore that is
7699         what Gtk+ uses.
7700
7701 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7702
7703         * gdk/linux-fb/gdkinput-ps2.c:
7704         Implement correct EnterNotify/LeaveNotify:
7705         (gdk_fb_window_send_crossing_events): New function that sends
7706         all GdkCrossingEvents from the last mouse-window to the specified
7707         destination.
7708         (gdk_fb_window_visibility_crossing): Removed function.
7709         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
7710         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
7711         instead of gdk_window_get_pointer() for better readability.
7712
7713         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
7714         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
7715
7716         * gdk/linux-fb/gdkprivate-fb.h:
7717         removed gdk_fb_window_visibility_crossing, added
7718         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
7719
7720         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
7721         New function that finds the least common ancestor of two windows.
7722         (gdk_window_show, gdk_window_hide):
7723         Use gdk_fb_window_send_crossing_events.
7724         (gdk_fb_window_move_resize): Send configure events to toplevel
7725         windows. Use gdk_fb_window_send_crossing_events.
7726
7727 2000-11-27  Havoc Pennington  <hp@redhat.com>
7728
7729         * gtk/gtkprivate.h (enum): Remove a trailing comma
7730
7731 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
7732
7733         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
7734         the "changed" callback of the adjustment.  We need to redraw the
7735         spin button's arrows when the adjustment's range changes.
7736         (adjustment_changed_cb): Draw the arrows.
7737         (gtk_spin_button_value_changed): Draw the arrows.
7738
7739 2000-11-23  Alexander Larsson  <alexl@redhat.com>
7740
7741         * gdk/linux-fb/gdkselection-fb.c:
7742         Initial selection implementation.
7743
7744         * gtk/gtkselection.c:
7745         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
7746         requestor in gtk_selection_request.
7747         
7748         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
7749         Added gdk_selection_property atom.
7750
7751         * gdk/linux-fb/gdkprivate-fb.h:
7752         Export _gdk_selection_window_destroyed.
7753         Removed mask_off_x/y from GdkCursorPrivateFB.
7754         Removed hbearing, added top, left to PangoFBGlyphInfo.
7755
7756         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7757         Call _gdk_selection_window_destroyed
7758         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
7759         the root window has been created.
7760         (static_dx_hack, static_dy_hack, compare_draw_rects,
7761         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
7762         in region. They are already sorted. Instead just traverse them in
7763         reverse if draw_direction < 0.
7764         
7765         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7766         Double-clicks must be sent after the normal button_press.
7767         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
7768         
7769         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
7770         Pass _gdk_fb_screen_gc instead of NULL.
7771
7772         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
7773         Initialize gdk_selection_property.
7774         (gdk_event_make): Remove unused code.
7775
7776         * gdk/linux-fb/gdkcursor-fb.c:
7777         Make the pixmap for the cursor the same size as the mask. Also remove
7778         the mask_off_x/y fields in GdkCursorPrivateFB and combine
7779         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
7780         Now the whole cursor is visible.
7781
7782         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7783         Fix bug where xdest+height instead of ydest+height was used
7784         to calculate if the source and dest overlapped. This fixes the
7785         redraw bug when the main window in testgtk was scrolled when
7786         partially covered by a tall window.
7787         Copy rectangles in region in order depending on draw_direction.
7788         Also moved the draw_direction flipping of start_y and end_y into
7789         the gc functions, as this might not be what all of them want.
7790         (gdk_fb_draw_lines): Support dashed lines.
7791         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
7792         so that the text is positioned correctly (was 1 pixel high).
7793
7794         gdk/linux-fb/gdkgc-fb.c:
7795         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
7796         all lines were drawn a pixel to short. Also checked the default of
7797         the rest of the values, and they're the same as X now.
7798
7799         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
7800         Clean up pixel positioning of the glyphs. Just use bgy->top and
7801         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
7802         to all divisions to get correct rounding behaviour.
7803
7804         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
7805         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
7806         Moved start_y/end_y flip into draw_drawable implementations.
7807         Flip also x rendering when draw_direction < 0.
7808         Remove unneccesary multiply with draw_direction.
7809
7810 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
7811
7812         * docs/tutorial/gtk-tut.sgml:
7813           - get rid of gtk_toggle_button_toggled FUD
7814           - start DND section - needs work - based on:
7815                 http://wolfpack.twu.net/docs/gtkdnd/
7816
7817 2000-11-22  Alexander Larsson  <alexl@redhat.com>
7818
7819         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7820         Correct calculation of font metrics. Now GtkEntrys have sane
7821         size.
7822
7823 2000-11-22  Alexander Larsson  <alexl@redhat.com>
7824
7825         * gdk/gdktypes.h:
7826         Add new type GdkSpan
7827         
7828         * docs/reference/gdk/gdk-sections.txt,
7829         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
7830         gdk/gdkregion.h:
7831         Implement and document gdk_region_spans_intersect_foreach.
7832
7833         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
7834         Add new file gdkrender-fb.c which contains all core
7835         rendering code.
7836         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
7837         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
7838         (optimized rectangle fillers).
7839
7840         * gdk/linux-fb/gdkdrawable-fb2.c:
7841         Move all rendering code to gdkrender-fb.c.
7842         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
7843         Use the new span intersection functions in gdk_fb_fill_spans.
7844         gdk_fb_draw_rectangle() clips filled rectangles and calls
7845         gc->fill_rectangle with the result.
7846         gdk_fb_fill_spans() gets extra argument "sorted".
7847
7848         * gdk/linux-fb/gdkevents-fb.c:
7849         Remove unused includes and defines.
7850         New function gdk_fb_get_time() to get correct time for events.
7851
7852         * gdk/linux-fb/gdkinput-ps2.c:
7853         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
7854         Make sure to set the time of all events.
7855
7856         * gdk/linux-fb/gdkmain-fb.c:
7857         Use gdk_fb_get_time ().
7858
7859         * gdk/linux-fb/gdkprivate-fb.h:
7860         New virtual GC calls: fill_span & fill_rectangle.
7861         Export gdk_fb_get_time().
7862         gdk_fb_fill_spans() gets extra argument "sorted".
7863
7864         * gdk/linux-fb/mi*.c:
7865         Use GdkSpan instead of GdkRectangle.
7866         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
7867         from XFree 4 source)
7868         
7869 2000-11-22    <jrb@redhat.com>
7870
7871         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
7872         reversing the order in an if statement will do.  Doing so managed
7873         to make the treemodelsort half work.  Other half will follow after
7874         I get the insert function fully fixed.
7875
7876 2000-11-21  Elliot Lee  <sopwith@redhat.com>
7877         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
7878         more than 2 bits. Besides, I need to implement an evil hack. :)
7879
7880 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
7881
7882         * docs/tutorial/gtk-tut.sgml: minor corrections
7883
7884 2000-11-20  Jonathan Blandford <jrb@redhat.com>
7885         * gtk/gtktreemodelsort.h: Add convertion functions to let you
7886           convert to and from relative path's and iters.
7887
7888         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
7889           testing sorting functions a bit better.  Currently broken -- will
7890           fix in morning.
7891
7892 2000-11-20  Havoc Pennington  <hp@redhat.com>
7893
7894         * gtk/gtkwidget.c: Documented a bunch of functions in here
7895         (gtk_widget_realize): Warn if you try to realize
7896         a widget with no parent that isn't a toplevel
7897         (gtk_widget_intersect): return a gboolean
7898
7899 2000-11-20  Havoc Pennington  <hp@redhat.com>
7900
7901         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
7902         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
7903         scrolling to be implemented in GDK to finish. Also, right now
7904         we just size_allocate all children on every layout change,
7905         which is pretty lame. Test commented out of testtext.c, 
7906         until it works better.
7907
7908 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
7909
7910         * gdk/linux-fb/gdkdrawable-fb2.c:
7911         Removed unused arguments from gdk_fb_drawable_get_pixel().
7912
7913         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
7914         Renamed fidur specific mouse packet data in MouseDevice to
7915         generic. Used it in ps2 mouse handling code to avoid blocking
7916         reads.
7917
7918 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
7919
7920         * demos/gtk-demo/main.c: Changed to have the list become
7921         non-italic when the demo window is destroyed through an external
7922         event (like a close button).  Doing so found three bugs in the
7923         widget.
7924
7925         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
7926
7927         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
7928         we actually set the cell.
7929
7930         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
7931
7932         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
7933         free a leaked path.  Thanks memprof.
7934
7935 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
7936
7937         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
7938         off-by-one error when destroying allocated segments
7939         on failure. (Elliot)
7940
7941 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
7942
7943         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
7944         memleaks found by Evan Martin.
7945
7946 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
7947
7948         * Released 1.3.2
7949         
7950         * NEWS: Updates for 1.3.2
7951
7952 2000-11-17  Tor Lillqvist  <tml@iki.fi>
7953
7954         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
7955         but in general for window system specific events.
7956
7957         * gtk/gtk.def
7958         * gtk/makefile.mingw.in
7959         * gtk/makefile.msc.in: Update.
7960         
7961         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
7962
7963 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
7964
7965         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
7966         distribute gtk.immodules.
7967
7968         * gtk/Makefile.am (install-data-local): Don't install the
7969         gtk.immodules file created for the uninstalled modules;
7970         instead run gtk-query-immodules after install
7971
7972 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
7973
7974         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
7975         -rpath to the right install location.
7976
7977         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
7978         -export-dynamic.
7979
7980         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
7981         properly.
7982
7983 2000-11-15  Havoc Pennington  <hp@pobox.com>
7984
7985         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
7986         patch from Mikael Hermansson to temporarily stop blinking while
7987         the user is using the keyboard to type or navigate. 
7988
7989         Also, when blinking, stay on for longer than we stay off. Also,
7990         return from start_cursor_blink if !cursor_visible, to save
7991         checking that flag all over the place before we call
7992         start_cursor_blink.
7993
7994 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
7995
7996         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
7997         only contain a "fontset" line, which is now ignored.
7998
7999         * gtk/gtkentry.c (gtk_entry_button_release): Make 
8000         double-click-to-select-word work.
8001         
8002 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
8003
8004         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
8005         Don't move back one char when we are actually at the end of the 
8006         paragraph.
8007
8008 2000-11-15  Robert Brady  <robert@suse.co.uk>
8009
8010         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
8011         'o' < 'p'.
8012         
8013         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
8014         bind_textdomain_codeset.
8015
8016         (gtk_init_check): Make the warning about translating default:LTR
8017         sterner.
8018         
8019 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
8020
8021         * **/Makefile.am : remove unecessary rules for win32-specific
8022         config-substituted targets. If you want these rules, use
8023         --enable-maintainer-mode (called automatically by autogen.sh).
8024         Stops a lot of unneccessary make-time warnings.
8025
8026         * gtk/gtktext{layout,display}.c: Factor in total width as
8027         well as screen when figuring alignment for word-wrap as well as
8028         no wrap; this is necessary to handle lines that cannot be wrapped
8029         at all.
8030
8031 2000-11-15  Havoc Pennington  <hp@redhat.com>
8032
8033         * gtk/testtext.c: Implement essential color cycling feature
8034
8035 2000-11-15  Havoc Pennington  <hp@redhat.com>
8036
8037         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
8038         when we invalidate the main window.
8039
8040         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
8041         GtkTextView will now invalidate the side windows for us when text
8042         changes.
8043
8044 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
8045
8046         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
8047         unconditionally, since we may need to update the horizontal
8048         scrollbars even if the height didn't change.
8049
8050         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
8051         the extra attrs, since some of them affect size.
8052
8053         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
8054         x_offset correctly.
8055
8056 2000-11-15  Havoc Pennington  <hp@redhat.com>
8057
8058         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
8059         don't move the first line out into the margin, instead move the
8060         whole paragraph in order to make space for the first line within 
8061         the margin
8062
8063 2000-11-15  Havoc Pennington  <hp@redhat.com>
8064
8065         * gtk/gtktextview.c (changed_handler): offset redraw rect by
8066         xoffset in addition to yoffset, so horizontal scrolling doesn't
8067         break redraws
8068
8069 2000-11-15  Havoc Pennington  <hp@redhat.com>
8070
8071         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
8072         from the cursor
8073         (render_layout_line): fix reversed test that caused weird
8074         underlines to get drawn
8075
8076 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8077
8078         * gdk/linux-fb/gdkprivate-fb.h:
8079         Fix debug macros.
8080         
8081 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8082
8083         * gdk/linux-fb/gdkprivate-fb.h:
8084         Added virtual functions set_pixel, get_color,
8085         fill_span and draw_drawable to the GC.
8086         Added global _gdk_fb_screen_gc to use instead of
8087         NULL when drawing to the screen.
8088         Added _gdk_fb_gc_calc_state() prototype.
8089
8090         * gdk/linux-fb/gdkgc-fb.c:
8091         Call _gdk_fb_gc_calc_state() on any gc state change.
8092
8093         * gdk/linux-fb/gdkglobals-fb.c:
8094         Add _gdk_fb_screen_gc
8095                 
8096         * gdk/linux-fb/gdkdrawable-fb2.c:
8097         _gdk_fb_gc_calc_state() calculates best functions
8098         for the GC state and depth.
8099         Moved bpp specialized code to separate functions.
8100         Added optimized 24 bpp AA draw_drawable.
8101
8102         * gdk/linux-fb/gdkevents-fb.c:
8103         Silence gcc warning.
8104
8105         * gdk/linux-fb/gdkimage-fb.c:
8106         Use _gdk_fb_screen_gc
8107
8108         * gdk/linux-fb/gdkwindow-fb.c:
8109         Init and use _gdk_fb_screen_gc
8110
8111         * gdk/linux-fb/mitypes.h:
8112         Remove unused types.
8113
8114 2000-11-14  Havoc Pennington  <hp@pobox.com>
8115
8116         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
8117         to pixels
8118
8119 2000-11-14  Havoc Pennington  <hp@pobox.com>
8120
8121         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
8122
8123         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
8124         unknown char, no real reason we were using a variable. 
8125         Remove gtk_text_unknown_char variable. Fix all the text widget
8126         files accordingly.
8127
8128         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
8129         since the Unicode spec seems to prefer that character for our
8130         purposes.
8131
8132 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
8133
8134         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
8135         value of g_getenv() isn't freeable, so g_strdup it.
8136
8137         * modules/input/inuktitut.c: Inuktitut input method.
8138
8139         * modules/input/Makefile.am: Build this.
8140         
8141 2000-11-14  Elliot Lee  <sopwith@redhat.com>
8142
8143         * gtk/Makefile.am: Install gtk.immodules, needed for operation
8144         of gtk programs.
8145
8146 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
8147
8148         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
8149         reversed > that was causing Home to go to end of previous line.
8150
8151         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
8152         modified-keypresses (leave for bindings.)
8153
8154         * modules/input/Makefile.am: Remove useless -export-dynamic
8155         from module LDFLAGS.
8156
8157 2000-11-14  Havoc Pennington  <hp@redhat.com>
8158
8159         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
8160         higher.
8161
8162         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
8163         account. Also, render rise, underline, background, etc. for
8164         pixbufs as well as text. Also, draw underlines one pixel higher.
8165
8166         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
8167         PangoAttribute for the rise, so it gets drawn properly. Also,
8168         add the GtkTextAppearance attribute for pixbuf/widget segments
8169         as well; we should go ahead and have rise, underline, background,
8170         stipple work for those
8171
8172         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
8173         Pango
8174
8175 2000-11-15  Tor Lillqvist  <tml@iki.fi>
8176
8177         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
8178
8179         * gtk/gtk.def: Update.
8180
8181         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
8182         included.
8183         (gtk_rc_get_im_module_file): Use run-time installation directory
8184         on Win32.
8185
8186         * gdk/win32/rc/gdk.rc: Remove.
8187         * gdk/win32/rc/gdk.rc.in: New file.
8188         * gdk/win32/rc/Makefile.am: New file
8189         * gdk/win32/Makefile.am: Corresponding changes.
8190
8191         * gtk/gtk.rc: Remove.
8192         * gtk/gtk-win32.rc.in: New file.
8193         * gtk/Makefile.am: Corresponding changes.
8194
8195         * configure.in: Corresponding changes.
8196
8197         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
8198         has a built gtkcompat.h. Developers using CVS code on Win32 can
8199         hand-edit it from gtkcompat.h.in.
8200
8201         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
8202         gtkcompat.h from gtkcompat.h.win32.
8203
8204 2000-11-14  Havoc Pennington  <hp@redhat.com>
8205
8206         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
8207         to default to GDK_ACTION_MOVE if the drag is within a single
8208         widget. Defaults to GDK_ACTION_COPY between widgets.
8209
8210 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
8211
8212         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
8213
8214         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
8215
8216         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
8217         srcdir != builddir
8218
8219         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
8220
8221         * configure.in (GTK_VERSION): Up to 1.3.2
8222
8223         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
8224         gtkimcontextxim.h
8225
8226         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
8227         missing doc comment.
8228
8229 2000-11-14  Alexander Larsson  <alexl@redhat.com>
8230
8231         * modules/linux-fb/basic.c:
8232         Use the glib iconv wrappers.
8233
8234 2000-11-13  Havoc Pennington  <hp@pobox.com>
8235
8236         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
8237         still more bugs.
8238
8239         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
8240         scroll the GdkWindows before realization.
8241
8242 2000-11-13  Havoc Pennington  <hp@redhat.com>
8243
8244         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
8245         where GC didn't always get updated properly
8246
8247         * demos/gtk-demo/textview.c (create_tags): Use subattributes
8248         of fonts instead of setting the entire font
8249
8250         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
8251         setting entire font
8252
8253         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
8254
8255         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
8256         a bunch of individually-settable font attributes. You can still 
8257         use the "font" and "font_desc" args, they just set all the font
8258         attributes at once.
8259
8260 2000-11-13 Elliot Lee <sopwith@redhat.com>
8261
8262         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
8263
8264 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
8265
8266         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
8267         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
8268
8269         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
8270         work better.
8271
8272 2000-11-13  Havoc Pennington  <hp@redhat.com>
8273
8274         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
8275         the module file.
8276
8277         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
8278         dest->language
8279
8280         * gtk/testtext.c: Test pixels above/below/inside paragraphs
8281         settings
8282
8283         * gtk/gtktextview.c: Implement object args and setters/getters for
8284         all the aspects of the GtkTextAttributes that are not set from
8285         GtkWidget attributes. This is spacing, justification, margins,
8286         etc.
8287
8288         (gtk_text_view_set_arg)
8289         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
8290         args
8291         (gtk_text_view_class_init): Add args for justify, left_margin,
8292         right_margin, indent, and tabs
8293         
8294
8295         * gtk/gtktextlayout.c (set_para_values): fix to display indent
8296         attribute properly
8297
8298         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
8299         replace with indent attribute
8300
8301         * gtk/gtktextlayout.c (set_para_values): multiply indent by
8302         PANGO_SCALE
8303
8304         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
8305         rearranging code to do that
8306         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
8307         i.e. don't subtract the top_margin first, just to keep
8308         all margin-futzing in one place.
8309
8310         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
8311
8312         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
8313         special case of last line, Pango now handles this itself.
8314         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
8315         Y coordinate
8316         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
8317         (find_display_line_above): wasn't moving the byte index as it
8318         iterated over lines, so always returned byte 0. Also, port to use
8319         PangoLayoutIter.
8320         (find_display_line_below): same problem as
8321         find_display_line_above. Also, port to use PangoLayoutIter.
8322
8323 2000-11-13  Alexander Larsson  <alexl@redhat.com>
8324
8325         * gdk/linux-fb/*.[ch]:
8326         Massive reindent to gtk+ standard. My hands hurt.
8327
8328         * gdk/linux-fb/gdkcolor-fb.c:
8329         Move GdkColorPrivateFB from inherited to windowing_data
8330
8331         * gdk/linux-fb/gdkcursor-fb.c:
8332         _gdk_cursor_new_from_pixmap made static
8333
8334         * gdk/linux-fb/gdkdnd-fb.c:
8335         GdkDragContextPrivate moved to windowing_data
8336
8337         * gdk/linux-fb/gdkdrawable-fb2.c:
8338         Removed endian.h, use glib endianness macros instead
8339         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
8340         and GDK_DRAWABLE_IMPL_FBDATA
8341
8342         * gdk/linux-fb/gdkfont-fb.c:
8343         Add empty gdk_font_load(). Needed for linking of Gtk+.
8344
8345         * gdk/linux-fb/gdkimage-fb.c:
8346         Removed endian.h, use glib endianness macros instead
8347         Moved GdkImagePrivateFB to windowing_data
8348         gdk_image_new_bitmap didn't always allocate enough
8349         memory.
8350
8351         * gdk/linux-fb/gdkinput-ps2.c:
8352         Added semi-working support for MS serial mice.
8353
8354         * gdk/linux-fb/gdkprivate-fb.h:
8355         s/GdkWindowPrivate/GdkWindowObject/
8356         Removed GdkWindowPrivate typedef
8357         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
8358         Removed GDK_DRAWABLE_P
8359         Move GdkColorPrivateFB from inherited to windowing_data
8360         Moved GdkImagePrivateFB to windowing_data
8361
8362         * gdk/linux-fb/gdkvisual-fb.c:
8363         Removed some unused debug code.
8364
8365         * gdk/linux-fb/gdkwindow-fb.c:
8366         Use stock cursors instead of including X headers.
8367         s/GdkWindowPrivate/GdkWindowObject/
8368
8369         * gdk/linux-fb/mitypes.h:
8370         Removed unused types.
8371
8372         * modules/linux-fb/basic.c:
8373         Use the pango fribidi wrappers.
8374
8375 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8376
8377         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
8378         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
8379         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
8380         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
8381         GEqualFunc where applicable.
8382         
8383         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
8384         pango_font_description_equal as changed in pango.
8385         
8386         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
8387
8388         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
8389
8390         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
8391
8392         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
8393
8394         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
8395
8396         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
8397
8398         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
8399         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
8400
8401         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
8402         gtk_rc_styles_compare -> gtk_rc_styles_equal.
8403
8404 2000-11-12  Havoc Pennington  <hp@pobox.com>
8405
8406         * demos/gtk-demo/Makefile.am (democodedir): change demo install
8407         dir to datadir/gtk+-2.0/demo
8408
8409         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
8410         sorts of text widget and Pango font bugs. Urgh.
8411
8412         * demos/gtk-demo/Makefile.am (demos): Add textview.c
8413
8414         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
8415         tree that you should double click to see the demo. Fix 
8416         types of variables to reflect changed return values from 
8417         GtkTreeStore and GtkTreeViewColumn constructors.
8418
8419         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
8420         newly-created buffer to prepare for GObject semantics
8421
8422         * gtk/testtext.c: don't leak the buffer with GObject semantics
8423
8424         * gtk/testtextbuffer.c: ditto
8425         
8426 2000-11-12  Havoc Pennington  <hp@pobox.com>
8427
8428         Rename this testgtk to gtk-demo to avoid confusion, and 
8429         install it so people can use it as a supplement to 
8430         the documentation.
8431         
8432         * demos/gtk-demo: Moved from demos/testgtk
8433
8434         * demos/testgtk: Removed
8435
8436         * configure.in: make Makefile in gtk-demo
8437         
8438         * demos/gtk-demo/Makefile.am: Install sample source to 
8439         datadir/gtk-demo (maybe there's a better place?), and 
8440         rename the binary to gtk-demo
8441         
8442         * demos/gtk-demo/main.c (load_file): Load installed sample
8443         source if source isn't found in pwd.
8444
8445 2000-11-09  Havoc Pennington  <hp@pobox.com>
8446
8447         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
8448         argument to set the char displayed when visibility == FALSE
8449         (gtk_entry_create_layout): If !entry->visible, replace 
8450         all chars with the "invisible char"
8451
8452         * gtk/testgtk.c: Test the invisible_char deal
8453         
8454 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
8455
8456         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
8457         can't get a native font in the right encoding.
8458
8459 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
8460
8461         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
8462         respectively.
8463
8464 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
8465
8466         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
8467         Fix warning when moving between paragraphs.
8468
8469         * gtk/gtkentry.[ch]: Change move => move_cursor, 
8470         delete => delete_from_cursor, insert => insert_at_cursor
8471
8472 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
8473
8474         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
8475
8476         * modules/input/imthai-broken.c: A Thai input method for use if
8477         Thai keys are really generating Latin1 keysyms.
8478
8479         * modules/input/Makefile.am: Build these.
8480
8481 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
8482
8483         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
8484         g_filename_{to,from}_utf8 now takes an extra parameter.
8485
8486         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
8487         strftime into UTF-8.
8488
8489         (column_from_x, gtk_calendar_paint_day_names): Support RTL
8490         calendars.
8491
8492         (gtk_calendar_paint_day_names): Draw day names in the right 
8493         place.
8494         
8495 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
8496
8497         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
8498         problem with using result of g_get_charset() backwards -
8499         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
8500
8501         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
8502         negative min_width/height and max_width/height to
8503         mean "requisition"; this allows setting a window
8504         to be user-resizable in only one direction easily.
8505
8506         * gtk/testgtk.c (create_main_window): Remove hard-coded
8507         usize - set a default size in the vertical direction.
8508
8509 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
8510
8511         * gtk/gtkrange.c: Add some missing casts. Support 
8512         2 and 3 button clicks on the arrows to mean 
8513         "move by pages" and "jump to end". (Like gtkspinbutton)
8514
8515 2000-11-12 Hans Breuer <Hans@Breuer.Org>
8516
8517         * gdk/win32/makefile.msc : reflect build module changes
8518
8519         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
8520         from GdkPixmap*, cast implementation member instead.
8521
8522         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
8523         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
8524         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
8525         more Gdi functions return value checking. 
8526         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
8527         GdkImagePrivateWin32 *.
8528
8529         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
8530         menus useable again. Add #pragma message to keep reminded on this issue.
8531         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
8532         windows. This allows to enable backing store on Win32!
8533
8534         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
8535         in drawable is of impl type. Correct specific type checks appropriate.
8536  
8537         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
8538         GDK_WINDOW_DESTROYED before allocating new resources.
8539
8540         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
8541
8542         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
8543         (gdk_window_foreign_new) initialize parent handle.
8544         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
8545
8546         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
8547         Let the GDI invalidate the window on MoveWindow call to fix scrolling
8548         problems (e.g. main buttons in testgtk). 
8549
8550 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
8551
8552         * gtk/gtkentry.c (gtk_entry_key_press): Call 
8553         gtk_widget_activate for GDK_Return.
8554
8555         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
8556         of preedit cursor position.
8557
8558 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
8559
8560         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
8561         static.
8562
8563 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
8564
8565         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
8566         out support for multiple locales; that simple doesn't
8567         work reliably with current Xlib
8568
8569         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
8570         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
8571         Add support for positioning the cursor within the preedit string.
8572
8573 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
8574
8575         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
8576         at XIM input method module.
8577
8578         * gtk/gtktextview.c: Check for bindings after passing
8579         events to im context filter.
8580
8581 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
8582
8583         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
8584         empty attribute lists properly.
8585
8586 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
8587
8588         * gtk/queryimmodules.c (main): Return non-zero exit
8589         status if errors were encountered querying any
8590         modules.
8591
8592         * modules/input/Makefile.am (moduledir): remove
8593         leftover bin program target.
8594
8595         * docs/make-todo: Fix typo in error message.
8596
8597 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
8598
8599         * configure.in: Add modules/input/Makefile
8600
8601 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
8602
8603         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
8604         don't include gtkthemes.h.
8605
8606         * gtk/testgtk.c gtk/testtext.c: Set environment variables
8607         to point
8608
8609         * gtk/Makefile.am: Add new .c and .h files, build 
8610         gtk-query-immodules and use it to create a gtk.immodules
8611         file for use of test programs.
8612
8613         * gtk/gtkpreview.c: remove extra blank line.
8614
8615 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
8616
8617         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
8618         Add the ability to add extra tables beyond the default
8619         one, and also the ability to have compose sequences 
8620         that are prefixes of other compose sequences. 
8621
8622         * gtk/gtkimcontextsimple.c: Export a preedit string which
8623         consists of possible candidates for keystrokes that have
8624         been entered but not yet committed.
8625
8626         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
8627         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
8628
8629         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
8630         Add a function to add input-method switching menu items
8631         to a menu.
8632
8633         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
8634         when switching input methods.
8635
8636         * gtk/gtkimcontextsimple.[ch]: Change the format of
8637         the compose table to allow compose tables of different
8638         lengths / sequence.
8639
8640 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
8641
8642         * gtk/gtkimmodule.[ch]: Support routines for loading
8643         GtkIMContext implementations dynamically at runtime.
8644
8645         * modules/input/imcyrillic-translit.c: A sample input
8646         method (based on GtkIMContextSimple with an extra table),
8647         which demonstrates preedit strings and the module
8648         system for input modules
8649
8650         * gtk/queryimmodules.c: Program to query the available
8651         input modules and write the results into a file.
8652          
8653         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
8654         extra config options "im_module_file" (cache file for
8655         input method modules), and "im_module_path" - path
8656         to look for modules when generating cache file.
8657
8658         This doesn't scale.
8659
8660 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
8661
8662         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
8663         generic code from gtkthemes into a new abstraction
8664         GtkModule which has the logic for implementing
8665         a loadable module which implements a number of 
8666         GObject types.
8667
8668 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
8669
8670         * gtk/gtkeditable.[ch]: Convert GtkEditable from
8671         a class into an interface  
8672         
8673         * gtk/gtkoldeditable.[ch]: Move the old editable
8674         implementation into here, so legacy widgets can
8675         still rely on the implemenation. GtkOldEditable
8676         exports GtkEditable. Make selection handling
8677         code use new text conversion functions (and
8678         handle UTF-8 as a side-effect). Use GtkClipboard
8679         for CLIPBOARD.
8680
8681         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
8682         Adopt to match above changes.
8683
8684         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
8685         avoid GtkOldEditable implementation. Restructure
8686         to reduce number of places that modify state directly.
8687         Move to GtkBindingSet. Display the preedit string.
8688         Queue recomputation of PangoLayout and scroll position
8689         to improve effiency of doing complex changes naively.
8690         Add a menu with cut/copy/paste and input method selection.
8691
8692 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
8693
8694         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
8695         to set preedit string and attributes; display preedit string by
8696         inserting string and attributes at cursor when creating the
8697         GtkTextLineDisplay.
8698
8699         * gtk/gtktextlayout.c: Move all conversions between byte
8700         positions in PangoLayout and GtkTextIter into new functions
8701         line_display_iter_to_index/index_to_iter that properly
8702         handle the preedit string.
8703
8704         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
8705         it to return const char * (eventually will end up
8706         as GCONST char *, most likely.)
8707
8708         * gtk/gtktextview.[ch]: Handle the preedit string, call
8709         gtk_im_context_reset() as necessary, add a menu to switch
8710         input methods.
8711         
8712         * gtk/gtktextlayout.[ch]: Remove useless
8713         gtk_text_layout_get_log_attrs() function.
8714
8715 2000-11-11  Tor Lillqvist  <tml@iki.fi>
8716
8717         * gdk/gdk.def
8718         * gtk/gtk.def: Update.
8719
8720         * gdk/win32/*.c: Add last argument to g_type_register_static()
8721         calls.
8722
8723         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
8724
8725         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
8726         generated by older wheel mouse drivers. Get the correct y
8727         coordinate from WM_MOUSEWHEEL messages.
8728
8729         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
8730         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
8731         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
8732         Debugging functions.
8733
8734         * gdk/win32/gdkprivate-win32.h: Declare them.
8735
8736         * gdk/win32/gdkinput-win32.h: Add declaration for
8737         gdk_input_window_destroy().
8738
8739         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
8740
8741 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
8742
8743         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
8744         function to help handle keeping things in sync.
8745
8746 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
8747
8748         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
8749         BOXED marshallers.
8750
8751         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
8752         (gtk_list_store_class_init): use the new BOXED marshallers.
8753
8754         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
8755         new_with_values to new_with_types.
8756         (gtk_tree_store_get_column_type): add this.
8757         (gtk_tree_store_class_init): use the new BOXED marshallers.
8758
8759         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
8760         mirror some POINTER marshallers.
8761
8762 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
8763
8764         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
8765         allow more interesting iterators.  Also, made the lifecycle of
8766         iterators more explicit.
8767
8768         * gtk/gtktreemodelsort.[ch]: New model for sorting.
8769
8770         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
8771         types.
8772
8773 2000-11-09  Alexander Larsson  <alexl@redhat.com>
8774
8775         * demos/testgtk/menus.c:
8776         Changes to make the new testgtk compile after
8777         gtk_menu_append was removed.
8778
8779         * gdk/linux-fb/gdkdrawable-fb2.c
8780         (gdk_fb_get_depth, gdk_fb_get_visual,
8781         gdk_drawable_impl_fb_class_init): Implement
8782         these drawable functions. Now GtkImages work again.
8783
8784         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
8785
8786         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
8787         
8788         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
8789         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
8790         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
8791         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
8792
8793 2000-11-08  Havoc Pennington  <hp@pobox.com>
8794
8795         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
8796         visible_set args, don't know where these had gone, I thought they
8797         used to be there
8798
8799         * gtk/testtext.c: Add a menu item to apply invisibility tag;
8800         now we can test the feature and see that it's totally broken.
8801
8802 2000-11-08  Havoc Pennington  <hp@pobox.com>
8803
8804         Make DND copy pixbufs and tags when source and target share a 
8805         tag table.
8806         
8807         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
8808         in-process GTK_TEXT_BUFFER_CONTENTS target
8809         (gtk_text_view_drag_data_received): Paste from
8810         GTK_TEXT_BUFFER_CONTENTS if we receive it.
8811
8812 2000-11-08  Alexander Larsson  <alexl@redhat.com>
8813
8814         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
8815         API changes.
8816
8817         * gtk/gtkmenu.c: Add support for scrolling menus.
8818         Remove gtk_menu_append/prepend/insert, these have been moved to
8819         gtkcompat.h as #defines.
8820
8821         * gtk/gtkcompat.h.in:
8822         Add compatibility #defines for gtk_menu_append/prepend/insert
8823
8824         * gtk/gtkmenu.h: Add data needed for scrolling menus.
8825         GtkMenuPositionFunc gets an extra argument push_in.
8826         gtk_menu_append/prepend/insert removed.
8827         
8828         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
8829         positioning behaviour to fit to scrolling menus.
8830
8831         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
8832         into menuitem->submeny. That is wrong, and broke torn
8833         off submenus of torn off menus, since they were unrealized
8834         when the first menu was unrealized.
8835
8836         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
8837         gtk_menu_shell_select_item() since these need to be overridden in
8838         GtkMenu.
8839
8840         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
8841         positioning behaviour to fit to scrolling menus.
8842         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
8843         the current item so that it is prelighted when the menu pops up.
8844         This is a workaround to the fact that the menu doesn't get the
8845         initial enter event (due to grabs).
8846
8847         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
8848         s/gtk_menu_append/gtk_menu_shell_append/
8849
8850         * gtk/gtknotebook.c:
8851         s/gtk_menu_insert/gtk_menu_shell_insert/
8852
8853         * gtk/testgtk.c (create_menu, create_menus):
8854         Create the first menu with 50 items so that menu scrolling
8855         can be tested.
8856         
8857         
8858         Patch from Jonathan Blandford  <jrb@redhat.com>
8859
8860         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
8861         system to handle size requests.  First, we ask what the size of
8862         the toggle is.  Then, when allocating the size, we allocate the
8863         toggle_size first.  This way we can have multiple menu-item
8864         classes w/o needing a seperate class for each.
8865
8866         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
8867         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
8868
8869         * gtk/gtkcheckmenuitem.c
8870         (gtk_check_menu_item_toggle_size_request): New function to handle
8871         the toggle size-request.
8872
8873 2000-11-07  Havoc Pennington  <hp@redhat.com>
8874
8875         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
8876         Half-ass somewhat fix this function, so that scrolling to the
8877         insertion point works. Pango hacking is in the future to really
8878         fix it.
8879
8880         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
8881         length of data, no longer used.
8882
8883         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
8884         method contents in here, get rid of destroy method
8885         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
8886         that were backward. Remove debug spew.
8887         (cut_or_copy): Make the clipboard work with insert_range to
8888         preserve tags and pixbufs, not just the primary selection.
8889
8890 2000-11-07  Havoc Pennington  <hp@redhat.com>
8891
8892         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
8893         to gtk_text_mark_get_visible
8894
8895         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
8896         bug that was generating an invalid iterator
8897
8898         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
8899         ensure_char_offsets() in front of code placing the iter in an
8900         invalid state.
8901
8902         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
8903         make override_location arg const
8904         (paste): Replace the selection if we paste into the 
8905         current selection
8906
8907         * gtk/gtkselection.h: Remove "GtkSelectioData"
8908         (struct _GtkSelectionData): move the definition here.
8909
8910         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
8911         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
8912
8913         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
8914
8915         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
8916         (gtk_text_buffer_insert_range_interactive): implement
8917         (gtk_text_buffer_get_tags): Remove, replaced by
8918         gtk_text_iter_get_tags()
8919
8920         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
8921         limit parameter, to avoid infinite linear scan.
8922         (gtk_text_iter_backward_search): Add search limit
8923         (gtk_text_iter_forward_find_char): Add search limit
8924         (gtk_text_iter_backward_find_char): Add search limit
8925
8926 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
8927
8928         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
8929         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
8930         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
8931         gdk/linux-fb/gdkwindow-fb.c:
8932         use g_object_new() instead of g_type_create_instance() which
8933         is a private function for fundamental type implementations.
8934
8935         * gdk/linux-fb/gdkinput-ps2.c:
8936         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
8937         instead just store the current modifier state. Add a (somewhat broken)
8938         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
8939         Rename exported function gdk_input_ps2_get_mouseinfo to
8940         gdk_input_get_mouseinfo.
8941
8942         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
8943         gdk/linux-fb/gdkwindow-fb.c:
8944         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
8945         
8946
8947 2000-11-02  Havoc Pennington  <hp@redhat.com>
8948
8949         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
8950         use stock buttons. Should be 100% source compatible, appropriate
8951         filesel fields now point to dialog->vbox and dialog->action_area.
8952         On the bizarre side, dialog->action_area and filesel->action_area
8953         are not the same widget.
8954         (gtk_file_selection_init): Put some padding around the selection
8955         entry, so it isn't touching the GtkDialog separator.    
8956
8957         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
8958         use stock buttons, etc. Should also be source compatible.
8959         Set the dialog default title in _init not _new().
8960         
8961         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
8962         Use stock buttons; don't put a button box inside the existing
8963         dialog button box. Don't bother with push/pop colormap anymore.
8964
8965         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
8966         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
8967         for message dialog, and necessary for the font selection and color
8968         selection with help and apply buttons.
8969         
8970         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
8971         to the created button widget. Set GTK_CAN_DEFAULT on the button.
8972         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
8973         between buttons, put less padding around the action area.
8974         (gtk_dialog_run): Exit on unmap rather than on destroy. 
8975         This will also exit the loop if the widget is hidden.
8976         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
8977         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
8978         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
8979         special-case delete event.
8980
8981         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
8982         formatting
8983         
8984 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
8985
8986         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
8987         button to temporarily disable position recording in the
8988         "saved position" test.
8989
8990 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
8991
8992         * gtk/gtkthemes.c: added compat code that temporarily implements
8993         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
8994         going to be revamped by owen's upcoming GtkModule patches, but
8995         untill then people want gtk to build, right? ;)
8996
8997 2000-11-04  Havoc Pennington  <hp@pobox.com>
8998
8999         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
9000         list
9001
9002         * docs/Changes-2.0.txt: Add note about
9003         gtk_container_get_toplevels()
9004
9005         * gtk/gtktextview.h: formatting
9006         
9007         * gtk/gtktextview.c: don't start descriptions with "Returns",
9008         confuses gtk-doc
9009
9010 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
9011
9012         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
9013         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
9014
9015 2000-11-03  Havoc Pennington  <hp@redhat.com>
9016
9017         * gtk/gtktexttagtable.c: Docs
9018         (gtk_text_tag_table_size): return a signed int
9019
9020         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
9021         (gtk_text_tag_event): make the event_object a GObject
9022
9023         * gtk/gtktextview.c: Write API docs for all functions.
9024
9025         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
9026         for gtk_text_view_get_window_type() called on one of the private
9027         windows.
9028
9029         * gtk/gtktextview.c: Instead of accessing text_view->buffer
9030         directly, call get_buffer() which demand-creates a default
9031         buffer. So gtk_text_view_new() can be used to create a view with a
9032         default buffer in it, if you just want an empty text box users can
9033         put data in. Useful for GUI builders also.
9034
9035 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
9036
9037         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
9038         the charset encodign portion MUST be in lowercase.
9039         * gtk/gtkrc.az: added file for Azeri language
9040
9041 2000-11-03  Havoc Pennington  <hp@redhat.com>
9042
9043         Get widgets working on the btree/buffer side. Display of them 
9044         still doesn't work.
9045         
9046         * gtk/gtktextview.c: start implementing child widget stuff
9047
9048         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
9049
9050         * gtk/gtktextlayout.c: handle embedded widgets
9051
9052         * gtk/gtktextdisplay.c: handle embedded widgets
9053
9054         * gtk/gtktextchild.c: Implement all the child anchor goo
9055
9056         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
9057         function
9058
9059         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
9060         (insert_pixbuf_or_widget_segment): abstract out common portions of 
9061         creating a child anchor or a pixbuf segment.
9062         (gtk_text_btree_create_child_anchor): new function
9063         (gtk_text_btree_unregister_child_anchor): new function
9064
9065         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
9066         allocate_child signal on GtkTextLayout
9067
9068         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
9069         values
9070         (gtk_text_iter_get_child_anchor): new function
9071
9072         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
9073         default handler for the changed signal, which calls
9074         gtk_text_buffer_set_modified(), instead of just always emitting
9075         changed then calling set_modified() manually. I guess this is
9076         maybe more flexible. It seems logical.
9077
9078 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
9079
9080         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
9081         now.
9082
9083         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
9084
9085 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
9086
9087         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
9088         been marked static.
9089
9090 2000-11-02  Havoc Pennington  <hp@redhat.com>
9091
9092         * gtk/testgtk.c (create_labels): had a test backward
9093
9094         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
9095         fields, so the dest GC ends up with the correct clip origin, 
9096         etc. Fixes a bug where colored labels didn't redraw 
9097         properly.
9098
9099 2000-11-02  Alexander Larsson  <alexl@redhat.com>
9100
9101         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9102         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
9103         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
9104         Add last argument to t_type_register_static call.
9105         
9106         * gdk/linux-fb/gdkdrawable-fb2.c:
9107         Add last argument to t_type_register_static call.
9108         export the get_image drawable virtual function.
9109
9110         * gdk/linux-fb/gdkimage-fb.c:
9111         Add last argument to t_type_register_static call.
9112         rename gtk_image_get to _gdk_fb_get_image and
9113         export it for use by gdkdrawable-fb2.
9114
9115         * gdk/linux-fb/gdkprivate-fb.h:
9116         export _gdk_fb_get_image.
9117
9118         * gdk/linux-fb/gdkselection-fb.c:
9119         Add new api call stubs.
9120
9121         * gtk/Makefile.am:
9122         Missing ( in linux-fb part.
9123
9124         * modules/linux-fb/Makefile.am:
9125         Must link with gdk_pixbuf or get unresolved symbol.
9126
9127 2000-11-01  Havoc Pennington  <hp@pobox.com>
9128
9129         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
9130         GTK_TYPE_TEXT_ITER and BOXED marshallers
9131
9132         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
9133
9134         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
9135         
9136         * gtk/gtk-boxed.defs: add GtkTextIter
9137
9138         * gtk/gtkmarshal.list: Add marshallers for text widget that 
9139         properly use OBJECT and BOXED
9140
9141 2000-11-01  Havoc Pennington  <hp@redhat.com>
9142
9143         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
9144
9145         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
9146         before returning it. 
9147         
9148 2000-11-01  Havoc Pennington  <hp@redhat.com>
9149
9150         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9151         Clip the rectangle to be rendered to the drawable, since
9152         get_from_drawable() requires a region within the drawable
9153
9154 2000-11-01  Havoc Pennington  <hp@redhat.com>
9155
9156         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
9157         from coordinates.
9158
9159 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
9160
9161         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
9162         it isn't NULL.
9163
9164 2000-11-01  Havoc Pennington  <hp@pobox.com>
9165
9166         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
9167         on a label
9168         (gtk_label_finalize): unref the attr list if any.
9169
9170         * gtk/testgtk.c (create_get_image): close test on second click
9171         (make_message_dialog): close dialog if it exists
9172
9173         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
9174
9175         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
9176         gdk-pixbuf
9177
9178         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
9179         from Pango markup format
9180         (gtk_label_set_markup_with_accel): ditto but with accelerator
9181         parsing
9182
9183         * gtk/gtkimage.c (gtk_image_expose): reformatting.
9184
9185         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
9186         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
9187         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
9188         call gdk_window_get_origin().
9189
9190         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9191         implement GDK_PIXBUF_ALPHA_FULL
9192         
9193 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
9194
9195         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
9196         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
9197         g_signal_handlers_disconnect_matched to block/unblock and disconnect
9198         multiple handlers respectively, instead of only treating the
9199         first handler found (bug reported by owen).
9200
9201 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
9202
9203         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
9204
9205         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
9206
9207         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
9208         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
9209         gtk/gtktreeviewcolumn.h: Fixed inline docs.
9210
9211         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
9212         widget.  Needs writing someday.
9213
9214         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
9215         the docs.
9216
9217 2000-10-30  Havoc Pennington  <hp@redhat.com>
9218
9219         * gtk/gtktextview.h, gtk/gtktextview.c:
9220         Rename delete_at_cursor delete_from_cursor, and 
9221         move to move_cursor.
9222
9223 2000-10-30  Havoc Pennington  <hp@redhat.com>
9224
9225         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
9226         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
9227         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
9228         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
9229         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
9230         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
9231         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
9232         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
9233         gtktexttypes.h, gtktextview.c, gtktextview.h:
9234
9235         Massive reindentation and reformatting. Arg alignment and comments
9236         still need fixing in various places.
9237
9238 2000-10-30  Havoc Pennington  <hp@redhat.com>
9239
9240         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
9241         to be named insert_at_cursor and delete_at_cursor so C++ can
9242         handle them.
9243
9244 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9245
9246         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
9247         to get a double directory separator in case the home directory
9248         ends with one. This would cause trouble especially on Windows,
9249         where the path will be confused with the syntax for an an UNC
9250         (network share) path \\server\share\path.
9251         (gtk_rc_add_initial_default_files): Ditto.
9252
9253 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
9254
9255         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
9256
9257         * gtk/gtktextview.c: Use correct marshallers.
9258
9259 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
9260
9261         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
9262         use new iter stuff, and added all the appropriate signals et al.
9263
9264         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
9265         code is internal to gtk only.
9266
9267 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9268
9269         * gtk/gtk.def
9270         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
9271         glib-genmarshal etc.
9272
9273 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
9274
9275         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
9276         parallel builds.
9277
9278 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
9279
9280         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
9281
9282 2000-10-27  Robert Brady  <robert@suse.co.uk>
9283
9284         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
9285         en_GB (British), ia (Interlingua).
9286
9287 2000-10-26  Havoc Pennington  <hp@redhat.com>
9288
9289         * gtk/gtktextiter.c (my_strrstr): fix constness warning
9290
9291         Fixed output of:
9292         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
9293         
9294         * gtk/gtktextsegment.c (char_segment_new): rename
9295         (_char_segment_new_from_two_strings): rename
9296         (_toggle_segment_new): rename
9297         
9298         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
9299         (make_clipboard_widget): make it static
9300         (text_get_func): static
9301         (text_clear_func): static
9302
9303         * gtk/gtkcolorsel.c (adjustment_changed): make this function
9304         static
9305         (hex_changed): make it static
9306         (hsv_changed): make it static
9307         (opacity_entry_changed): make it static
9308
9309         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
9310         (toggle_segment_check_func): rename with _gtk
9311
9312         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
9313         (_widget_segment_new): rename
9314         (_widget_segment_add): rename
9315         (_widget_segment_remove): rename
9316         (_widget_segment_ref): rename
9317         (_widget_segment_unref): rename
9318
9319         * gtk/gtktextmark.c (_mark_segment_new): Rename
9320         _gtk_mark_segment_new   
9321
9322 2000-10-26  Havoc Pennington  <hp@redhat.com>
9323
9324         * gtk/gtkmarshal.list: add new marshallers used by the text widget
9325         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9326         types
9327
9328         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
9329         marshaller types
9330
9331         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
9332         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
9333         license on these files.
9334
9335         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
9336         work.
9337
9338         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
9339         runtime random number different for each tree, instead of 
9340         a constant I made up.
9341
9342 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
9343
9344         * gtk/Makefile.am: buncha cleanups, kludged build sources
9345         dependencies with a Makefile: oldest-source-stamp dependancy
9346         for the moment. automake is really fighting us here, with
9347         intentionally not allowing user-defined rules or dependancies
9348         prior to it's -include $(DEP_FILES) statement. sucks rocks!
9349
9350         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
9351         to public headers. tehy have a comment stating that they are
9352         "semi-public" aren't included by gtk.h and if enums popup there,
9353         they can be /*< skip >*/-ed.
9354
9355         * gtk/gtktextlayout.h: 
9356         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
9357         added LGPL... <SIGH>
9358
9359 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
9360
9361         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
9362         GtkTreeIter.  Added iterators everywhere.
9363
9364         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
9365
9366         * gtk/gtktreeviewselection.c: Changed to use the iterators.
9367
9368         * gtk/gtktreestore.c: Changed to use the iterators.
9369
9370         * gtk/gtkliststore.c: Commented out the code.  Will convert to
9371         iterators tomorrow.
9372
9373         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
9374         iterators tomorrow.
9375
9376         * gtk/treestoretest.c: Changed to use iterators.
9377
9378         * demos/testgtk/main.c: Moved to use the new iterator system.
9379
9380 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
9381
9382         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
9383         localization misbehaviour.
9384
9385         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
9386         a useless type without copy/free.
9387
9388         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
9389         of GTK_TYPE_CTREE_NODE.
9390
9391 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
9392
9393         * gtk/gtksignal.c:
9394         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
9395         applicable.
9396
9397         * gtk/gtk-boxed.defs (GtkSelectionData): specify
9398         gtk_selection_data_copy and gtk_selection_data_free
9399         do GtkSelectionData work as params in signals.
9400
9401 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
9402
9403         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
9404         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
9405         couldn't they at least give it a non-standard name?
9406         
9407         * gtk/gtktextlayout.c: arg! yet another implementation of
9408         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
9409
9410         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
9411         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
9412         home. now i know this _is_ a conspiracy.
9413
9414         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
9415         ::state-changed.
9416
9417         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
9418         (gtk_accel_group_create_add): marshaller signature fixups.
9419
9420         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
9421         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
9422
9423         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
9424         anymore.
9425
9426 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
9427
9428         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
9429         due to the signal system changes, it wouldn't build currently. to
9430         be fixed soon.
9431
9432         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
9433
9434         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
9435         so it needs gtk_marshal_VOID__ENUM() instead of
9436         gtk_marshal_NONE__UINT().
9437
9438         * gdk/gdk*.c: adapted type registration functions.
9439
9440         * gtk/gtkbindings.c:
9441         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
9442         gone.
9443
9444         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
9445
9446         * gtk/gtkobject.c:
9447         (gtk_object_destroy):
9448         (gtk_object_shutdown): fixed recursion guards. basically we have to
9449         catch the case where any of GObject.shutdown() or gtk_object_destroy()
9450         is called during ::destroy, and avoid recursion there.
9451
9452         * gtk/gtktypeutils.c:
9453         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
9454         boxed_copy/boxed_free. this needs a more general solution based on a
9455         publically installed code-generator utility.
9456
9457         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
9458         glib's gobject has support for that now.
9459         define GtkSignalMarshaller in terms of GSignalCMarshaller.
9460
9461 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
9462
9463         * gtk/gtksignal.[hc]:
9464         * gtk/gtkmarshal.[hc]:
9465         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
9466         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
9467         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
9468         care of that.
9469
9470         * *.c: marshaller name fixups.
9471
9472         * gtk/gtkmarshal.list: added a comment briefing the format.
9473
9474 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
9475
9476         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
9477         compatibility macros here now. more specifically, most of
9478         the API is preserved (yes, _most_, nonwithstanding the
9479         following exceptions listed, the API is stil lHUGE ;)
9480         things that got removed completely:
9481         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
9482         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
9483         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
9484         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
9485         gtk_signal_remove_emission_hook().
9486         non-functional functions variants:
9487         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
9488         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
9489         not supported anymore.
9490         (gtk_signal_compat_matched): new internal function to aid
9491         implementation of the compatibility macros, it  provides
9492         functionality to block/unblock/disconnect handlers based
9493         on func/data.
9494
9495         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
9496
9497         * *.c: adaptions to new type registration API signatures.
9498
9499 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
9500
9501         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
9502
9503 2000-10-25  Robert Brady  <robert@suse.co.uk>
9504
9505         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
9506         gdk_property_delete): If window == NULL, assume the root window.
9507         (restoring the behaviour that was in 1.2).
9508         
9509         * gtk/testtext.c (save_buffer): Allow creation of new files when
9510         saving.
9511
9512         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
9513         calls to read().
9514
9515 2000-10-25  Tor Lillqvist  <tml@iki.fi>
9516
9517         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
9518
9519         * gdk/win32/gdkdrawable-win32.c
9520         * gdk/win32/gdkimage-win32.c
9521         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
9522         X11 backend.
9523
9524         * gdk/win32/gdkcc-win32.c
9525         * gdk/win32/gdkcolor-win32.c
9526         * gdk/win32/gdkfont-win32.c
9527         * gdk/win32/gdkinput-win32.c
9528         * gdk/win32/gdkmain-win32.c
9529         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
9530
9531 2000-10-24  Havoc Pennington  <hp@redhat.com>
9532
9533         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
9534         it a static function
9535
9536         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
9537         redraw text when a tag is applied to it.
9538
9539         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
9540         (gtk_text_tag_affects_nonsize_appearance): private functions to
9541         see if a tag requires various kinds of redraw/layout to be queued
9542         up.
9543
9544         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
9545
9546         * gtk/testtext.c (fill_example_buffer): Put the cursor 
9547         at the start of the buffer, so search works by default
9548
9549         * gtk/gtktextiter.c (lines_match): init match_start always
9550
9551         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
9552         function, get iter at a line + a byte index
9553
9554         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
9555         to set byte position within a line
9556         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
9557
9558 2000-10-23  Havoc Pennington  <hp@redhat.com>
9559
9560         * gtk/testtext.c: Re-enable the "find" dialog
9561
9562         * gtk/testgtk.c: Add test for gdk_drawable_get_image
9563         
9564         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
9565         the arguments to gdk_draw_drawable were in the wrong order
9566         (gdk_window_paint_init_bg): This function was ignoring the
9567         init_region, instead of clipping to it, so the entire backing
9568         pixmap was cleared on every begin_paint()
9569         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
9570         was in here again, the loop kept using the same GtkWindowPaint
9571         over and over.
9572         (gdk_window_begin_paint_region): Fix a bug where we had two
9573         x_offset instead of x_offset and y_offset
9574
9575         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
9576         before we get the image.
9577         (gdk_draw_drawable): get the composite before we draw the drawable.
9578         (gdk_drawable_real_get_composite_drawable): default
9579         get_composite_drawable implementation that returns the drawable 
9580         itself
9581
9582         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
9583         get_composite_drawable virtual function
9584
9585         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
9586         list-walking bug
9587
9588         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
9589         make this work if the source drawable is a GdkDrawableImplX11
9590         instead of a public drawable type. This is really broken; the
9591         problem is that GdkDrawable needs a virtual method get_xid(), but
9592         of course that doesn't work in practice. Enter RTTI.
9593
9594         Also, improve mismatched depth message.
9595
9596         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
9597         GdkPixmap
9598
9599         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
9600         install _gdk_x11_get_image as our implementation of get_image
9601         
9602         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
9603         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
9604
9605         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
9606         gdk_drawable_get_image
9607
9608         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
9609
9610         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
9611         get_image
9612
9613         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
9614         trailing semicolon after for loop
9615
9616 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
9617
9618         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
9619         where font_desc for widget's context lagged widget's font_desc by
9620         one step.
9621
9622 2000-10-22  Tor Lillqvist  <tml@iki.fi>
9623
9624         * gdk/win32/gdkgc-win32.c
9625         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
9626
9627         * gtk/makefile.mingw.in
9628         * gtk/gtk.def: Updates.
9629
9630         * gtk/testgtk.c: sleep() is called _sleep in MS's C
9631         library.
9632
9633         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
9634
9635         * gtk/makefile.msc: Remove
9636
9637         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
9638
9639         * gtk/Makefile.am: Add it.
9640
9641         * configure.in: Generate it.
9642
9643         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
9644         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
9645         something even if not implemented, to satisfy picky MSVC.
9646
9647         Patches by Hans Breuer:
9648         
9649         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
9650         SetBkMode() and SetTextAlign() before calling
9651         pango_win32_render().
9652
9653         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
9654         Set hcliprgn to NULL after destroying it.
9655         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
9656
9657         * gdk/win32/gdkgeometry-win32.c
9658         (_gdk_windowing_window_queue_antiexpose): More effective
9659         implementation.
9660
9661         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
9662         depth as default, not the visual's.
9663
9664         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
9665         against empty title.
9666
9667         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
9668         IMAGE_PRIVATE_DATA.
9669
9670         * gdk/win32/gdkimage-win32.c: Use it.
9671
9672 2000-10-22  Robert Brady  <robert@suse.co.uk>
9673
9674         * configure.in: Check for bind_textdomain_codeset
9675
9676         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
9677         present, make use of it.
9678
9679         Add a translatable string "default:LTR" which, if translated
9680         to "default:RTL", will cause the default direction to be
9681         Right-to-Left.
9682
9683         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
9684         direction if marked as flippable.
9685
9686         * gtk/gtkhscale.c: Mark widget as flippable.
9687         
9688 2000-10-04  Havoc Pennington  <hp@redhat.com>
9689
9690         * gtk/testgtk.c (create_buttons): create some stock buttons
9691         with the default accel group
9692         (create_image): test some new GtkImage features
9693         (make_message_dialog): test GtkMessageDialog
9694         (create_modal_window): fix someone's bizzarro indentation
9695
9696         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
9697         GTK_WIN_POS_CENTER_ON_PARENT. 
9698         Add "destroy with parent" setting, which means the window goes
9699         away with its transient parent.
9700         (gtk_window_get_default_accel_group): get the default accel group
9701         for the window.
9702         (gtk_window_set_destroy_with_parent): set/unset destroy with
9703         parent flag
9704         (gtk_window_read_rcfiles): invalidate icon set caches
9705         after reloading rcfiles 
9706
9707         * gtk/gtkenums.h (GtkWindowPosition): add
9708         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
9709         on its parent window when the dialog is mapped for the first time.
9710
9711         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
9712         a simple message dialog class
9713         
9714         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
9715         handler to emit response signal, and maybe later it would
9716         honor a hide_on_delete flag - though that isn't there yet.
9717         Set border width on the vbox to 2, so we get some padding.      
9718         Use a button box for the action area.
9719         (gtk_dialog_key_press): synthesize a delete event if Esc
9720         is pressed and the GtkWidget key press handler didn't 
9721         handle the escape key.
9722         (gtk_dialog_new_with_buttons): new function creates a dialog
9723         with some default buttons in it.
9724         (gtk_dialog_add_action_widget): add an activatable widget
9725         as a button in the dialog - you can also add a non-activatable
9726         widget by accessing the action area directly.
9727         (gtk_dialog_add_button): add a simple button - stock ID or 
9728         label - to the action area
9729         (gtk_dialog_response): emit response signal
9730         (gtk_dialog_run): block waiting for the dialog, return 
9731         the response. Override normal delete_event behavior, so that 
9732         delete_event does nothing inside gtk_dialog_run().
9733
9734         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
9735         emitted when an action widget is clicked or the dialog gets
9736         delete_event
9737
9738         * gtk/gtk.h: add gtkmessagedialog.h
9739
9740         * gtk/Makefile.am: add gtkmessagedialog.[hc]
9741
9742 2000-10-18  Havoc Pennington  <hp@redhat.com>
9743
9744         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
9745         where any number of empty lines would get skipped
9746
9747         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
9748         edge.
9749
9750         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
9751         warning about invalid iterators (explain more thoroughly)
9752         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
9753
9754         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
9755         big
9756
9757         * demos/*.c: Add error handling
9758
9759         * gtk/gtktextbuffer.c: don't modify const iterators
9760
9761         * gtk/gdk-pixbuf-loader.c: Add full error handling here
9762
9763         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
9764         on file load
9765
9766         * gtk/gtkiconfactory.c: Update to reflect addition of error
9767         handling to gdk-pixbuf loaders
9768
9769 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
9770
9771         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
9772         move to new modularized testgtk.
9773
9774 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
9775
9776         * gtk/gtktreeview.c: Draw the arrows correctly.
9777
9778         * gtk/gtktreemodel.c: Added user docs.
9779
9780         * gtk/gtk.h: remove gtktreedatalist.h.
9781
9782         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
9783         parent when generating my type.
9784
9785         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
9786         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
9787
9788 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
9789
9790         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
9791         GtkTreeModel from object to interface.
9792
9793 2000-10-16  Havoc Pennington  <hp@redhat.com>
9794
9795         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
9796         compilation
9797
9798 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
9799
9800         * gtk/gtktreeselection.c: Add API documentation to all public
9801         functions.
9802
9803         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
9804         functions.
9805
9806 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
9807
9808         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
9809         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
9810         docs to all public functions.
9811
9812         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
9813         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
9814         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
9815         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
9816         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
9817         issue.
9818
9819 2000-10-14  Robert Brady  <robert@suse.co.uk>
9820
9821         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
9822
9823 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
9824
9825         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
9826         values other then G_TYPE_STRING.
9827         * gtk/gtktreeselection.c: Minor commenting updates.
9828         * gtk/gtktreeview.c: Format updates.
9829
9830 2000-10-09  Tor Lillqvist  <tml@iki.fi>
9831
9832         * README.win32: Update.
9833
9834         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
9835         lines that had been deleted by mistake (?).
9836
9837         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
9838         also the case fg==white and bg==black (but still not randomly
9839         coloured cursors). Thanks to Wolfgang Sourdeau.
9840
9841         * gdk/win32/*.c: Silence gcc -Wall.
9842
9843         * gtk/gtk.def: Add missing entry points.
9844
9845         Fixes by Hans Breuer:
9846
9847         * gdk/makefile.msc
9848         * gdk/win32/makefile.msc: Update.
9849
9850         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
9851         some MSVC thing, presumably), cause breakpoint on failures. Add
9852         GDK_NOR case. Call g_log_set_always_fatal.
9853
9854         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
9855         should be pased by reference.
9856         
9857         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
9858         
9859         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
9860
9861         * gdk/win32/gdkevents-win32.c
9862         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
9863
9864         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
9865         implementation object.
9866
9867         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
9868         not just windows.
9869         
9870         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
9871         Use the wrapper object.
9872         
9873 2000-10-06  Havoc Pennington  <hp@redhat.com>
9874
9875         * Makefile.am (SRC_SUBDIRS): contrib subdir
9876
9877         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
9878         so it can be used in Xlib version
9879
9880         * demos/testpixbuf.c (update_timeout): error checking from 1.0
9881         tree
9882
9883         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
9884         change from 1.0 tree that returns first frame of animation
9885         if the loaded file is an animation.
9886
9887         * contrib: add new directory to hold stuff that comes with GTK+
9888         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
9889         
9890         * configure.in: add contrib/*
9891
9892 2000-10-05  Havoc Pennington  <hp@redhat.com>
9893
9894         * demos/testpixbuf-save.c: add pixbuf save test
9895
9896         * demos/Makefile.am: add testpixbuf-save.c
9897
9898 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
9899
9900         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
9901         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
9902         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
9903         * gtk/gtktreeselection.[ch]: Replaced
9904         "node_selected"/"node_unselected" signal with "selection_changed"
9905         signal.
9906
9907 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
9908
9909         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
9910         tree widget.
9911
9912 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
9913
9914         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
9915         drawing.
9916
9917 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
9918
9919         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
9920         Move list pointer forwards before removing item from
9921         list. (Crash reported by Salmaso Raffaele)
9922
9923         * gdk/gdkwindow.h: Remove spurious trailing ,
9924
9925         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
9926         dependencies on uninstalled libraries, sorry folks.
9927
9928 2000-10-04  Havoc Pennington  <hp@redhat.com>
9929
9930         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
9931         gtk/gtkiconfactory.c: Fix copyrights    
9932
9933         * demos/testpixbuf.c: add inline pixbuf test
9934         
9935 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
9936
9937         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
9938         Add gdk_window_iconify.
9939
9940         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
9941         (gdk_window_set_geometry_hints): Add win_gravity
9942         to geometry structure.
9943
9944         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
9945         Implement _NET_WM_PING.
9946
9947         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
9948         Set _NET_WM_PID on the client leader.
9949
9950         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
9951         Handle UTF-8 better.
9952
9953         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
9954         UTF-8 better, set _NET_WM_NAME as well. Only set
9955         icon name if it hasn't previously been explicitely 
9956         set.
9957
9958 2000-10-03  Havoc Pennington  <hp@redhat.com>
9959
9960         * gtk/testtextbuffer.c: clean up trailing whitespace,
9961         add extensive tests for tag toggle iteration.
9962         
9963         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
9964         distance
9965
9966         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
9967         optimize case where the tag root is on level 1
9968         (gtk_text_line_previous_could_contain_tag): attempt to implement
9969         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
9970         functionality
9971
9972         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
9973         Implement this, though not very efficiently.
9974
9975         * gtk/gtktextiterprivate.h: reformat
9976
9977         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
9978         iterator
9979
9980         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
9981         this to properly revalidate the iterators.
9982
9983         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
9984         properly at the end of the line (and therefore on empty lines)
9985
9986         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
9987         maybe we should return a value...
9988
9989 2000-10-03  Tor Lillqvist  <tml@iki.fi>
9990
9991         * config.h.win32: Guard definition of alloca(). glib.h now handles
9992         that.
9993
9994         * gdk/gdk.def
9995         * gtk/gtk.def: Add new entry points.
9996
9997         Changes just to make GTK+ build without errors on Win32. No hope
9998         of it working in its current state, though...:
9999         
10000         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
10001         some functions from the X11 backend, just to make GTK+ build.
10002
10003         * gdk/makefile.mingw.in
10004         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
10005         number. Add new object files.
10006
10007         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
10008         GetMessageTime to get timestamp (where on X11 uses
10009         gdk_x11_get_server_time()).
10010
10011 2000-10-02  Havoc Pennington  <hp@pobox.com>
10012
10013         * gtk/gtktextview.c: text_window_* weren't static and should have
10014         been.
10015         Start work on child widgets; not yet complete, syncing to 
10016         office computer.
10017
10018         * gtk/gtktextchild.h: change this to contain a public interface,
10019         starting work on child interfaces.
10020         * gtk/gtktextchildprivate.h: move private interfaces here
10021
10022         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
10023
10024         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
10025         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
10026         gtk/gtktextmark.c: copyright notices
10027
10028         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
10029         internal functions      
10030
10031         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
10032         internal function
10033
10034         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
10035         Reformatting    
10036
10037 2000-09-30  Havoc Pennington  <hp@pobox.com>
10038
10039         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
10040         NULL start/end pointers
10041
10042         * gtk/gtktextbuffer.c: Write some docs
10043         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
10044         NULL, so you can just check whether there's a selection.        
10045
10046         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
10047         cleanup_line or segments_changed ourselves, it gets done 
10048         in unlink_segment
10049
10050         * gtk/gtktextmark.h:
10051         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
10052         
10053         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
10054
10055         * gtk/gtktextmark.c: delete some more old Tk cruft
10056
10057         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
10058         mark before removing it, so we can emit MARK_DELETED with a valid
10059         pointer.
10060         (gtk_text_buffer_mark_set): hold ref across signal emission
10061
10062         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
10063         whining about attempts to delete special marks
10064
10065         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
10066         underscore, since it's internal.
10067
10068         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
10069         now implemented in terms of iterators in gtktextiter.h
10070
10071         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
10072         New function, destructively sets contents of buffer. Also 
10073         a convenient way to clear the buffer by setting text to ""
10074
10075         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
10076         multiline string literal
10077
10078         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
10079         text changes.
10080
10081         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
10082         is not dereferenceable
10083         (gtk_text_iter_forward_lines): fix return value
10084
10085 2000-09-29  Havoc Pennington  <hp@redhat.com>
10086
10087         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
10088
10089         * gtk/gtktextview.c: Implement drag thresholding; change functions 
10090         that set border window size to have nicer name
10091         (gtk_text_view_mark_set_handler):  Fix this to have the 
10092         right signature.
10093
10094         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
10095
10096         * gtk/testtext.c: Update with API changes, put line numbers on 
10097         both sides.
10098         
10099         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
10100         with this
10101
10102         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
10103         pixbuf; delete a big block of #if 0 Tk code
10104
10105         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
10106         insert_pixmap with insert_pixbuf
10107
10108 2000-09-29  Martin Baulig  <baulig@suse.de>
10109
10110         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
10111         confusion with the GdkPixbuf of the GNOME 1.x platform.
10112
10113 2000-09-29  Havoc Pennington  <hp@pobox.com>
10114
10115         * gtk/gtktextview.c: Implement the side windows.
10116
10117         * gtk/testtext.c: Implement simple line numbering in the 
10118         left side window; seems to make scrolling sloooow. Oops.
10119         Also, cursor blink is for some reason causing redraws
10120         of the line numbers. Should investigate...
10121
10122 2000-09-28  Havoc Pennington  <hp@redhat.com>
10123
10124         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
10125         scrolling child windows, and draw focus rectangle properly.
10126         
10127         (gtk_text_view_buffer_to_window_coords):
10128         Coordinate transformation to deal with all these freaking windows
10129         and offsets
10130         (gtk_text_view_window_to_buffer_coords): transform the other way
10131
10132         * gtk/testtext.c (create_buffer): Update to match Pango API change
10133
10134         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
10135         anonymous tags
10136         (foreach_unref): don't emit remove signal from finalize, just
10137         set tag's parent to NULL
10138
10139 2000-09-26  Havoc Pennington  <hp@redhat.com>
10140
10141         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
10142         Fix some warnings       
10143
10144 2000-09-26  Havoc Pennington  <hp@redhat.com>
10145
10146         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
10147         headers into the private header list
10148
10149         * Makefile.am (pkgconfig_DATA): install pkg-config files
10150
10151         * configure.in: add pkg-config files
10152
10153         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
10154
10155         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
10156         outstanding icon caches on theme change.
10157
10158         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
10159         important types:
10160
10161         (GtkIconSource): Specification for creating a pixbuf 
10162         appropriate for a direction/state/size triplet from 
10163         a source pixbuf or filename
10164
10165         (GtkIconSet): List of GtkIconSource objects that are used to
10166         create the "same" icon (e.g. an OK button icon), and cache for
10167         rendered icons
10168
10169         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
10170         up the icon set for a given stock ID.  GTK maintains a stack of
10171         GtkIconFactory to search, and applications or libraries can add
10172         additional icon factories on top of the stack
10173         
10174         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
10175         the set of GtkIconSource specified for a given stock ID into 
10176         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
10177         RcStyle, under the specified stock ID.
10178
10179         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
10180         render_icon used to derive a GdkPixbuf from a GtkIconSource.
10181         This allows people to theme how prelight, insensitive, etc. are
10182         done.
10183
10184         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
10185         icon factories for a style, and return the resulting 
10186         icon set if any.
10187
10188         (gtk_style_render_icon): Render an icon using the render_icon 
10189         method in the GtkStyleClass.
10190
10191         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
10192         Use the style for a given widget to look up a stock ID, get the
10193         icon set, and render an icon using the render_icon method 
10194         of the style
10195
10196         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
10197         (contains information about a stock item), the built-in stock item
10198         IDs, and functions to add/lookup stock items.
10199
10200         * gtk/stock-icons/*: Stock icons that come with GTK
10201
10202         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
10203         a button based on a GtkStockItem
10204         (gtk_button_new_accel): Takes a uline string and accel group, and
10205         installs the accelerator.
10206
10207         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
10208         image-display widget.
10209
10210 2000-09-25  Havoc Pennington  <hp@redhat.com>
10211
10212         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
10213
10214         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
10215         Fix a bug when removing node data, we didn't properly 
10216         re-splice the linked list after removing the data.
10217
10218         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
10219         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
10220
10221         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
10222
10223         * gtk/gtktextlayout.c (set_para_values): Set tab array 
10224         for the layout from the GtkTextTag.
10225
10226         * gtk/gtktexttypes.h: delete tab and search cruft, 
10227         remove g_convert() in favor of GLib version
10228
10229         * gtk/gtktexttypes.c: remove tab implementation from here,
10230         move to Pango
10231
10232         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
10233         tab stuff using new PangoTabArray from Pango
10234
10235         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
10236         unused border_width stuff
10237
10238 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
10239
10240         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
10241         glib) and now useless utf_to_latin1() latin1_to_utf()
10242
10243         * gtk/gtktextview.[ch]: Change ::move_insert and
10244         ::delete_text action signals to ::move and ::delete;
10245         create the signals with the right enumeration type,
10246         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
10247         C-v bindings, change Home, End to move to beginning/end
10248         of line, Add C-Home C-End to move to beginning/end
10249         of buffer. Change ::cut_text to ::cut_clipboard, etc;
10250         combine ::scroll_text into ::move; use new GtkSelectionData
10251         functions to simplify DND text handling.
10252         
10253         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
10254         deletion enumerations here, rename enumeration values to 
10255         be consistently plural.
10256
10257         * gtk/gtktextbuffer.c: Use new clipboard interfaces
10258         for cut/copy/paste and primary selection.
10259
10260         * gtk/gtktextbuffer.[ch]: Remove excess time and
10261         'interactive' arguments from cut/copy/paste;
10262         rename cut to cut_clipboard, etc; remove
10263         gtk_text_buffer_get_clipboard_contents().
10264
10265         * gtk/gtktextlayout.[ch]: Add 
10266         gtk_text_layout_move_iter_to_line_end() to move the iter to 
10267         line ends.
10268
10269         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
10270         Functions to set or get a UTF-8 string on the selection
10271         data.
10272
10273         * gtk/gtkclipboard.[ch]: New, simplified selection handling
10274         interfaces.
10275
10276         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
10277         created widgets - one of these is useless if we don't.
10278
10279         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
10280         a public function clear all targets registered for the
10281         widget.
10282
10283         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
10284         Never call gtk_widget_realize() - that was just asking
10285         for bizarre side-effects.
10286
10287         * gtk/gtkselection.c (gtk_selection_owner_set): Call
10288         gdk_selection_owner_set even if the widget is the
10289         same so that we reliably update the timestamp on
10290         the server.
10291
10292         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
10293         gdk_x11_get_server_time() function.
10294         
10295         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
10296         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
10297         Add some tricky filtering on serial numbers for
10298         selection clear events to fix up long-standard
10299         race condition FIXME's in gtkselection.c.
10300
10301         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
10302         routines to convert from utf8 to compound text or
10303         STRING and from a text property to UTF-8.
10304
10305         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
10306         a convenience function gdk_get_current_event_time().
10307
10308         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
10309         and free selection_data->data properly
10310
10311 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
10312
10313         * gtk/gtkthemes.c: Remove some unecessary includes.
10314
10315 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
10316
10317         * gtk/gtktextdisplay.c
10318         * gtk/gtktextlayout.c
10319         * gtk/gtktexttag.c
10320         * gtk/gtktexttag.h
10321         * gtk/testtext.c: Change the overstrike property to strikethrough,
10322         to closer match pango.
10323
10324 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
10325
10326         * gtk/gtktextview.c: Fix up visibility so that focus,
10327         cursor_visible and blink interact properly.  Reenable cursor blink
10328         which had been roughly disabled. Make blink and focus
10329         properly per-view.
10330
10331         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
10332         Add a flag for whether to display insertion cursor and
10333         a function to set the flag.
10334
10335         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
10336         get_line_y() to get_line_yrange(), to be a bit more generally
10337         useful.
10338
10339 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
10340
10341         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
10342           do stop_navigating_submenu, to clear last timeout properly.
10343           Also in gtk_menu_motion_notify move ignore_enter above
10344           the conditional to make it always happen as suggested by Owen
10345
10346 2000-09-07  Tor Lillqvist  <tml@iki.fi>
10347
10348         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
10349
10350         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
10351         w32api headers.
10352
10353         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
10354         declarations.
10355
10356         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
10357         (gdk_win32_get_colormap): A line had been deleted by mistake.
10358
10359         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
10360         (gdk_event_translate): Handle more virtual keycodes to be able to
10361         generate GDK events for Control-comma, Control-period, etc.
10362
10363         * gtk/gtk.def: Add some missing entry points.
10364
10365 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
10366
10367         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
10368         Doc comment fixing. (Mostly non-matching parameter names.)
10369
10370         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
10371         comments a little to avoid looking like a doc comment.
10372
10373         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
10374         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
10375         conversions be changed to GError?)
10376
10377         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
10378         Move private #defines into .c file.
10379
10380         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
10381         order of argument addition, remove duplicates.
10382
10383         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
10384         parent class is FrameClass, not BinClass.
10385
10386         * gtk/gtk.h: Add gtkinvisible, which was missing.
10387         (It's occasionalyl useful for client apps, if seldom.)
10388
10389         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
10390         #define.
10391
10392 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
10393
10394         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
10395         coordinates when creating window, instead of GDK-space
10396         coordinates. (Avoid BadValue on too large windows.)
10397
10398 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10399
10400         * configure.in (use_mmx_asm): Remove conftest* after use along the
10401         lines of AC_TRY_COMPILE.        
10402         
10403         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
10404         of g_dirname, which is deprecated.
10405         (gtk_rc_parse_any): Removed calls to
10406         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
10407
10408         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
10409         Removed calls to g_hash_table_{freeze,thaw}, as they are
10410         deprecated now.
10411
10412         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
10413         instead of g_basename.
10414         
10415 2000-09-04 Elliot Lee <sopwith@redhat.com>
10416         
10417         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
10418         ANSI warning.
10419
10420 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
10421
10422         * gtk/gtkwidget.h:  Add some documenting comments about 
10423           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
10424           just as owen said on irc.
10425
10426         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
10427           set HAS_DEFAULT.  Only set it if there isn't another window
10428           holding it (a focus window which RECEIVES_DEFAULT) and only unset
10429           it if the widget is not the focused window with RECEIVES_DEFAULT.
10430           This fixes weird double default bugs in dialogs which has things
10431           call gtk_window_set_default at times.
10432
10433 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
10434
10435         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
10436         Nils Barth and David Santiago to improve submenu
10437         navigation. The patch does this by creating a triangular
10438         region from the point where the pointer leaves the
10439         menu to the submenu.  While the pointer is in
10440         that region and a timeout has not expired, events 
10441         that would cause the active submenu to change are
10442         ignored.
10443
10444 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
10445
10446         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
10447         moving a toplevel window immediately after sizing it would
10448         result in it being sized back to the old size since 
10449         impl->width, impl->height aren't updated until we hear
10450         back from the server. There is still a (longstanding) bug
10451         here that gdk_window_get_size() will give the wrong size
10452         until we do hear back.
10453
10454 2000-08-31  Havoc Pennington  <hp@redhat.com>
10455
10456         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
10457         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
10458         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
10459         Rename GtkTextStyleValues to GtkTextAttributes
10460
10461 2000-08-31  Havoc Pennington  <hp@pobox.com>
10462
10463         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
10464         for rapid testing whether an iterator is the end iterator
10465         (gtk_text_btree_new): init end line cache
10466         (gtk_text_line_is_last): use fast cached line to 
10467         see if we're the last line.
10468         (get_last_line): use cached line here too, should 
10469         speed up some random unrelated code.
10470         
10471 2000-08-30  Havoc Pennington  <hp@pobox.com>
10472
10473         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
10474         signals.
10475
10476         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
10477         delete_text signals. This allows the signals to be used for
10478         implementing undo.
10479
10480         * gtk/gtktextbuffer.c: Change signal handler signatures; 
10481         provide "interactive" argument when emitting insert_text or
10482         delete_text signal.
10483         
10484 2000-08-30  Havoc Pennington  <hp@pobox.com>
10485
10486         * gtk/gtktextbuffer.c: Docs
10487
10488 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
10489
10490         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
10491         from switch statements, since Tor removed the enumeration
10492         value.
10493         
10494         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
10495         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
10496
10497 2000-08-29 Elliot Lee <sopwith@redhat.com>
10498         * */*.h: Use G_GNUC_CONST.
10499
10500 2000-08-27  Havoc Pennington  <hp@pobox.com>
10501
10502         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
10503         minor indentation fixes, inserted some FIXME about stuff I
10504         realized was broken while documenting it.
10505         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
10506         GTK convention  
10507
10508 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
10509
10510         * gtk/testgtk.c (create_styles): Fix double free of
10511         font desc.
10512
10513 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10514
10515         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
10516         
10517         * gtk/testgtk.c (create_styles): Add a test for modifying
10518         the style through gtk_widget_modify_*.
10519
10520         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
10521         a function to get the current modifier style.
10522
10523         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
10524         of the passed in GtkRcStyle instead of ref'ing it.
10525
10526         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
10527
10528 2000-08-20  Tor Lillqvist  <tml@iki.fi>
10529
10530         * gdk/gdkimage.h
10531         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
10532         shared memory image+pixmap GdkImage type, or
10533         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
10534         I am dropping that.
10535
10536         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
10537         actually call gtk_init_abi_check(), passing also
10538         sizeof(GtkWindow). Ditto for gtk_init_check(). 
10539
10540         * gtk/gtk.def
10541         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
10542         New functions, used to check that the GTK+-using code has been
10543         compiled using the correct compiler and switches. In particular,
10544         with gcc one has to use the -fnative-struct switch as GTK+ is
10545         compiled with that.
10546
10547 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
10548
10549         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
10550         ->prev fields when merging lists. (Found simultaneously
10551         by Pawel Salek and Jakub Jelinek)
10552
10553 2000-08-12  Tor Lillqvist  <tml@iki.fi>
10554
10555         * gdk/gdk.def
10556         * gtk/gtk.def: Add missing entries.
10557
10558         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
10559         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
10560
10561         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
10562         function. Dummy implementation at this point.
10563
10564         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
10565         rules. Undefine GTK_COMPILATION when compiling the test programs.
10566         
10567         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
10568
10569 2000-08-11  Tor Lillqvist  <tml@iki.fi>
10570
10571         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
10572         to convert back and forth from UTF-8 and the "system" (or "current
10573         locale") charset when necessary. Indentation/spacing cleanup.
10574
10575 2000-08-10  Havoc Pennington  <hp@redhat.com>
10576
10577         * Makefile.am (snapshot): Change the format of the snapshot
10578         version to match glib
10579
10580         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
10581         from EXTRA_DIST since it doesn't seem to exist
10582
10583 2000-08-10  Tor Lillqvist  <tml@iki.fi>
10584
10585         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
10586         version of the directory name (not the UTF-8 one) when building
10587         the path name to stat().
10588
10589 2000-08-03  Elliot Lee  <sopwith@redhat.com>
10590
10591         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
10592         PANGO_ATTR_SHAPE set.
10593
10594 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
10595
10596         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
10597         Peter Osterlund to simplify the code while keeping the
10598         functionality the same.
10599
10600 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
10601
10602         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
10603         is_viewable() test further inside the function, since removing the 
10604         window from the redraw list without clearing ->update_area
10605         was also very broken.
10606
10607 2000-08-02  Tor Lillqvist  <tml@iki.fi>
10608
10609         * configure.in: Check for <unistd.h>.
10610
10611 2000-08-01  Martin Baulig  <baulig@suse.de>
10612
10613         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
10614         to display the message that this is a development version of GTK+.
10615
10616 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
10617
10618         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
10619         was depending on widget->allocation instead of the width of text_area,
10620         which was incorrect for subclasses like GtkSpinButton.
10621
10622         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
10623         with width == 1 tests that should be width == -1.
10624
10625 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
10626
10627         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
10628         (broken, Elliot, every single window blank on X) custom code with call
10629         to gdk_window_is_viewable() which a) prevents code duplicate and
10630         b) works. 
10631
10632 2000-07-31  Elliot Lee  <sopwith@redhat.com>
10633
10634         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
10635         to get the GDK_PARENT_ROOT() macro to work.
10636         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
10637         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
10638         of, windows that aren't shown.
10639         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
10640         pointer grab stuff.
10641
10642 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
10643
10644         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
10645           s/gtk_main_iteration/g_main_iteration/
10646
10647           Did this already in change:
10648                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
10649           don't know how it got reverted.
10650
10651 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
10652
10653         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
10654         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
10655
10656         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
10657         not gdk_pixbuf.
10658
10659 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
10660
10661         * configure.in,po/{sp,sr}.po: Added Serbian files
10662
10663 2000-07-30  Tor Lillqvist  <tml@iki.fi>
10664
10665         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
10666
10667         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
10668         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
10669         GIOChannel implementation.
10670
10671         * gdk/win32/gdkinput.c
10672         * gdk/win32/gdkpango-win32.c: Update license name here, too.
10673
10674         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
10675         definition to match prototype.
10676
10677         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
10678
10679 2000-07-27  Elliot Lee  <sopwith@redhat.com>
10680
10681         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
10682         function, to allow handling image formats that cannot be detected
10683         by looking at content alone.
10684
10685 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
10686
10687         * docs/tutorial/*.gif *.jpg *.eps
10688           Update these to the same look-n-feel.
10689           Why does including images in DocBook suck so badly?
10690
10691 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
10692
10693         * gtk/gtktable.c: applied patch from Phil Thompson
10694         <phil@river-bank.demon.co.uk> that enables space settings for
10695         the last row/columns as well.
10696
10697 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
10698
10699         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
10700         updates the license headers to the GNU Lesser General Public License,
10701         as well as updating the copyright year to 2000.
10702
10703 2000-07-26  Robert Brady  <rwb197@zepler.org>
10704
10705         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
10706           and po/Makefile, was installing and looking for them under gtk20
10707           and gtk2 respectively.
10708
10709 2000-07-25  Havoc Pennington  <hp@redhat.com>
10710
10711         * gtk/testtext.c: Comment out some stuff that depends on the rest
10712         of my patches.
10713
10714 2000-07-25  Havoc Pennington  <hp@redhat.com>
10715
10716         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
10717         buffer
10718
10719 2000-07-25  Havoc Pennington  <hp@redhat.com>
10720
10721         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
10722         widget changes.
10723
10724         * gtk/gtktextview.h: To be consistent with usage of "line"
10725         throughout the API to mean "newline-terminated thingy", change
10726         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
10727         to MOVEMENT_LINE.
10728
10729         (GtkTextView): Add flags for default editability, and whether to
10730         show the cursor. Add functions to get/set that. Add 
10731
10732         (gtk_text_view_get_iter_location): new function
10733
10734         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
10735         gtktextlayout.h
10736         (g_convert): Add g_convert temporarily, will go in glib in a bit
10737         
10738         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
10739         GtkTextTagTableForeach instead of brokenly using GHFunc.
10740         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
10741
10742         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
10743         moved to public header.
10744
10745         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
10746         "invisible", since "elide" was a bad name.
10747         (gtk_text_tag_get_priority): Added
10748
10749         (GtkTextStyleValues): put this in public header, along with
10750         functions to use it.
10751
10752         * gtk/gtktextmarkprivate.h: Include more headers, since we no
10753         longer include gtktextbtree.h.
10754
10755         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
10756         gtk_text_mark_deleted
10757
10758         * gtk/gtktextlayout.h: Don't include the "really private" headers,
10759         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
10760         to make this possible. Now we only need to install
10761         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
10762         (However the Makefile.am isn't changed yet because of the
10763         logistics of merging gtk-hp-patches piecemeal)
10764
10765         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
10766         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
10767         gtk_text_iter_get_line is now used in the public API for a
10768         different purpose.
10769
10770         * gtk/gtktextiter.h: Clean up function names to be more
10771         consistent. Always call char offset "offset" and byte index
10772         "index". A "line" is always a line number. 
10773
10774         (gtk_text_iter_is_last): new function, more efficient than 
10775         the existing way to check
10776         (gtk_text_iter_is_first): new function, also more efficient
10777
10778         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
10779
10780         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
10781         gtk_text_iter_forward_char, etc.
10782
10783         (gtk_text_iter_forward_to_tag_toggle): Renamed from
10784         forward_find_tag_toggle, since this isn't a linear search
10785
10786         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
10787
10788         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
10789         New functions, search for a buffer substring.
10790
10791         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
10792         interactive and default editable (since we need to store that info
10793         until we receive the selection data).
10794
10795         Remove all the _at_char and at_line etc. versions of functions;
10796         only have iterator versions.
10797
10798         Add _interactive() versions of functions, that consider the
10799         editability of text. (FIXME add interactive flag to the 
10800         insert/delete signals per Darin's suggestion)
10801
10802         (gtk_text_buffer_get_tag_table): new function, demand-creates the
10803         tag table if necessary
10804
10805         Remove declaration of gtk_text_buffer_get_iter_from_string
10806
10807         (_gtk_text_buffer_get_btree): private/internal function, added.
10808         
10809
10810         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
10811         (gtk_text_line_is_last): new function
10812
10813 2000-07-25  Havoc Pennington  <hp@redhat.com>
10814
10815         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
10816         using GtkProgressBar. See Changes-2.0.txt for details.
10817
10818         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
10819         "pulse_step" which are the equivalent of
10820         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
10821         Implement new API.
10822         
10823         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
10824         (use_text_format) to mark whether text set on the progress bar is
10825         a format string. Deprecate entire GtkProgress interface.
10826
10827         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
10828         (gtk_progress_build_string): make this a no-op if use_text_format
10829         is FALSE
10830
10831         * docs/Changes-2.0.txt: Describe progress bar changes.
10832
10833 2000-07-25  Tor Lillqvist  <tml@iki.fi>
10834
10835         * Makefile.am: Include the build directory.
10836
10837         * configure.in: Generate build/Makefile, build/win32/Makefile,
10838         gdk/, gdk/win32/, and gtk/makefile.mingw.
10839
10840         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
10841         Add GETTEXT_PACKAGE.
10842         
10843         * gdk/gdk.def
10844         * gtk/gtk.def: Updates.
10845
10846         * gdk/gdkfont.h
10847         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
10848         need them any longer.
10849
10850         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
10851
10852         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
10853         PANGOWIN32_LIBS and gdk_pixbuf.
10854
10855         * gdk/win32: Compiles, but no doubt doesn't work at all.
10856
10857         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
10858
10859         * gdk/win32/gdkinput.c: New file, temporarily.
10860         
10861         * gdk/win32/gdkinput-win32.h: New file
10862
10863         * gdk/win32/gdkinputprivate.h: Remove.
10864
10865         * gdk/win32/gdkpango-win32.c: New file.
10866
10867         * gtk/makefile.mingw.in: New file
10868
10869         * gtk/makefile.cygwin: Removed
10870         
10871         * gtk/Makefile.am: Update accordingly.
10872
10873         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
10874         made externally visible.
10875
10876         * gtk/gtkmain.c: Use it.
10877         
10878         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
10879         is enough.
10880
10881         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
10882
10883 2000-07-24 Elliot Lee <sopwith@redhat.com>
10884         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
10885         individual backends already.
10886         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
10887         again. Yes, there really is a good reason for this, if you are using the gdkregion
10888         internals, and if you're not, why do you care?
10889         * gdk/gdkwindow.c: Fix inverted condition
10890         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
10891         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
10892         * gtk/gtkrange.c: Redraw trough when moving.
10893         * gtk/gtktypeutils.c: Fix warning by adding const cast.
10894         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
10895
10896 2000-07-23  Tor Lillqvist  <tml@iki.fi>
10897
10898         * configure.in: Check for mkstemp and sigsetjmp. Output
10899         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
10900
10901         More work on GDK for Win32. Still in an intermediate state.
10902
10903         * gdk/makefile.cygwin
10904         * gdk/win32/makefile.cygwin: Removed.
10905         
10906         * gdk/makefile.mingw.in
10907         * gdk/win32/makefile.mingw.in: New files.
10908
10909         * gdk/Makefile.am
10910         * gdk/win32/Makefile.am: Generate and distribute them.
10911
10912         * gdk/win32/gdkwindow-win32.h
10913         * gdk/win32/gdkdrawable-win32.h
10914         * gdk/win32/gdkpixmap-win32.h: New files.
10915
10916         * gdk/win32/gdkcolor-win32.c
10917         * gdk/win32/gdkcursor-win32.c
10918         * gdk/win32/gdkdrawable-win32.c
10919         * gdk/win32/gdkgc-win32.c
10920         * gdk/win32/gdkimage-win32.c
10921         * gdk/win32/gdkprivate-win32.h
10922         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
10923         Rename fields and variables called xcursor, xid, etc (these names
10924         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
10925
10926 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
10927
10928         * gtk/gtkentry.[ch]: Fix some problems with vertical
10929         alignment.
10930
10931         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
10932         char/byte confusion.
10933
10934 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
10935
10936         * gtk/gtktextview.c (changed_handler): Fix bug where
10937         redraw wasn't being done properly when height of
10938         dirty region changed.
10939
10940         * demos/Makefile.am: Remove various references to
10941         -lgmodule
10942
10943 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
10944
10945         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
10946         PangoAttrShape to reserve space for pixmaps, add 
10947         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
10948         in the display functions.
10949         
10950         * gtk/testgtk.c (create_layout): Set some more exotic
10951         scrolled window options
10952
10953         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
10954         Add function to set the shadow type of a window, to allow
10955         putting a shadow around widgets such as GtkLayout or GnomeCanvas
10956         which don't draw their own frame.
10957
10958 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
10959
10960         * docs/tutorial/package-db-tutorial.sh: New file for
10961           packaging DocBook format tutorial
10962
10963 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
10964
10965         * docs/tutorial/gtk-tut.sgml: Minor updates
10966
10967         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
10968
10969 2000-07-19  Tor Lillqvist  <tml@iki.fi>
10970
10971         * gtk/gtksignal.c: Fix C++ comment.
10972
10973         * gtk/gtkimmulticontext.c
10974         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
10975         don't return value from void functions.
10976
10977         * gtk/gtk.def: Add gtk_rc_style_unref.
10978
10979 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10980
10981         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
10982         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
10983         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
10984         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
10985         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
10986         gtk/gtktypeutils.h: Include files outside of the extern "C"
10987         block. Makes some C++ compiler happy. Reported by Denis Vakatov
10988         <vakatov@peony.nlm.nih.gov>.
10989
10990 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
10991
10992         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
10993           Completes first pass. Hurrah!
10994
10995 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
10996
10997         * docs/tutorial/gtk-tut.sgml: More clean ups.
10998
10999 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
11000
11001         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
11002         paint the background of the text area which was accidentally
11003         removed at some point.
11004
11005         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
11006           
11007          - Move most of the functionality from the theme vtable
11008            into GtkRcStyleClass and GtkStyleClass. The moved
11009            vtable functions were changed a bit in the move to
11010            work better in their new home.
11011
11012          - Get rid of the engine and engine_data fields from
11013            GtkRcStyle and GtkStyle; instead the theme
11014            engine derives theme-specific subclasses of GtkRcStyle
11015            and GtkStyle
11016
11017          - Add extra dlsym() found entry point to themes,
11018            theme_create_rc_style().
11019
11020         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
11021         in gtk_style_real_copy.
11022
11023         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
11024         to register a type associated with an engine. (The engine
11025         won't be unloaded as there is an instance of the type.)
11026
11027
11028 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
11029
11030         * docs/tutorial/gtk-tut.sgml: Clean ups.
11031
11032 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
11033
11034         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
11035           of cleaning up to do.
11036
11037 2000-07-15  Tor Lillqvist  <tml@iki.fi>
11038
11039         * gdk/testgdk.c: New file, quick hack to test backends for
11040         pixel-by-pixel correctness of the most simple graphic operations.
11041
11042 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
11043
11044         * Really release 1.3.1
11045         
11046         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
11047         include structure.
11048
11049 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
11050
11051         * Released 1.3.1
11052
11053 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
11054
11055         * gtk/gtktextlayout.c: use FALSE for size_only most
11056         of the time when calling gtk_text_layout_get_line_display()
11057         to avoid causing double reshapes when a redraw follows
11058         immediately after.
11059
11060 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
11061
11062         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
11063         appropriate region and gdk_window_process_updates() so trough
11064         updating doesn't lag behind the window being scrolled.
11065
11066         * gdk/gdkgc.c: Make parent_class pointer static.
11067          
11068 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
11069
11070         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
11071         include <string.h>.
11072          
11073         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
11074         cut-and-paste error in computing memory offset for 4 channels.
11075
11076 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
11077
11078         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
11079         gtk_rc_append_default_pixmap_path(), since it wasn't
11080         adding an interesting path and we don't have a meaningful
11081         default for this value.
11082
11083 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
11084
11085         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
11086         gtk-config to gtk-config-2.0 move gtk_.m4 to
11087         gtk-2.0.m4
11088
11089         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11090         gdk/Makefile.am demos/Makefile.am: Change 
11091         library names to libgtk-1.3.la, etc, so that we
11092         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
11093
11094         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11095         gdk/Makefile.am gdk/x11/Makfile.am
11096         Move include files into /usr/include/gtk-2.0, 
11097         /usr/lib/gtk-2.0/include/
11098          
11099         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
11100         gtk/gtkintl.h: Change package for gettext from 
11101         gtk+ to gtk20. Put hack in autogen.sh to modify
11102         po/Makefile.in.in after gettextize to make this
11103         possible.
11104
11105         * gtk+.spec: Some updates, not tested.
11106
11107         * gdk-pixbuf/Makefile.am: Move loaders into
11108         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
11109
11110         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
11111         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
11112         to THEMENAME/gtk-2.0/. Move engine directory  to
11113         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
11114         
11115 2000-07-12  Tor Lillqvist  <tml@iki.fi>
11116
11117         Win32 changes, still doesn't build though.
11118
11119         * gdk/makefile.cygwin
11120         * gdk/win32/makefile.cygwin
11121         * gtk/makefile.cygwin: Updates.
11122
11123         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
11124         default values for fg and bg pixel as X11 does (0 and 1), not
11125         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
11126         Use 0 for pen width by default (treated as 1 anyway later, but for
11127         apps that might check the value in the GdkGC).
11128         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
11129         interface to gdk_gc_predraw and _postdraw.
11130
11131         * gdk/win32/gdkwin32.h
11132         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
11133
11134         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
11135         extraneous semicolon.
11136
11137         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
11138
11139         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
11140         not the Win32 bitspixel value.
11141
11142         * gdk/win32/gdkcc-win32.c:
11143         * gdk/win32/gdkcolor-win32.c 
11144         * gdk/win32/gdkprivate-win32.h
11145         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
11146         GDK object structure.
11147
11148 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
11149
11150         * docs/tutorial/gtk_tut_12.es.sgml (name): 
11151         * docs/tutorial/gtk_tut_it.sgml (name): 
11152         * docs/tutorial/gtk_tut_fr.sgml (name): 
11153         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
11154         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
11155
11156 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
11157
11158         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
11159           small changes.
11160
11161 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
11162
11163         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
11164         a bug here, never been here and never fixed anything ;(
11165         (don't segfault if tree->root_tree is NULL, which happens prior
11166         to widget realization, but puke instead).
11167
11168 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
11169
11170         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
11171         add the necessary tokens.
11172
11173         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
11174         (gtk_rc_style_to_style): copy thicknesses.
11175         (gtk_rc_init_style): apply thicknesses.
11176         (gtk_rc_parse_style): parse xthickness and ythickness.
11177
11178         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
11179
11180         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
11181         (gdk_window_new): 
11182         (_gdk_windowing_window_init): 
11183         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
11184         (gdk_pixmap_create_from_data): 
11185         (gdk_bitmap_create_from_data): 
11186         (gdk_pixmap_new): 
11187         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11188         (gdk_image_new): 
11189         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
11190         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
11191         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
11192         (gdk_colormap_get_system): 
11193         (gdk_colormap_new): 
11194         * gdk/gdkwindow.c (gdk_window_init): 
11195         * gtk/gtkstyle.c (gtk_style_new):
11196         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
11197         * gdk/gdkpixmap.c (gdk_pixmap_init): 
11198         * gtk/gtkrc.c (gtk_rc_style_new):
11199         use g_object_new() instead of g_type_create_instance() which
11200         is a private function for fundamental type implementations.
11201
11202 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
11203
11204         * configure.in: Add check for db2html
11205
11206 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
11207
11208         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
11209         hack to set glib_debug_objects based on gtk_debug_flags.
11210
11211 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
11212
11213         * INSTALL.in: Update the Prerequisites section.
11214
11215         * Makefile.am demos/Makefile.am docs/Makefile.am
11216         docs/tutorial/Makefile.am gdk/x11/Makefile.am
11217         gdk/linux-fb/Makefile.am: Dist fixes
11218
11219 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
11220
11221         * NEWS: 10,000 foot view of 1.3.1 changes.
11222
11223 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
11224
11225         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
11226         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
11227         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
11228         gdk/x11/gdkmain-x11.c: 
11229
11230         Patch from George Lebl to add a GdkGrabStatus enumeration to use
11231         as a return value of gdk_*_grab(). Previously, we just
11232         returned the X11 values directly.
11233
11234 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
11235
11236         * gdk/x11/Makefile.am: Patch from George Lebl to 
11237         install all the headers in the right place.
11238
11239 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
11240
11241         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
11242           initial conversion to DocBook.
11243
11244 2000-07-04  Tor Lillqvist  <tml@iki.fi>
11245
11246         * README.win32: Improve a bit.
11247
11248         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
11249         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
11250         Alt+0nnn on the numpad (used to enter characters by numeric code
11251         from current DOS or ANSI codepage) working correctly, as in other
11252         Windows apps.
11253
11254         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
11255         same argument validity tests as in X11 version.
11256         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
11257
11258         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
11259         definitions in case missing from headers.
11260
11261         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
11262         destroy the window-specific cursor.
11263         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
11264         calling GetModuleHandle(NULL).
11265         (gdk_window_set_cursor): Reworked to always copy the passed cursor
11266         with CopyCursor before setting it as the window-specific
11267         cursor. It is OK for the caller to destroy the GdkCursor (and thus
11268         also its Windows cursor) after calling this function. Destroy any
11269         previous window-specific cursor.
11270
11271 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
11272
11273         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
11274         font charset is iso8859-1, not iso-8859-1.
11275
11276 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
11277
11278         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
11279         Use g_get_charset() instead of g_get_codeset().
11280
11281         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
11282         Comment out some strdup'ing functions to keep timj
11283         happy until we finish fighting this out.
11284
11285 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
11286
11287         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
11288         <= width or height.
11289
11290         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
11291         from 1.2 for parent/child states.
11292
11293         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
11294         of typos.
11295
11296         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
11297         event structures, replace with a generic axes field. Replace 
11298         deviceid/sourec with GdkDevice *device.
11299
11300         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
11301         to extract particular axis use value from event. (Also
11302         can be used for normal X/Y.)
11303
11304         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
11305         allow for arbitrary number of axes, namespace everything
11306         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
11307         everywhere.
11308
11309         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
11310         Get rid of the gdk_input_vtable setup if favor of simply
11311         defining the functions in gdkinput-none/gxi/xfree.c in
11312         a similar fashion to the way that the port structure is 
11313         done.
11314
11315         * gtk/gtkdnd.c: Fix fields of synthesized button press event
11316         for new event structures. 
11317
11318         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
11319         new device interfaces.
11320
11321 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
11322
11323         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
11324         set the initial text.
11325
11326         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
11327         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
11328         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
11329         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
11330
11331         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11332         pango_layout_set_font_description to simplify.
11333
11334 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
11335
11336         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11337         pango_layout_set_font_description to simplify.
11338
11339 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
11340
11341         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
11342         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
11343         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
11344
11345         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
11346         PANGO_PIXELS() macro.
11347
11348 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
11349
11350         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
11351         that returns a PangoContext owned by the widget and updated to
11352         match future changes in the widget. Also, make 
11353         gtk_widget_create_pango_layout() use this context. If we ever
11354         add a ::changed signal to PangoContext, this will make things
11355         much more convenient. 
11356
11357         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
11358         in the appropriate places instead of destroying the layouts and
11359         creating new ones.
11360
11361         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
11362         in a few strategic places.
11363
11364 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
11365
11366         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
11367         gtk_widget_size_request() on reparented child, if one. Otherwise,
11368         queue_resize() on the child never results in it getting size-requested
11369         at all.
11370
11371         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
11372         in option menus, so that (with luck) people won't copy it into
11373         their apps in the future.
11374
11375         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
11376         to gtk_option_menu_calc_size. This isn't perfect, but should fix
11377         a lot of problems with changing the size of the menu's menu
11378         items after adding it to the option menu.
11379
11380         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
11381
11382         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
11383         the text direction for a widget changes.
11384
11385         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
11386         ::direction_changed to get rid of various hacks.
11387
11388 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
11389
11390         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
11391         name.
11392
11393 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
11394
11395         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
11396         flag to the structure. Do not call XFreePixmap on pixmaps created
11397         by gdk_pixmap_foreign_new().
11398
11399 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
11400
11401         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
11402         value using GdkRGB functionality given GdkColormap and GdkColor.
11403         (name not final, waiting for inspiration.)
11404         
11405         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
11406         set the foreground/background of a GC using the GC's colormap
11407         and GdkRGB. (name not final, waiting for inspiration.)
11408
11409         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
11410         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
11411
11412         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
11413         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
11414         purely a function of the corresponding colormap. Make
11415         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
11416
11417         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
11418         gdk_pixbuf_*create_from_xpm_* in terms of
11419         gdk_pixbuf_new_from_xpm_data(), move into platform independent
11420         code.
11421
11422         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
11423         advantage of the new draw_rgb_32_image_dithalign.
11424
11425         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
11426
11427         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
11428         on each created GC.
11429
11430         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
11431
11432         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
11433         which we initialize from the drawable when the GC is created,
11434         if the drawable has a colormap.
11435
11436         * gdk/x11/gdkgc-x11.c: include string.h for memset.
11437
11438         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
11439
11440         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
11441
11442 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
11443
11444         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
11445         actually returning expose events, make sure to set
11446         the count field properly.
11447
11448         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
11449         accidentally reintroced bug which always cleared
11450         the graphics_exposures value. 
11451
11452 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
11453
11454         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
11455
11456 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
11457
11458         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
11459
11460 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
11461
11462         * docs/faq/gtk-faq.sgml: Start of Section 6.
11463
11464 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
11465
11466         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
11467         
11468         (Fixes problem with drawing childless frames. Pointed out
11469         by and a first patch from Anders)
11470         
11471         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
11472         compute a child_allocation, even if we don't have a child.
11473
11474         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
11475         Always chain to the parent's impl, even if we don't have a child.
11476
11477 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11478
11479         * gdk/gdkrgb.c: If possible, create only a single shm segment and
11480         use multiple parts of it instead of creating a bunch of separate
11481         segments, since the maximum number of segments per system is not
11482         large. (This might be worth backporting to GTK+-1.2.x if we make a
11483         new release )
11484
11485         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
11486         structure in preparation for per-colormap GdkRGB.
11487
11488         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
11489         to False when we get EINVAL from shmget so that the caller of
11490         gdk_image_new can retry with a smaller segment size.
11491
11492 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
11493
11494         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
11495
11496 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
11497
11498         * configure.in: make the current version number 1.3.1 (binary age 0,
11499         interface age 0).
11500         
11501         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
11502         gtkcompat.h is all we want.
11503
11504         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
11505         GLib primitive types. fixed g_type_register_fundamental() argument
11506         ordering.
11507
11508         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
11509         compiles.
11510
11511         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
11512         object code cleanup, comment trigraph fixes, etc...
11513
11514 2000-06-23  Havoc Pennington  <hp@redhat.com>
11515
11516         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
11517         instead of making up a bogus name for first_para_mark
11518
11519         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
11520         0 as a context ID
11521
11522 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
11523
11524         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
11525
11526 2000-06-21  Havoc Pennington  <hp@pobox.com>
11527
11528         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
11529         we didn't check window->bg_pixmap != GDK_NO_BG.
11530
11531         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
11532         gdk-pixbuf
11533
11534 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
11535
11536         * docs/faq/gtk-faq.sgm: Move file to here.
11537           TODO: Update Makfile.am 
11538
11539 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
11540
11541         * docs/gtk-faq.sgm: Add Section 2
11542
11543 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
11544
11545         * docs/gtk-faq.sgm: New file. Start of DocBook
11546           version of the FAQ.
11547
11548 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
11549
11550         * configure.in (GDK_PIXBUF_MAJOR): Define version
11551         numbers for GDK_PIXBUF_*, as they get substituted
11552         into a header file. Need to consider versioning
11553         for gdk-pixbuf more carefully later.
11554
11555 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
11556
11557         Work with srcdir != builddir.   
11558         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
11559         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
11560         * demos/testpixbuf.c: Likewise.
11561         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
11562         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
11563         <gdk/x11/gdkx.h>.
11564         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
11565         "gdk-pixbuf.h".
11566         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
11567
11568 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
11569
11570         * TODO.xml: Change 1.4 version numbers to 2.0.
11571
11572 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
11573
11574         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
11575         fixups to GTK+ standard.
11576
11577 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
11578
11579         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
11580         gdk-pixbuf.
11581
11582         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
11583         fixups for GObject.
11584
11585         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
11586         gdk-pixbuf with GDK dependencies moved into GDK.
11587         
11588         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
11589         move gdk-pixbuf-loader here until GObject has signals.
11590
11591         * demos/: New directory of demos. Move demos from
11592         gdk-pixbuf here.
11593
11594         * demos/pixbuf-init.c: Small bit of code to check for
11595         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
11596         set GDK_PIXBUF_MODULEDIR appropriately.
11597
11598         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
11599         define which no longer makes sense.
11600
11601 2000-06-21  Havoc Pennington  <hp@redhat.com>
11602
11603         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
11604         gtk_get_default_language
11605
11606         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
11607         new function to get the default language
11608
11609         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
11610         s/gtk_text_view_style_values/gtk_text_style_values/
11611
11612         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
11613         Add a "language" field to tags.
11614
11615         (gtk_text_tag_set_arg): Fix bug in setting
11616         "bg_full_height_set" tag.
11617
11618 2000-06-21  Havoc Pennington  <hp@redhat.com>
11619
11620         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
11621         in the interfaces
11622
11623         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
11624         stuff instead when possible.
11625
11626         * gtk/gtktexttypes.h: Delete some unused constants
11627
11628         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
11629         testtextbuffer.c: use glib instead of custom unicode routines
11630
11631 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
11632
11633         * docs/es/: Removed mistakenly added generated sgml
11634
11635         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
11636         Remove outdated info files.
11637
11638         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
11639         Moved tutorial files into subdir
11640
11641         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
11642         subdir.
11643
11644         * docs/man/gtk_button.pod: Remove. (contents will be
11645         integrated into gtk-reference button page.)
11646
11647         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
11648         docs/faq/Makefile.am: Adjust for new organization
11649
11650 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
11651
11652         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
11653         not $(MKINSTALLDIRS)
11654
11655 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
11656
11657         * gtk/testgtk.c (create_text): Finish the job Elliot started
11658         of removing font setting test for text widget. (Since text widget
11659         and GdkFont are not deprecated, and cause portability problems.)
11660
11661 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
11662
11663         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
11664         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
11665         Remove use of libunicode in favor of new GLib functions.
11666
11667         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
11668         nano-x, framebuffer. The X11 include is just a hack until we get
11669         the necessary functions in gdkcolor.h, so there is no reason to
11670         add other includes of platforms.
11671
11672         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
11673         window bigger than the screen change.
11674
11675         * gtk/testgtk.c: Revert some random changes from Elliot
11676         that had no particular point and were causing testgtkrc
11677         not to function correctly.
11678         
11679         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
11680         because GdkSegment and GdkRegionBox have the same fields,
11681         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
11682         results in clearer code.
11683
11684         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
11685         gdk_input_translate_coordinates): Fix missed GdkObjectification
11686
11687 2000-06-18  Elliot Lee  <sopwith@redhat.com>
11688
11689         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
11690         * gtk/gtk{plug,socket}.h: Missed commits from previous.
11691
11692 2000-06-20  Havoc Pennington  <hp@redhat.com>
11693
11694         * modules/linux-fb/Makefile.am: Make this compile
11695         without framebuffer enabled
11696
11697         * gdk/linux-fb/Makefile.am: Add conditional to not build
11698         framebuffer unless specified in configure
11699
11700         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
11701         the size of the target instead of source if -1 was passed for
11702         width/height
11703
11704         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
11705         width/height confusion.
11706
11707 2000-06-19  Havoc Pennington  <hp@redhat.com>
11708
11709         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
11710         GDK_DRAWABLE_XID. In the future, we probably want to make it
11711         faster with G_DISABLE_CHECKS turned on.
11712
11713 2000-06-14  Havoc Pennington  <hp@redhat.com>
11714
11715         * gdk/Makefile.am: add gdkpixmap.c
11716
11717         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
11718         s/gdk_image_init/_gdk_windowing_image_init
11719
11720         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
11721         ref/unref
11722
11723         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
11724
11725         * gdk/gdkcompat.h: remove GdkWindowType compat, since
11726         GdkWindowType is now non-deprecated; 
11727         change gdk_window_get_type() compat to be
11728         gdk_window_get_window_type().
11729
11730         * gdk/gdkdnd.h: make GdkDragContext a GObject.
11731
11732         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
11733         virtual GObject. Make all functions call into the vtable.
11734         Move gdk_image_put() guts in here. Remove GdkDrawableType
11735         and gdk_drawable_get_type(), these are now GdkWindow-specific.
11736         draw_image, get_depth, get_size, set_colormap, get_colormap,
11737         get_visual added to the vtable.
11738         
11739         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
11740         GObject. Virtualize everything. 
11741         (gdk_gc_new_with_values): remove check for destroyed window,
11742         because now GdkWindow::create_gc will check this.
11743         (gdk_gc_set_values): New function to set GC values, this 
11744         was already implemented but wasn't in the header
11745
11746         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
11747
11748         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
11749         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
11750         remove _gdk_window_class; add _gdk_window_impl_get_type() and
11751         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
11752         _gdk_windowing_window_init, rename gdk_image_init to
11753         _gdk_windowing_image_init.
11754         
11755         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
11756         (gdk_draw_layout): Remove check for destroyed window, 
11757         because all the drawable methods already check it.
11758         
11759         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
11760         Add gdkpixmap.c which contains implementation of GdkDrawable
11761         virtual table (by chaining to a platform-specific implementation
11762         object).
11763         
11764         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
11765         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
11766         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
11767         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
11768         GdkColormapPrivate. 
11769
11770         * gdk/gdktypes.h: #include <glib-object.h>
11771
11772         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
11773         Move most functionality to platform-specific implementation
11774         object. GdkWindow itself now handles the backing store, then
11775         chains to the platform-specific implementation.
11776         (gdk_window_get_window_type): return GdkWindowType of the window.
11777         (gdk_window_peek_children): New routine, returns the children of 
11778         a GdkWindow
11779         (gdk_window_get_children): Was in X11-specific code and did 
11780         XQueryTree. Changed to simply return a copy of window->children; 
11781         so it can go in cross-platform code.
11782         
11783         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
11784
11785         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
11786         GdkColormap; just changed to use the new private data instead
11787         of casting to GdkColormapPrivate.
11788
11789         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
11790         gdk_cursor_new().
11791
11792         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
11793         (private data member in the GObject). 
11794         (xdnd_manager_source_filter): Function had broken 
11795         error handling, fix it (use gdk_error_trap_push).
11796
11797         * gdk/x11/gdkdrawable-x11.c: This file now implements
11798         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
11799         base class is purely for the convenience of the X port,
11800         and not part of the interface to cross-platform GDK.
11801
11802         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
11803         
11804         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
11805         specific to X, and returned by the create_gc virtual method
11806         of GdkDrawableImplX11. 
11807         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
11808         rather than gchar, this was also changed in the GdkGC vtable.
11809         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
11810         mask is 0, return immediately, instead of checking every flag.
11811         This is faster, and keeps us from segfaulting if values is NULL
11812         and the mask contains some nonzero flags.
11813
11814         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
11815         GdkWindow.
11816
11817         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
11818         GdkWindowPrivate is gone.
11819
11820         * gdk/x11/gdkim-x11.c: rename things that got renamed.
11821
11822         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
11823         remove the image_put stuff that got transferred to GdkDrawable.
11824         
11825         * gdk/x11/gdkinput.c: renamings
11826
11827         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
11828
11829         * gdk/x11/gdkpixmap-x11.c: GObject conversion
11830
11831         * gdk/x11/gdkprivate-x11.h: indentation fixes
11832
11833         * gdk/x11/gdkproperty-x11.c: renamings
11834
11835         * gdk/x11/gdkselection-x11.c: renamings
11836
11837         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
11838         implements the platform-specific "impl" object.
11839         Moved gdk_window_get_children to gdk/gdkwindow.c
11840
11841         * gdk/x11/gdkx.h: Remove all the private structs and private datas
11842         that no longer exist. Add declaration of GdkGCX11 object here.
11843         Fix all the macros to still work. 
11844
11845         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
11846         GdkDragContext from the boxed types since they are now GObjects.
11847
11848         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
11849         moved xthickness/ythickness into the instance. GtkStyleClass
11850         functions are now in the standard vtable for GtkStyle, so you have
11851         to create a GObject subclass to write a theme engine.
11852         (gtk_style_copy): fixed a leaked PangoFontDescription
11853         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
11854         can be the standard GObject function.
11855         
11856         * Throughout GTK:
11857         s/style->klass->[xy]thickness/style->[xy]thickness
11858         s/pango_layout_unref/g_object_unref/
11859
11860         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
11861         
11862         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
11863         accessing GDK internals.
11864
11865         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
11866         accessing GDK internals.
11867
11868 2000-06-18  Elliot Lee  <sopwith@redhat.com>
11869
11870         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
11871
11872         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
11873         problem by calculating event position relative to the trough
11874         rather than the slider.
11875         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
11876
11877         * gdk/gdkgc.h: Add GDK_NOR.
11878
11879         * configure.in, Makefile.am: Add modules top level dir
11880         * configure.in: Only use pangox library if building x11 target.
11881         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
11882
11883 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
11884
11885         * gtk/gtkcolorsel.c: Change private class member to be named
11886         private_data throughout the file.
11887
11888         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
11889         private_data to avoid clashing with keyword.
11890
11891 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
11892
11893         * gdk/gdkdnd.h: Add comment to remove warning.
11894
11895 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
11896
11897         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
11898         Byelorussian language; changed the Makefile and file names 
11899         to reflect that.
11900
11901 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
11902
11903         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
11904         rather than gdk_window_hide; this makes things work
11905         correctly if the window is programmatically hidden while
11906         iconified.
11907
11908 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
11909
11910         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
11911         cut and paste typo where wrong pixmap was being
11912         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
11913
11914 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
11915
11916         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
11917         Add helper function to compute format / bytes 
11918         relationship. Use in a couple places to fix up
11919         errors which assume 8 * format.
11920
11921         * gtk/gtkselection.c (gtk_selection_request): Use 32
11922         rather than 8 * sizeof (GdkAtom), to work correctly
11923         on Alpha.
11924
11925 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
11926
11927         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
11928         libgtk.la
11929         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
11930         versions
11931
11932         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
11933         checking macros return NULL since the function has a return value.
11934
11935 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
11936
11937         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
11938         GTK+ from building at all.
11939
11940         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
11941
11942 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
11943
11944         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
11945         gtk/Makefile.am: make it possible to configure gtk for different
11946         targets on the same platform. The library name is now 
11947         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
11948         flag. Only the x11 target compiles right now.
11949         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
11950         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
11951         * gdk/nanox/gdk*generic*: delete generic region code.
11952         * gdk/linux-fb/gdk*generic*: delete generic region code.
11953         * README.nanox: update information.
11954         
11955 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
11956
11957         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
11958         prepend not append. (Pointed out by Brett Hall.)
11959
11960 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
11961
11962         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
11963
11964 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
11965
11966         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
11967         need this later, and this makes sure that the atexit for
11968         glib gets called after that for GDK, so atexits are
11969         properly ordered for object leak checking.
11970
11971         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
11972
11973         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
11974         pango_x_shutdown_display()
11975
11976         * gtk/simple.c (main): Close window on destroy.
11977
11978 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
11979
11980         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
11981         to treat initial creation different from setting with 
11982         regards to the graphics-exposures parameter, so add a parameter
11983         indicating whether this is initial or not.
11984
11985 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
11986
11987         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
11988         to sort of work by adding an extra return_exposes arg
11989         to gdk_event_translate() - it might be better to simply
11990         deprecate the function altogether and force people to rewrite
11991         without it. gdk_window_scroll() handles most of it, and where
11992         gdk_window_scroll() doesn't work, simply redrawing more does.
11993
11994         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
11995         assertion.
11996
11997         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
11998
11999         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
12000         bunch of pretty much useless /* Print debugging info */ comments 
12001         which had drifted away from the code they were commenting.
12002
12003 2000-06-02  Havoc Pennington  <hp@pobox.com>
12004
12005         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
12006         is in working order.
12007         
12008         * gtk/testtext.c: Change to reflect anonymous mark API
12009
12010         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
12011
12012         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
12013         field, which was unused.
12014
12015         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
12016         saves some typing.
12017
12018         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
12019
12020         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
12021         flag on the insertion point and selection bound
12022
12023         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
12024         make mark-manipulation functions take a GtkTextMark* instead of a
12025         mark name.
12026         
12027         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
12028         GtkTextMarkBody; will be used to detect attempts to delete
12029         the permanent marks (insert and selection bound)
12030
12031         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
12032
12033 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
12034
12035         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
12036         flag to on.
12037
12038         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
12039         Honor DOUBLE_BUFFRED_FLAG
12040
12041         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
12042         function to set the DOUBLE_BUFFERED flag.
12043
12044         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
12045         or not exposes done on the widget should be double-buffered.
12046
12047         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
12048         to be what would be expected. (Fixes problem with a
12049         g_return_if_fail() validating a TextDirection enumeration)
12050
12051 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
12052
12053         * gtk/gtkwidget.c: Remove all references to 
12054         offscreen flag which was no longer used.
12055
12056         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
12057
12058         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
12059         for non-null label_widget->parent.
12060
12061         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
12062         which no longer was used.
12063
12064         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
12065
12066         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
12067         for null arguments.
12068
12069         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
12070         check for destroyed windows.
12071
12072 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
12073
12074         * gtk/gtkimmulticontext.c: Add a finalize method and unref
12075         the slave context there.
12076
12077         * gtk/gtkinvisible.[ch]: Make reference counting behavior
12078         identical to GtkWindow.
12079
12080 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
12081
12082         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
12083         pangox to here, so we can write them independent of rendering
12084         system, using GDK primitives.
12085
12086         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
12087         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
12088         since we have a rendering-system independent implementation in
12089         terms of draw_glyphs().
12090         
12091         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
12092         function to render a single line.
12093
12094         * gdk/x11/gdkpango.c: Move the guts of this file mostly
12095         into ../gdkpango.c, which simplifies things, since we
12096         don't have to deal with raw X gc's.
12097
12098 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
12099
12100         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
12101         get the logical attributes for a given GtkTextLine.
12102
12103 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
12104
12105         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
12106         g_locale_get_codeset() to g_get_codeset() change.
12107
12108 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
12109
12110         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
12111         descriptions.
12112
12113         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
12114         the entry.
12115
12116         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
12117         redoing (vastly simplifying) for Pango. Still needs quite
12118         a bit of work. (Size selection is currently poor. List of 
12119         predefined sizes is not a good idea, since all of these
12120         sizes won't necessarily be distinct.)
12121
12122 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
12123
12124         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
12125         CODESET results for LANG=C.
12126
12127 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
12128
12129         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
12130         which takes a stringized pango font description;
12131         ignore the older 'font' and 'fontset' declarations.
12132
12133         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
12134         field with a GdkFont derived via gdk_font_from_description(),
12135         for compatibility. (Should we just remove it entirely?
12136         Probably too much compatibility breakage, but people
12137         should be migrating to the new Pango stuff as quickly
12138         as possible.)
12139
12140 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
12141
12142         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
12143
12144 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
12145
12146         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
12147         redoing; there are some bugs in size allocation right
12148         now, the semi-existant distinction between header / day
12149         fonts was removed, but, with Pango, could actually
12150         be made functional in a nice way.
12151         
12152         * gtk/testcalender: Move calender from examples into this
12153         directory as a test program. (We really need to restrcture
12154         testgtk into a whole directory full of tests for every
12155         widget or functionality group, separated into multiple .c
12156         files.)
12157
12158 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
12159
12160         * gtk/testgtk.c (file_exists): Fix stupid typo that
12161         was keeping RC file from being loaded.
12162
12163         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
12164         RC file font code.
12165
12166 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
12167
12168         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
12169         Add function to load a GdkFont from a PangoFontDescription.
12170
12171 2000-05-29  Tor Lillqvist  <tml@iki.fi>
12172
12173         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
12174         variable should be of type GdkEventPrivate.
12175
12176 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
12177
12178         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
12179         to have any widget for the label, use a GtkLabel widget
12180         to display the text. (Based partially on a patch from
12181         Anders Carlson.)
12182
12183         (Quite a bit of code reorganization - strip 90% of the
12184         guts out of gtkaspectframe and add a single virtual
12185         func to GtkFrameClass - compute_child_allocation.)
12186
12187 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
12188
12189         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
12190         (Removed clist->row_center_offset field because caching
12191         it wasn't saving time or code, added private function
12192         _gtk_clist_create_cell_layout()).
12193
12194 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
12195
12196         * gtk/gtkaccellabel.c: Pangoized.
12197
12198         * gtk/[hv]ruler.c: Pangoized
12199
12200 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
12201
12202         * gtk/gtkfilesel.c (gtk_file_selection_init):
12203         Use gtk_clist_set_column_auto_resize() to remove need
12204         need for manual column width computations.
12205
12206 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
12207
12208         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
12209         ensuring Pango correctness, and considerably simplifying the
12210         code.
12211         
12212         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
12213
12214         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
12215         getting of numbers of lines.
12216
12217         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
12218         to the actual requested width of the lable, not to the wrap
12219         width we set.
12220
12221         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
12222
12223         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
12224           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
12225
12226         * gtk/gtktextview.c: Fix structure inheritance.
12227
12228         * gtk/gtkprogressbar.c: Pangoize.
12229
12230 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
12231
12232         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
12233         in a function.
12234
12235         * gtk/gtktextlayout.c (find_display_line_above): Fixed
12236         bug with computing line tops.
12237
12238         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
12239
12240 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12241
12242         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
12243         and y_offset coordinates to do what we need now. (The offset between
12244         buffer and layout coordinates has been reintroduced, but is a 
12245         bit different than before.)
12246
12247         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
12248         handle the adjustments ourselves, and scroll as necessary using
12249         the new gdk_window_scroll().
12250         
12251         The advantage of this is that when we are incrementally revalidating,
12252         we are essentially rearranging things around the visible portion
12253         of the screen. With the old setup, the visible portion of the
12254         screen was moved around in the layout, so scrolling and redrawing
12255         to track that caused jumping of the display. Since we now
12256         control the scrolling ourselves, we can suppress this and
12257         only redraw when things actually change.
12258
12259 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
12260
12261         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
12262         the region not just redisplay it after-all, since we store the
12263         cursors in the LineDisplay. (Ugly interactions here between
12264         GtkLayout and GtkTextBTree here.)
12265         
12266         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
12267
12268 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12269
12270         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
12271         Added function to scroll contents of a window while keeping the
12272         window constant. Works by XCopyArea or guffaw-scrolling depending
12273         on the details of how the window is set up. (guffaw-scrolling
12274         still needs to be filled in.)
12275
12276 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
12277
12278         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
12279         move the debugging that was tied to a global variable
12280         to that.
12281
12282         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
12283
12284         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
12285         validated flag, in line data instead of setting height/width to
12286         -1. This allows us to perform operations with partially invalid
12287         buffer (using the old size for invalid lines) and thus to do
12288         incremental vaidation. Keep height/width aggregates up to date
12289         when deleting text and rebalancing the tree.
12290
12291         * gtk/gtktextbtree.[ch]: Add functions validate a line
12292         (gtk_text_btree_validate_line), and to validate up
12293         to a number of pixels (gtk_text_btree_validate).
12294
12295         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
12296         that indicates that something is changed and a revalidation
12297         pass is needed. Change ::need_repaint to ::changed, and
12298         make it take old and new yranges instead of a rectangle.
12299
12300         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
12301         the line_data_destroy() function from 
12302         gtk_text_btree_add_view() to a virtual function in 
12303         GtkTextLayout
12304
12305         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
12306         since we are handling partial repaints in a different fashion
12307         now.
12308
12309         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
12310         of the selection instead of queueing a repaint on the
12311         entire widget.
12312
12313         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
12314         get_selection_bounds() down to btree, make the function
12315         in buffer a wrapper around the btree function.
12316
12317         * gtk/gtktextlayout.[ch]: Add functions to check if the
12318         layout is valid and to recompute either a range of pixels
12319         aroudn a line or a certain total number of pixels.
12320
12321         * gtk/gtktextlayout.[ch]: Cache a single line display;
12322         now that we only redraw the needed portions, the hit rate
12323         for this cache is quite high.
12324         
12325         * gtk/gtktextview.[ch]: Keep track of the first paragraph
12326         on the screen so that when re-laying-out the buffer, we can
12327         keep the same place. This requires connecting to ::value_changed
12328         on the adjustments
12329
12330         * gtk/gtktextview.[ch]: Add idle functions to revalidate
12331         the buffer after we receive an ::invalidated signal.
12332         
12333 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
12334
12335         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
12336         to max of allocation and layout size, not just to the
12337         layout size.
12338
12339         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
12340         Invalidate window so it gets redrawn properly.
12341
12342         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
12343         to mean the entire window.
12344
12345         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
12346         into public header.
12347
12348 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
12349
12350         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
12351         to get the name of a mark.
12352
12353         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
12354         to find the paragraph from a y position.
12355
12356 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
12357
12358         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
12359         nodes have width/height >= 0, not > 0.
12360
12361 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
12362
12363         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
12364         Add a size_only flag, so when we only need the size, we don't create
12365         useless appearance attributes.
12366
12367         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
12368         duplicate setting of font description.
12369
12370         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
12371
12372 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
12373
12374         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
12375         EXTRA_DIST. It does not work well when the file that
12376         everything depends on is not in the tarball.
12377
12378 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
12379
12380         * gtk/testgtk.c: Some hacks and fixes so that it basically
12381         works when not sitting in the GTK+ build tree.
12382
12383 2000-05-03  Havoc Pennington  <hp@redhat.com>
12384
12385         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12386         Properly determine the ordering of the tag root and the current
12387         line within the tree. Previous algorithm only worked if the tag
12388         root's immediate parent was the common root of both the current
12389         line and the tag root.
12390
12391 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
12392
12393         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
12394         alignment.
12395
12396         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
12397         the widget text directional dynamically.
12398
12399         * gtk/gtktextview.[ch]: Added functions to get and set default
12400         wrap mode.
12401
12402 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
12403
12404         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
12405         in cursor location computation.
12406
12407 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
12408
12409         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
12410         vadjusment values properly when layout gets smaller.
12411
12412         * gtk/gtktextview.c (need_repaint_handler): Areas being
12413         passed in are far completely inaccurate, and sometimes
12414         too small, so, for now, just queue a redraw on the
12415         whole visible region.
12416
12417 2000-04-25  Havoc Pennington  <hp@redhat.com>
12418
12419         * gtk/gtktextbtree.c (summary_destroy): new function to 
12420         destroy tag summary nodes
12421         (gtk_text_line_next_could_contain_tag): this function was 
12422         totally broken if the line passed in wasn't below the tag
12423         root. Fix it.
12424         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
12425         "wildcard" case, we have to do a linear scan. Blah.
12426         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
12427         we have to do the linear scan
12428         (tag_removed_cb): When a tag is removed from the tag table, 
12429         remove the GtkTextTagInfo node from the btree.
12430         (gtk_text_btree_spew): Implement the spew function, for 
12431         our debugging pleasure.
12432
12433 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
12434
12435         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
12436         a problem with referring to the wrong buffer.
12437
12438         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
12439
12440         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
12441         font description to gtk_style_new() - otherwise things
12442         don't work without a .gtkrc file.
12443
12444         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
12445         tags table if we create it ourself, too.
12446
12447         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
12448         it was conflicting with XKB modifiers.
12449
12450         * gtk/gtktextview.[ch]: Add simple support for 
12451         GtkIMContext.
12452
12453 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
12454
12455         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
12456         with deletion from last commit.
12457
12458 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
12459
12460         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
12461         in the context from the current locale.
12462         
12463         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
12464         context, not hardcoded value.
12465
12466         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
12467         not logical.
12468
12469 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12470
12471         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
12472         attributes - that doesn't handle partial-glyph selection
12473         properly. Instead use new pango_layout_line_get_x_ranges()
12474         functionality to draw the selection.
12475
12476         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
12477         now properly handles out-of-range coordinates.
12478
12479         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
12480
12481         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
12482         public.
12483
12484         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
12485         for paragraphs opposite to the base direction of the widget.
12486
12487         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
12488
12489         * gtk/gtktextlayout.c: Don't split segments on marks, since that
12490         causes Arabic words to reshape as you cursor through.
12491
12492         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
12493         cursor position when moving vertically with the arrow keys and
12494         scrolling with page-up/page-down. (Arrow keys save only the X,
12495         scrolling saves both X and Y.)
12496
12497         This means you can line-up / line-down or page-up / page-down
12498         without losing your place, and also that moving vertically
12499         with the cursor keys keeps the same X position, not the same
12500         character count:
12501
12502         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
12503         arrow keys move by display lines, not paragraphs.
12504
12505 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
12506
12507         * gtk/gtklayout.c: Make sure that the bin window is at least
12508         as big as the allocation. (Should we also make sure that the
12509         bin window is big enough to completely cover widget->window?)
12510
12511         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
12512         function to get the onscreen rectangle.
12513
12514         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
12515         for offsets in window coordinates.
12516
12517 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
12518
12519         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
12520         confusion.
12521
12522         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
12523         from the widget direction.
12524
12525         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
12526         Add a "direction" attribute.
12527
12528         * gtk/gtktextview.c: global s/tkxt/text_view/.
12529
12530         * gtk/testtext.c: Added long block of text in Arabic, to test out
12531         the direction attributes. (Some problems with the shaping system
12532         for arabic become obvious - like the fact the cursor splits words
12533         into unjoined pieces.)
12534
12535 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
12536
12537         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
12538
12539         * gtk/gtktextlayout.c: Fix up alignment.
12540
12541         * gtk/testtext.c: Add some tests for centering, wrapping.
12542
12543 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
12544
12545         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12546         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
12547         If we wrote GTK+-specific layout-render function this could just replace
12548         the draw_layout() operation in the vtable.
12549
12550         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
12551         pango_layout_get_cursor_pos() and use that function.
12552
12553         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
12554         is a non-static symbol.
12555
12556         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
12557         with gtk_text_btree_find_line_by_y()
12558
12559         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
12560         renderer that handles GtkTextAppearance attributes.
12561
12562         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
12563
12564           - Move the values in the style that don't affect geometry into a
12565             GtkTextAppearance structure.
12566           - Change underline to take a PangoUnderline and "font" a string
12567             representation of a font description
12568           - Add a "font_desc" attribute which takes a FontDescription structure.
12569
12570         * gtk/gtktextlayout.[ch]:
12571
12572           - Get rid of the display-line list per each line. Instead, we
12573             generate, on demand, a GtkTextLineDisplay structure which]
12574             contains a PangoLayout * and other necesary information
12575             (offsets, cursor locations) for displaying a paragraph.
12576           - Get rid of the code to wrap lines, create display chunks,
12577             etc. Instead, we just go through a paragraph and convert
12578             it into the necessary inputs to a PangoLayout.
12579           - Implement a new attribute type, GtkTextAttrAppearance. This
12580             holds a GtkTextAppearance, and is used to pass colors, 
12581             stipple, etc, through from the layout to the display without
12582             having to use lots and lots of individual attributes.
12583           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
12584             in terms of PangoLayout functions.
12585         
12586         * gtk/gtktextview.c: 
12587          
12588           - Handle passing the necessary PangoContext to the layout
12589           - Some fixups in painting to deal with the automatic backing store
12590             and offsetting of GTK+-1.4
12591           - Add a style_set handler so that the default style reacts
12592             properly to theme changes.
12593         
12594         * gtk/gtktext?*.[ch]: Random code-style fixes.
12595
12596         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
12597
12598 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
12599
12600         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
12601         in original form preparatory to Pango-ization and gdkimcontext-ization.
12602
12603 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
12604
12605         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
12606         so that we can derive from gtkimcontext in language bindings properly.
12607
12608 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
12609
12610         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
12611         Add a compose table including (almost) all the compose combinations
12612         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
12613         data in the XIM implementation.
12614
12615         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
12616         Moved functions to convert keyvalues from and to unicode here from
12617         the win32 port and made them public.
12618
12619 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12620
12621         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
12622
12623 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
12624
12625         * gtk/gtkimcontext.[ch]: Base class for new input context system
12626
12627         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
12628         the real input context implementation to be loaded from modules
12629         and switched on the fly.
12630
12631         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
12632         context that just does direct keysymbol => unicode translation.
12633
12634         * gtk/gtkentry.[ch]: Start switching editing over to using
12635         GtkInputContext. (No handling of preedit yet.)
12636
12637 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
12638
12639         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
12640         many substitutions. (klass should not be subsituted.)
12641
12642 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
12643
12644         * configure.in: Add checks for Pango
12645
12646         * configure.in docs/Makefile.am: Add test for sgml2html
12647         and allow 'make dist' without building html, but print out
12648         warnings in that case. (For making snapshots)
12649
12650         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
12651         Add Pango libraries and C flags
12652
12653         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12654         Add function (gdk_draw_layout) to draw a pango layout.
12655
12656         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
12657         for getting Pango contexts for GDK.
12658
12659         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
12660
12661         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
12662         editing.
12663
12664         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
12665         keysym => unicode translations. More languages can be added
12666         here, but real input-method support is needed.
12667
12668         * docs/Changes-1.4.txt: Added note about entry behavior.
12669         
12670         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
12671         to set the reading direction for a widget and the global direction.
12672         Add test which allows toggling the global direction. Two private
12673         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
12674
12675         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
12676           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
12677
12678         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
12679
12680         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
12681         underlining now handled by Pango.
12682
12683         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
12684         to RCStyle and Style. (Having both this and the old font name and GdkFont 
12685         is temporary.)
12686
12687         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
12688         convenience functions for creating contexts and layouts for widgets.
12689
12690         * gtk/testgtk.c: Enhance label tests with multilingual labels.
12691
12692 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
12693
12694         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
12695         titles to be active, even if they aren't visible.
12696         (gtk_clist_column_titles_passive):  Ditto.
12697
12698 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
12699
12700         * gtkmenu.c:
12701         * gtkmenu.h:
12702         * gtktypeutils.h: Spelling/grammar fixes in comments.
12703
12704 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
12705
12706         * gdk/nanox/*.h: add missing header files.
12707
12708 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
12709
12710         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
12711         send_event to TRUE.
12712         (gtk_drawing_area_size): queue a resize.
12713
12714 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
12715
12716         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
12717         the handlers, also invalidate them. bug nailed down by Karl Nelson
12718         <kenelson@ece.ucdavis.edu>.
12719
12720 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
12721
12722         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
12723         "(nil)" foundries, patch from Grigorios Magklis.
12724
12725         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
12726         on non-available fonts, based on a patch by Grigorios Magklis
12727         <maglis@cs.rochester.edu>.
12728
12729 2000-05-18  Elliot Lee  <sopwith@redhat.com>
12730
12731         * gdk/x11/gdkregion-generic.c: If a region does not have any
12732         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
12733         instead of GDK_OVERLAP_RECTANGLE_IN.
12734
12735 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
12736
12737         * gtk/gtklayout.c (gtk_layout_map): Remove references to
12738         OFFSCREEN, as it is no longer necessary.
12739
12740 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
12741
12742         * gtk/gtkcolorsel.c: Patch from David Santiago
12743         <mrcooger@cyberverse.com> to change things so that the 
12744         indicator of the active palette entry is done independently,
12745         not via the focus, since it should always be visible.
12746
12747 2000-05-17  Tor Lillqvist  <tml@iki.fi>
12748
12749         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
12750         refcount leaks as in the X11 backend.
12751
12752         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
12753         cosmetics.
12754
12755         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
12756         backend. Add _gdk_windowing_window_destroy().
12757
12758         * gtk/gtkcolorsel.c: Include correct backend-specific header.
12759         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
12760         either, but these probably do exist on nanox?)
12761         
12762         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
12763         which isn't necessarily defined by <math.h>.
12764
12765         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
12766         ancestry past GtkObject.
12767
12768         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
12769         from DLL on Win32.
12770
12771         * gtk/gtk.def: Update corresponding to recent changes.
12772
12773         * gtk/makefile.{cygwin,msc}: Updates.
12774
12775 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
12776
12777         * docs/Changes-1.4.txt: A bit of editing.
12778
12779         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
12780         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
12781         to clear the update area for the window, and clear it
12782         when hiding a window.
12783
12784         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
12785         if window destroyed.
12786
12787         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
12788
12789         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
12790         gdk_window_destroy() to the generic code, since there was a lot of 
12791         window-system-independent logic it in. Add a function:
12792         
12793          _gdk_window_destroy() 
12794
12795         to the internal API to destroy a window without unreferencing it.
12796         Add a function:
12797
12798          _gdk_windowing_window_destroy()
12799
12800         That does the windowing-system-dependent part of destroying 
12801         the window.
12802
12803 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
12804
12805         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
12806
12807 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
12808
12809         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
12810         Make gtk_widget_shape_combine_mask() keep a reference count on
12811         the pixmap since it keeps it around.
12812
12813 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
12814
12815         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
12816         leak.
12817
12818         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
12819         leak with event filters.
12820
12821 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
12822
12823         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
12824         signal handlers with the right data arguments. (Fixes
12825         some warnings when a widget was repeatedly set as a drag
12826         destination.)
12827
12828         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
12829         window so we can avoid avoid setting the DND properties on the
12830         toplevel window repeatedly.
12831
12832 2000-05-13  Tor Lillqvist  <tml@iki.fi>
12833
12834         * gdk/win32/gdkwin32.h: Define more message types missing from
12835         mingw headers.
12836
12837         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
12838         call gdk_window_destroy_notify(). It was never called. This
12839         probably meant that the GdkWindow was never freed. Thanks Owen for
12840         noticing (!).
12841
12842         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
12843         window as destroyed before calling DestroyWindow(). DestroyWindow()
12844         causes a call to the window procedure (gdk_WindowProc), which
12845         calls gdk_event_translate(), which calls
12846         gdk_window_destroy_notify(), which gets confused unless the window
12847         is set as destroyed.
12848
12849         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
12850         this function to indicate it's win32 only. Put inside #ifdef
12851         G_ENABLE_DEBUG.
12852
12853         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
12854         debugging function. (gdk_event_translate:) Add a default branch
12855         that uses the above function to print debug messages with all
12856         Windows messages symbolically.
12857
12858         * gdk/win32/gdkprivate-win32.h: Declare it, and
12859         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
12860
12861 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
12862
12863         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
12864         public header file.
12865
12866 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
12867
12868         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
12869
12870         * gtk/gtktext.c: made the adjustments no-construct args, simply
12871         provide default adjustments.
12872         (gtk_text_destroy): release adjustments.
12873
12874         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
12875         adjustment argument non-construct.
12876
12877         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
12878         instead of in finalize.
12879         (gtk_progress_get_text_from_value): 
12880         (gtk_progress_get_current_text): 
12881         (gtk_progress_set_value): 
12882         (gtk_progress_get_percentage_from_value): 
12883         (gtk_progress_get_current_percentage): 
12884         (gtk_progress_set_percentage): 
12885         (gtk_progress_configure): ensure an adjustment is present.
12886
12887 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
12888
12889         * gtk/gtkcolorsel.[hc]:
12890         * gtk/gtkcolorseldialog.[hc]:
12891         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
12892         their parent implementation, use bit fields for boolean values, don't
12893         create unused widgets, usage of glib types, braces go on their own
12894         lines, function argument alignment, #include directives etc. etc. etc..
12895
12896         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
12897
12898 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
12899
12900         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
12901
12902         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
12903         of NULL.
12904
12905         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
12906         to freed data.
12907         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
12908
12909         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
12910         to NULL when the toplevel is getting destroyed.
12911         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
12912         (gtk_menu_destroy): 
12913         (gtk_menu_init): store the information of whether we have to
12914         readd the initial child ref_count during destruction in a new
12915         GtkMenu field needs_destruction_ref_count.
12916
12917         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
12918         here, those reading: learn from my mistake! ;)
12919         in order for set_?adjustment to support a default adjustemnt if
12920         invoked with an adjustment pointer of NULL, the code read (pseudo):
12921         if (v->adjustment) unref (v->adjustment);
12922         if (!adjustment) adjustment = adjustment_new ();
12923         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
12924         now imagine the first unref to actually free the old adjustment and
12925         adjustment_new() creating a new adjustment from the very same memory
12926         portion. here, the latter comparision will unintendedly fail, and
12927         all hell breaks loose.
12928         (gtk_viewport_set_hadjustment):
12929         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
12930         after unreferencing it.
12931
12932         * gtk/gtkcontainer.[hc]: removed toplevel registration
12933         functions: gtk_container_register_toplevel(),
12934         gtk_container_unregister_toplevel() and
12935         gtk_container_get_toplevels() which had wrong semantics
12936         anyways: it didn't reference and copy the list.
12937
12938         * gtk/gtkwindow.c: we take over the container toplevel registration
12939         bussiness now. windows are registered across multiple destructions,
12940         untill they are finalized. the initial implicit reference count
12941         users are holding on windows is removed with the first destruction
12942         though.
12943         (gtk_window_init): ref & sink and set has_user_ref_count, got
12944         rid of gtk_container_register_toplevel() call. add window to
12945         toplevel_list.
12946         (gtk_window_destroy): unref the window if has_user_ref_count
12947         is still set, got rid of call to
12948         gtk_container_unregister_toplevel().
12949         (gtk_window_finalize): remove window from toplevel list.
12950         (gtk_window_list_toplevels): new function to return a newly
12951         created list with referenced toplevels.
12952         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
12953
12954         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
12955         adjustment a non-construct arg.
12956         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
12957         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
12958         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
12959
12960         * gtk/gtkrange.c: added some realized checks.
12961         (gtk_range_destroy): get rid of the h/v adjustments in the
12962         destroy handler instead of finalize. remove timer.
12963         (gtk_range_get_adjustment): demand create adjustment.
12964
12965         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
12966         we simply create them on demand now and get rid of them in
12967         the destroy handler.
12968         (gtk_viewport_destroy): get rid of the h/v adjustments in the
12969         destroy handler instead of finalize.
12970         (gtk_viewport_get_hadjustment): 
12971         (gtk_viewport_get_vadjustment): 
12972         (gtk_viewport_size_allocate): demand create h/v adjustment
12973         if required.
12974
12975         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
12976         gtk_widget_real_destroy () functionality.
12977         (gtk_widget_real_destroy): reinitialize with a new style, instead
12978         of setting widget->style to NULL.
12979
12980 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
12981
12982         * gtk/gtkcalendar.c:
12983         * gtk/gtkbutton.c: ported _get_type() implementation over to
12984         GType, either to preserve memchunks allocation facilities,
12985         or because Gtk+ 1.0 GtkTypeInfo was still being used.
12986
12987         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
12988         over. prepare for ::destroy to be emitted multiple times.
12989         removed reference tracer magic. chain into GObjectClass.shutdown()
12990         to emit ::destroy signal.
12991
12992         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
12993         fundamental.
12994
12995         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
12996         cludge.
12997
12998         * gtk/gtksocket.c:
12999         * gtk/gtkplug.c:
13000         * gtk/gtklayout.c:
13001         * gtk/gtklabel.c:
13002         * gtk/gtkargcollector.c:
13003         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
13004         not being a fundamental anymore, and to work with the new
13005         type system (nuked fundamental type varargs clutter).
13006
13007         * gtk/*.c: install finalize handlers in the GObjectClass
13008         part of the class structure.
13009         changed direct GTK_OBJECT()->klass accesses to
13010         GTK_*_GET_CLASS().
13011         changed direct object_class->type accesses to GTK_CLASS_TYPE().
13012
13013         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
13014         GType. made most of the GTK_*() type macros and Gtk* typedefs
13015         simple wrappers around macros and types provided by GType.
13016         most notably, a significant portion of the old API vanished:
13017         GTK_TYPE_MAKE(),
13018         GTK_TYPE_SEQNO(),
13019         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
13020         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
13021         GTK_TYPE_ARGS,
13022         GTK_TYPE_CALLBACK,
13023         GTK_TYPE_C_CALLBACK,
13024         GTK_TYPE_FOREIGN,
13025         GtkTypeQuery,
13026         gtk_type_query(),
13027         gtk_type_set_varargs_type(),
13028         gtk_type_get_varargs_type(),
13029         gtk_type_check_object_cast(),
13030         gtk_type_check_class_cast(),
13031         gtk_type_describe_tree(),
13032         gtk_type_describe_heritage(),
13033         gtk_type_free(),
13034         gtk_type_children_types(),
13035         gtk_type_set_chunk_alloc(),
13036         gtk_type_register_enum(),
13037         gtk_type_register_flags(),
13038         gtk_type_parent_class().
13039         replacements, where available are described in ../docs/Changes-1.4.txt.
13040         implemented compatibility functions for the remaining API.
13041
13042         * configure.in: depend on glib 1.3.1, use gobject module.
13043
13044 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
13045
13046         * TODO.xml: Various updates to current status.
13047
13048 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
13049
13050         * gtk.m4: Print out version when test succeeds.
13051
13052 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
13053
13054         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
13055         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
13056         
13057         (Original triangle color selector from Simon Budig
13058         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
13059         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
13060         Santiago <mrcooger@cyberverse.com>)
13061
13062         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
13063         out into a separate widget.
13064
13065         * gtk/testgtk.c: Add some checkbuttons for toggling palette
13066         and opacity controls.
13067
13068 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
13069
13070         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
13071         snuck in prematurely.
13072
13073 2000-05-07  Tor Lillqvist  <tml@iki.fi>
13074
13075         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
13076         had deleted a ! operator by mistake, which caused
13077         GDK_SELECTION_CLEAR events never to be generated, which caused
13078         only the first copy to the clipboard from an gtkeditable to
13079         actually cause a copy to the Windows clipboard.
13080
13081 2000-05-06  Tor Lillqvist  <tml@iki.fi>
13082
13083         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
13084         compilation, too. Current mingw gcc distributions include the
13085         necessary headers. Also the necessary IIDs are now in mingw
13086         headers/libraries, and own definitions unnecessary.
13087
13088         More hacking on OLE2 DND, still doesn't work though, and thus
13089         ifdeffed out.
13090
13091         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
13092         here, too.
13093
13094 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
13095
13096         * gdk/nanox/*: nano-X port work in progress.
13097         * gdk/simple.c: simple test for Gdk.
13098         * README.nanox: notes about the port: read this first!
13099         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
13100         with nano-X.
13101
13102 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
13103
13104         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
13105         gdk_window_clear() into common code, implement in terms of
13106         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
13107         not redirected to the backing rectangle.
13108
13109 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13110
13111         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13112         EXTRA_DIST. It does not work well when the file that
13113         everything depends on is not in the tarball.
13114
13115 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
13116
13117         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
13118         with recursion where process_updates() is called from
13119         an expose handler. (GtkTextView is highly broken in
13120         doing this, but it should work, so it is a nice test
13121         case.)
13122
13123 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13124
13125         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
13126         handle the case where updates are queued during processing of
13127         updates.
13128
13129 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13130
13131         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
13132         window is on gdk_display - use that instead of segfaulting.
13133
13134 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
13135
13136         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
13137         broken and require an empty arg, give it to them.
13138
13139 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
13140
13141         * gtk/gtklabel.h: indentation fixes.
13142
13143 2000-05-02  Tor Lillqvist  <tml@iki.fi>
13144
13145         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
13146         draw too narrow or too low arcs, they seem to fail, at least with
13147         some display drivers.
13148
13149         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
13150
13151         Large changes to the Win32 backend, partially made necessary by
13152         the changes to the backend-independent internal
13153         structures. Attempts to implement similar backing store stuff as
13154         on X11. The current (CVS) version of the Win32 backend is *not* as
13155         stable as it was before the no-flicker branch was merged. A
13156         zipfile with that version is available from
13157         http://www.gimp.org/win32/. That should be use by "production"
13158         code until this CVS version is usable. (But note, the Win32
13159         backend has never been claimed to be "production quality".)
13160
13161         * README.win32: Add the above comment about versions.
13162
13163         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
13164
13165         * gdk/gdk.def: Update.
13166
13167         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
13168         presumably be replaced by some more better mechanism as 1.4 gets
13169         closer to release shape.
13170
13171         * gdk/makefile.{cygwin,msc}: Update.
13172
13173         * gdk/win32/*.c: Correct inclusions of the backend-specific and
13174         internal headers. Change code according to changes in these. Use
13175         gdk_drawable_*, not gdk_window_* where necessary.
13176
13177         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
13178         our old DND.
13179
13180         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
13181         to interpret single characters as UTF-8. Thanks to Hans Breuer.
13182         Use correct function name in warning messages.
13183
13184         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
13185         GSourceFuncs gdk_event_prepare and gdk_event_check.
13186         (gdk_event_get_graphics_expose): Do implement, use
13187         PeekMessage. Thanks to Hans Breuer.
13188         (event_mask_string): Debugging function to print an GdkEventMask.
13189         (gdk_pointer_grab): Use it.
13190
13191         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
13192         (old) book I used claimed was Hangul actually is CJK Unified
13193         Ideographs Extension A. Also, Hangul Syllables were missing.
13194         Improve logging.
13195
13196         * gdk/win32/gdkgc-win32.c: Largish changes.
13197
13198         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
13199         g_win32_getlocale() from GLib, and not setlocale() to get current
13200         locale name.
13201
13202         * gdk/win32/gdkprivate-win32.h
13203         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
13204         gdkwin32.h, similarily as in the X11 backend.
13205
13206         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
13207         assignment was used instead of equals in if test. Thanks to Hans
13208         Breuer.
13209
13210         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
13211         the X11 version.
13212
13213         * gdk/win32/makefile.{cygwin,msc}
13214         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
13215         path to the Win32 headers that works also with the mingw compiler.
13216
13217         * gtk/gtkstyle.c: Include <string.h>.
13218
13219 2000-04-26  Havoc Pennington  <hp@redhat.com>
13220
13221         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
13222         replacing the broken gtk_label_get ()
13223
13224 2000-04-15  Havoc Pennington  <hp@pobox.com>
13225
13226         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
13227         this keeps scanner scripts from getting confused.
13228
13229         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
13230         data, rather than void
13231
13232 2000-04-15  Tor Lillqvist  <tml@iki.fi>
13233
13234         * gtk/gtkclist.c (gtk_clist_motion)
13235         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
13236         with is_hint FALSE, get x and y from the event. They used to be
13237         used uninitialised. The Win32 backend never sends motion events
13238         marked as hints. This for instance fixes the annoying file and
13239         font selector behaviour in the Win32 version.
13240
13241 2000-04-14  Tor Lillqvist  <tml@iki.fi>
13242
13243         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
13244         gtk_private_n_signals variables, they are used by some software,
13245         sigh.
13246
13247         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
13248         installation directory from the Registry, where the installer
13249         should have put it.
13250
13251 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
13252
13253         * gdk/x11/Makefile.am: Fix problem with installation directory for
13254         gdkx.h
13255
13256         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
13257         <mrcooger@cyberverse.com> so that when selecting menus with the
13258         mouse, the first item will not be selected, but when selecting
13259         with an accelerator, or navigating left-right on a menubar with
13260         the menus popped up, the first item will be selected.
13261
13262 2000-04-05  Dan Damian  <dand@dnttm.ro>
13263
13264         * configure.in: Added "ro" to ALL_LINGUAS.
13265
13266 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
13267
13268         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
13269         indentation.
13270
13271         * Makefile.am (EXTRA_DIST): Fix typo.
13272
13273         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
13274         to catch gdkconfig.h
13275
13276         * gtk/gtkitemfactory.c: Added FIXME.
13277
13278 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
13279
13280         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
13281         s/return_if_fail/return_val_if_fail/g and add a return value.
13282
13283 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13284
13285         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
13286         merge slipup.
13287
13288         * gdk/gdkinput.h: Fix missing line from merge.
13289
13290 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
13291
13292         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
13293         instead of gdkprivate.h.
13294
13295 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
13296
13297         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
13298         parent class to correctly be GtkDialogClass.
13299
13300 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
13301
13302         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
13303         toplevel windows and their immediate children by their parents,
13304         since the size of toplevel windows is out of our immediate
13305         control and we don't get any real benefit from trying to track
13306         this size for clipping.
13307
13308         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
13309         for input_only windows.
13310
13311         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
13312         to fix some hacks and make sure that we don't try to set the
13313         background of input only windows.
13314
13315 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
13316
13317         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
13318         the _really_ internal stuff, and leave gdkprivate.h for the fake private
13319         stuff that we've traditionally exposed.
13320
13321         * gdk/**.c: Use gdkinternals.h where appropriate.
13322
13323         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
13324         not include gdkprivate-x11.h, move all stuff of conceivable public
13325         interest into gdkx.h; keep all really private stuff in
13326         uninstalled header gdkprivate-x11.h.
13327
13328         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
13329         image->image_put on windows through a new function _gdk_window_draw_image()
13330         to allow us to do backing store for images. (Sort of ugly)
13331
13332         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
13333         contexts locally so that we can offset them properly when drawing 
13334         onto backing pixmaps.
13335
13336         * gdk/gdkinput.h: Reindented
13337
13338         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
13339         pixmap or color for the window, so we can properly initialize
13340         our double-buffer pixmaps, and also so that we temporarily set
13341         a background of None while scrolling.
13342
13343         * gdk/gdkregion.h: Revise region boolean operators to have an
13344         interface that is actually convenient - switch from creating new
13345         regions on every op, to "methods" that modify existing regions
13346         (A = A OP B). 3 argument forms which allow dest == src, would also
13347         be possible, but the current interfaces seem to map nicely
13348         onto what needs to be done. (There is quite a lot of region
13349         code in GDK now.)
13350
13351         * gdk/gdkregion.h: Add constructor from rectangle and a copy
13352         operator.
13353
13354         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
13355         gdkpoly-generic.h: Copy region code from Xlib, switch it over
13356         to 32 bit coordinates, modify it to be mostly GTK+ style
13357         and to have interfaces that match gdkregion.h.
13358
13359         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
13360         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
13361         create a backing pixmap and redirect all drawing to
13362         that backing pixmap until a matching gdk_window_end_paint().
13363
13364         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
13365         Create a special drawable class for GtkWindow's that 
13366         redirects the drawing to the backing pixmap as necessary
13367         and then calls the real operations in _gdk_windowing_window_class.
13368
13369         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
13370         Store invalid region for each window. Generate expose events for invalid
13371         region in an idle. This replaces both the expose compression
13372         and the redrawing queuing in GTK+. It is both more efficient and
13373         simpler than either one individually and far more so then the
13374         combination.
13375
13376         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
13377         Emulate 32 bit coordinates for windows with 16 bit coordinates
13378         by offsetting drawing, guffaw scrolling techniques and
13379         mapping/unmapping child windows as necessary.
13380
13381         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
13382         where, when invalid regions are processed, the region is stored,
13383         and if expose events come in that are detectably duplicate
13384         the processed exposes (by comparison of event serial numbers),
13385         the stored region is subtracted out of those exposes.
13386
13387         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
13388         regions newly exposed when scrolling or resizing windows.
13389         This, combined with forcing processesing of queued invalidated
13390         regions, gives nice flicker-free scrolling.
13391
13392         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
13393         invalidated regions after every scroll.
13394
13395         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
13396         emulation in GDK. Its, for all practical purposes just a
13397         GtkViewport/GtkFixed hybrid now.
13398
13399         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
13400         (16-bit) structures as necessary instead of just casting.
13401
13402         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
13403         in terms of the structures from gdkregion-generic.c, using appropriate
13404         offsets from GDK to X11 coordinates. Cache clip mask and
13405         origin and ts origin locally and only flush to the server
13406         when drawing, to avoid constantly setting and resetting these
13407         values when offsetting GC's for scrolling and backing pixmaps.
13408
13409         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
13410
13411         * gtk/gtkcontainer.c: Call process_all_updates at end
13412         of resizing to reduce flicker. (Avoids having redraw
13413         lag arbitrarily behind resize under some circumstances)
13414
13415         * gtk/gtkentry.c: Remove old backing store code, and simply take
13416         advantage of the new backing store capabilities of GDK.
13417
13418         * gtk/gtkmain.c: Simple implementation of widget backing
13419         store - simply push a paint while handling each expose.
13420         (Should really be configurable widget for widget.)
13421         
13422         * gtk/gtkwidget.c: Remove all the old complicated redraw
13423         code, and simply invalidate the GDK windows from
13424         gdk_window_queue_clear(), etc. (Sigh, so much carefully
13425         debugged complexity ... gone to the winds.)
13426
13427         Remove all the code for suppressing expose events while
13428         resizes are pending; this isn't needed since the invalid
13429         areas won't be processed until after the resizes are
13430         processed, since they are in a lower priority idle.
13431
13432 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
13433
13434         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
13435         and height of dest rectangle for non-intersecting rectangles.
13436
13437 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
13438
13439         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
13440         for GdkRectangle.
13441
13442 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
13443
13444         * gdk/gdk{events,image,private,types,window}.h
13445          gdk/x11/gdkinputprivate.h: Change all coordinates
13446          from int16 to int. Also, Change width and height from
13447          unsigned to signed to avoid all the stupid C 
13448          signedness bugs.
13449
13450 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
13451
13452         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
13453         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
13454         Add some more detailed checking.
13455
13456         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
13457         New function to retrieve the depth of a drawable.
13458
13459         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
13460         field, reorder fields to save memory. 
13461
13462 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
13463
13464         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
13465         of the background image instead of scaling the background down to
13466         a line.
13467
13468         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
13469         which temporarily set slider to wrong size.
13470
13471         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
13472         queue_clear().
13473
13474 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
13475
13476 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
13477
13478         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
13479
13480 2000-03-17  Tor Lillqvist  <tml@iki.fi>
13481
13482         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
13483         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
13484
13485         * gdk/win32/gdkfont-win32.c
13486         * gdk/win32/gdkproperty-win32.c
13487         * gdk/win32/gdkselection-win32.c
13488         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
13489         now declared such.
13490
13491 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
13492
13493         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
13494
13495 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
13496
13497         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
13498         is called without trapping X errors.
13499
13500 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
13501
13502         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
13503         way into the fontset lists.
13504
13505 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
13506
13507         * gtk/gtkthemes.h: add extern "C" scope.
13508
13509 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
13510
13511         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
13512         to make appends to the list constant. (gtk-guy-990901-0.patch)
13513
13514 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
13515
13516         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
13517         for the typename hash table.
13518
13519 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
13520
13521         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
13522         to make sure we never divide by zero. 
13523         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
13524
13525 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
13526
13527         * gtk/gtkfontsel.c: Apply patch from
13528         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
13529         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
13530
13531         Also, some cleanups in atom handling.
13532
13533 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
13534
13535         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
13536         not GtkWidget.
13537
13538 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
13539
13540         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
13541         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
13542         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
13543         more guint wrap-around bugs before going to bed.
13544
13545 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
13546
13547         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
13548         guint wrap arounds in allocation.width.
13549
13550         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
13551         process untill we fit the allocation given.
13552
13553 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
13554
13555         * gtk/gtkwidget.c:
13556         (gtk_widget_unrealize): guard widget access with ref/unref
13557         around signal emission.
13558         (gtk_widget_hide): same here, but also check its destroyed
13559         state before queueing a resize.
13560
13561 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
13562
13563         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
13564         of gtk_default_insensitive_bg as insensitive base color.
13565
13566         * gtk/gtktext.c (gtk_text_style_set): set the background color according
13567         to the widget's state.
13568         (gtk_text_realize): same here.
13569         (gtk_text_state_changed): same here.
13570         (draw_bg_rect): compare background color against base[] from
13571         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
13572
13573 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
13574
13575         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
13576         grabs are active, unless a delete event is send to the toplevel
13577         of the currently grab holding widget.
13578
13579 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
13580
13581         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
13582         debugging g_print's.
13583
13584 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
13585
13586         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
13587         ever make the scrolled-window requisition ever depend on the 
13588         visibility state of the scrollbars for the AUTOMATIC policy. 
13589         This breaks the GTK+ requisition model, and causes loops.
13590
13591 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
13592
13593         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
13594         the default font to avoid problems with XFree86-4.0 where the
13595         default charset is iso10646-1, not iso8859-1.
13596
13597 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
13598
13599         * acinclude.m4
13600         * config.guess
13601         * config.sub
13602         * ltconfig
13603         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
13604
13605         * gtk/Makefile.am: minor cosmetic consistency tweak
13606
13607 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
13608
13609         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
13610         the activate_time to 0, so that we handle a quick
13611         press/release press/release properly and don't suppress
13612         the second release. (Red Hat bug #7545)
13613
13614 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
13615
13616         * gtk/gtkctree.c (row_delete):
13617         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
13618         bugs with destruction notifier, *always* update internal
13619         structures *before* calling user code.
13620
13621 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
13622
13623         A few more fixes for bug #5487, #2051, #2677.
13624         * gtk/gtkclist.c : 
13625         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
13626         not GDK_BUTTON_PRESS.
13627         (resync_selection): resync only if selection_mode is
13628         GTK_SELECTION_EXTENDED
13629         * gtk/gtkctree.c (resync_selection): same here
13630
13631 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
13632
13633         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
13634         gdk_drag_get_selection() and gtk_menu_detach().
13635
13636         [ From Jeroen Ruigrok/Asmodai ]
13637
13638 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
13639
13640         * gtk/gtknotebook.c (gtk_notebook_size_request): 
13641         page->tab_label can be NULL.
13642
13643 2000-01-25  Havoc Pennington  <hp@pobox.com>
13644         
13645         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
13646         arg is boolean
13647
13648         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
13649
13650         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
13651
13652         * gdk/gdkproperty.c (gdk_property_get): return boolean
13653
13654         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
13655
13656         * gdk/gdkim.c (gdk_im_ready): return boolean
13657
13658         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
13659
13660         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
13661         glib clash, should fix glib)
13662
13663         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
13664         (gdk_get_show_events): return gboolean, and canonicalize 
13665         to TRUE/FALSE
13666
13667         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
13668         colormap is private
13669         (gdk_colors_alloc): gboolean whether to be contiguous
13670         (gdk_color_equal): return gboolean since we are a predicate
13671         and not a qsort() (this looks semi-wrong due to glib breakage,
13672         IMO glib should be fixed)
13673         
13674         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
13675         (gdk_get_use_xshm): return gboolean
13676         (gdk_pointer_is_grabbed): return gboolean
13677
13678         * gdk/gdk.h: Change prototypes to match all the above changes,
13679         and re-run egtk-format-protos as required.
13680
13681 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
13682
13683         * gtk/gtkctree.c (resync_selection): 
13684         * gtk/gtkclist.c (resync_selection):
13685
13686         Return immediately if clist->drag_pos < 0. This is a workaround
13687         for the corrupt state that the clist gets into when a
13688         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
13689
13690         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
13691         
13692         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
13693         variable from recent commit.
13694
13695 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
13696
13697         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
13698
13699 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
13700
13701         * gtk/Makefile.am: prefix all autogenerated source that get build in
13702         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
13703         in builddir. since we subsequently cd into srcdir for autogeneration,
13704         the paths have to be stripped from the target file names, thusly we
13705         use $(@F) as target names now.
13706         put a comment about configure.in's --disable-rebuilds option,
13707         which can be used for non-writable source directories, for development
13708         setups though, srcdir has to be *writable*.
13709
13710 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
13711
13712         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
13713           Finish the job of allowing event to be NULL.
13714           (Fixes bug #4283, reported by Chris Blizzard)
13715
13716         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
13717           things so that the cursor appears on screen, properly
13718           take into account INNER_BORDER.
13719           (Fixes bug #4754, reported by Antonio Campos)
13720
13721 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
13722
13723         * gtk/gtknotebook.c (gtk_notebook_map): Don't
13724           show the tab_label unless it itself is visible.
13725
13726           gtk/gtknotebook.c (gtk_notebook_size_request):
13727           Do a better job of making sure that the visibility
13728           of the tab label corresponds to whether it should
13729           be mapped or not.
13730
13731 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
13732
13733         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
13734           Use the requisition, not the allocation, since the
13735           allocation has not necessarily been computed yet.
13736           (Pointed out by Eugene Osintsev)
13737
13738 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
13739
13740         * gtk/gtkstyle.c (gtk_style_new): Dont' set
13741           style/base[GTK_STATE_INSENSITIVE] both to
13742           gtk_default_insensitive_bg!
13743           (Bug #2187, reported by Jonathan Blandford)
13744
13745         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
13746           Add Alt_L, Alt_R to list of invalid accelerators.
13747           (Bug #3736, reported by Vlad Harchev)
13748
13749 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
13750
13751         * gtk/gtkfilesel.c (open_ref_dir): Fix several
13752         bugs which occured after an attempt to open 
13753         invalid home directory left cmpl_state->reference_dir == NULL.
13754
13755          - completion on files in home directory didn't work
13756          - completion on an empty string caused  segfault
13757
13758          (Bug #3678, reported by Steve Ratcliffe)
13759
13760         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
13761         cut and paste error that was causing scales to
13762         be incorrectly positioned.
13763         (Bug #2956,
13764          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
13765
13766 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
13767
13768         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
13769         when checking for dcgettext, if we've found we needed
13770         it for dgettext.
13771 +
13772 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
13773
13774         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13775         queue_clear on NO_WINDOW widgets during a reparent,
13776         since at that point the window and widget heirarchies
13777         are out of sync. This stops crashing in some cases
13778         (the scrolled window reparent test, for instance), and
13779         _probably_ won't cause drawing errors.
13780
13781         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
13782         test do what it was supposed to do and be robust against
13783         window closings, etc. (Bug #2443)
13784
13785 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
13786
13787         * gtk/gtkentry.c: Fix return values on mouse events.
13788         (Bug #2686, Sky <seb_sky@yahoo.com>)
13789
13790         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
13791         (pointed out by George Lebl)
13792
13793         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
13794         (From Ettore Perazzoli  <ettore@helixcode.com>)
13795  
13796 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
13797
13798         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
13799         clicks between rows or outside calender area correctly.
13800         (Patch from Damon Chaplin)
13801
13802         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
13803         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
13804           Call destroy function when overwriting existing data. 
13805           (Pointed out by Damon Chaplin)
13806
13807 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
13808
13809         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
13810           which was causing problems on various systems with Xmu.
13811           This hasn't been needed for a very long time.
13812           (Fixes #1185 3167)
13813
13814 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
13815
13816         * gdk/gdki18n.h: Include <ctype.h> when defining
13817           gdk_isw* in terms of is* as a fallback.
13818           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
13819
13820 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
13821
13822         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
13823           realize the widget when it is size allocated!
13824           (old, old bug)
13825
13826         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
13827           Removed unused call to gdk_window_get_size() that
13828           showed up when the above was fixed.
13829
13830 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
13831
13832         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
13833           fix up widget->window when the widget is a
13834           NO_WINDOW container widget.
13835
13836 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
13837
13838         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
13839           to account for the fact that feof() does _not_ 
13840           return TRUE on errors, and thus avoid infinite loops
13841           when trying to use gdk_pixmap_create_from_xpm()
13842           on unreadable values.
13843
13844 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
13845
13846         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
13847
13848 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
13849
13850         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
13851           gdk_gc_set_dashes to take gint8 instead of gchar to
13852           make it clearer that it is _not_ a NULL terminated string.
13853
13854         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
13855           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
13856           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
13857           arguments.
13858
13859 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
13860
13861         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
13862         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
13863         background size relative to our allocation, guard against small
13864         allocations, we may have not yet been size allocated.
13865
13866 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
13867
13868         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
13869         not just version == 3. We implement all 3 + most of 4 - 
13870         (we don't support matching text/plain;charset=iso-8859-1
13871         to a dest that expects text/plain). We'll still advertise
13872         3 to be safe, but any client implementing version >= 3
13873         must interoperate with 3.
13874         
13875 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13876
13877         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
13878         background and gc members, add a warning in gtk_tooltips_set_color()
13879         indicating that this function is deprecated.
13880
13881 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
13882
13883         * docs/gtkfaq.sgml: FAQ Update:
13884           - Minor cleanups (Emmanuel, me)
13885           - New questions:
13886                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
13887                 How can I retrieve the text from a GtkMenuItem? (timj)
13888                 How do I validate/limit/filter the input to a GtkEntry? (me)
13889                 Memory does not seem to be released when I free the list
13890                         nodes I've allocated (timj)
13891
13892 2000-03-07  Tor Lillqvist  <tml@iki.fi>
13893
13894         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
13895         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
13896         for which it is no use to call GetLastError onWin9x.
13897         (gdk_other_api_failed) New function, for general error
13898         reporting without calling GetLastError.
13899         (gdk_win32_api_failed) OTOH, this function always calls
13900         GetLastError. (gdk_win32_last_error_string) Remove this function,
13901         GLib has the equivalent now.
13902
13903         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
13904         call them with function name, file name and line number in the
13905         arguments.
13906
13907         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
13908         functions.
13909         
13910         * gtk/gtk.def: Add some missing entry points.
13911
13912         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
13913         gtk_paned_set_gutter_size, which don't exist any longer, as void.
13914         
13915         Fixes by Hans Breuer:
13916
13917         * gdk/makefile.msc: Update for debugging.
13918
13919         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
13920         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
13921         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
13922         in the dash_list.
13923
13924         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
13925         the x11 backend.
13926
13927         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
13928
13929         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
13930
13931 2000-03-04  Tor Lillqvist  <tml@iki.fi>
13932
13933         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
13934         just pixel value of background colour.
13935
13936         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
13937         containing code snippet previously duplicated in a couple of
13938         places.
13939         
13940         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
13941         gdk_colormap_color.
13942
13943         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
13944         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
13945         events for autorepeated Shift, Control and Alt keys. Use
13946         gdk_colormap_color.
13947
13948         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
13949         pointer is inside the window the cursor of which we are setting,
13950         call SetCursor immediately.
13951
13952         * gdk/win32/makefile.cygwin
13953         * gtk/makefile.cygwin: If we don't have the build number stamp
13954         file, use zero.
13955
13956         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
13957         gtk_paned_set_gutter_size as empty.
13958
13959         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
13960         
13961 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
13962
13963         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
13964           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
13965           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
13966           docs/gtk_tut.sgml docs/gtk.texi TODO:
13967
13968           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
13969
13970 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
13971
13972         * gtk/gtkcalendar.c: Implement num_marked_dates,
13973           and don't emit mutiple day_selected signals on
13974           month_prev.
13975
13976 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
13977
13978         * docs/make-todo (lineno): let title and logo be configurable so
13979         that GNOME can use this script too.
13980
13981         * TODO.xml: added logourl and a title
13982
13983 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
13984
13985         * TODO.xml: Added some UI items, and an explanatory
13986         comment at the top of the file.
13987
13988 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
13989
13990         * TODO.xml: some updates, added abunch of new entries.
13991         a note for those fiddeling with this file, when done
13992         with it, invoke:
13993         $ ./docs/make-todo TODO.xml >/dev/null
13994         and correct output errors before comitting changes.
13995
13996 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
13997
13998         * TODO.xml: Added XML-structured TODO file.
13999         * docs/make-todo: python script to turn TODO.xml into
14000           pretty XML output. 
14001
14002 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
14003
14004         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
14005         the function to let it draw the seven dots, instead of the old,
14006         much maligned, method.
14007         (draw_dot): New function to draw a dot.
14008
14009         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
14010         to draw the handle inside the border width as opposed to outside.
14011         Use paint function instead of gdk_draw_point.
14012
14013         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
14014         to draw the handle inside the border width as opposed to outside.
14015         Use paint function instead of gdk_draw_point.
14016
14017         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
14018         Change indenting to be more GTK like.
14019
14020 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
14021
14022         * docs/gtk_tut.sgml: New section on GtkCalendar
14023         * examples/calendar: Update example code
14024
14025 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
14026
14027         * docs/gtkfaq.sgml: FAQ Update
14028
14029 2000-02-19  Anders Carlsson  <andersca@gnu.org>
14030
14031         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
14032         to prevent the scroll event to be propagated upwards.
14033
14034 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14035
14036         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
14037         OwnerGrabButtonMask from button entries for
14038         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
14039
14040         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
14041         to the event mask (which will result in button/press release
14042         being added to the event mask on Unix) so scrolling works
14043         for layouts in scroll windows.
14044
14045         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
14046
14047         Patch from Anders Carlsson  <andersca@gnu.org> to add
14048         a scroll event.
14049
14050         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
14051         scrolling to the "Test Scrolling" part of testgtk.
14052  
14053         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
14054  
14055         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
14056         it against GDK_SCROLL.
14057  
14058         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
14059         way of mouse wheel scrolling.
14060  
14061         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
14062  
14063         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
14064  
14065         * gtk/gtkmain.c: Removed previous mouse wheel hack.
14066  
14067         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
14068         gdk_event_mask_table.
14069  
14070         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
14071         GdkEventScroll handler.
14072  
14073         * gdk/gdkevents.h: Added GdkEventScroll structure.
14074  
14075 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
14076
14077         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
14078         and Anders Carlsson to change the Paned widgets so that they
14079         can be dragged from anywhere along the length. Also change
14080         the way that this is drawn to make this apparent.
14081
14082         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
14083         from George Lebl to check that option_menu->menu is present
14084         before getting history.
14085
14086 2000-02-14  Tor Lillqvist  <tml@iki.fi>
14087
14088         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
14089         before the assertion for non-NULL segment list.
14090
14091         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
14092         Seems that pattern brushes *must* be 8x8 pixels! At least on my
14093         machine, but it might be display driver dependent. Sigh, so make
14094         sure the stipple is that size. Does Windows suck or what?
14095
14096         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
14097         places.
14098
14099 2000-02-13  Havoc Pennington  <hp@pobox.com>
14100
14101         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
14102         refcount to 1
14103         (gdk_cursor_new): init refcount to 1
14104
14105         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
14106
14107 2000-02-13  Tor Lillqvist  <tml@iki.fi>
14108
14109         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
14110         so that we don't have to do unnecessary settings to the HDC.
14111
14112         * gdk/win32/gdkdrawable-win32.c
14113         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
14114         gdk_gc_predraw.
14115
14116         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
14117         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
14118         GDI paths, call WidenPath to get the outline of the stroken path,
14119         and then fill the outline (with the brush that was built from the
14120         stipple).
14121
14122         * gdk/win32/gdkgc-win32.c: Factor out common code from
14123         _gdk_win32_gc_new and gdk_win32_gc_set_values into
14124         gdk_win32_gc_values_to_win32values. Use correct colour for
14125         SetBkColor() (Until now the code actually used a random colour in
14126         the call to SetBkColor()... but that didn't show up as not many
14127         GDI APIs use the background colour. Pattern (opaque stippled)
14128         brushes do.)
14129
14130         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
14131         gdk_win32_api_failed): New functions for error logging.
14132
14133         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
14134         WIN32_API_FAILED to call them, passing function or file name and
14135         line number.
14136
14137         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
14138
14139         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
14140         GdkColor for foreground and background in GdkGCWin32Data.
14141
14142         * gdk/makefile.cygwin: Link in the resource object separately.
14143
14144         * gdk/win32/rc/gdk.rc
14145         * gtk/gtk.rc (New file)
14146         * gdk/win32/makefile.cygwin
14147         * gtk/makefile.cygwin: Update build number in DLLs automatically,
14148         as in GLib.
14149
14150 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
14151
14152         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
14153         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
14154         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
14155         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
14156         parameters given and cursor->ref_count. coding style fixups.
14157
14158         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14159         not GtkWidget.
14160         
14161         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
14162         fix up widget macros and add _GET_CLASS() variant.
14163         
14164         * gtk/*.c: some GtkType fixups.
14165
14166 2000-02-09  Tor Lillqvist  <tml@iki.fi>
14167
14168         * gdk/win32/gdkproperty-win32.c
14169         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
14170         were reversed.
14171
14172 2000-02-04  Tor Lillqvist  <tml@iki.fi>
14173
14174         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
14175         g_filename_to_utf8 to convert the font names Windows gives us from
14176         whatever is the default codepage to UTF-8.
14177         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
14178         in the other direction.
14179
14180         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
14181         error in debugging output.
14182
14183 2000-02-02  Tor Lillqvist  <tml@iki.fi>
14184
14185         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
14186         and height parameters to gdk_window_clear_area(). Not minus one.
14187
14188 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
14189
14190         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
14191         checks if the widget passed to gtk_drag_get_data() was not the
14192         dest widget.
14193
14194 2000-02-01  Tor Lillqvist  <tml@iki.fi>
14195
14196         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
14197         g_filename_from_utf8 functions (which were added a moment ago to
14198         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
14199         size buffers.
14200
14201         gtk_file_selection_get_filename returns the filename in the C
14202         runtime encoding. It calls g_filename_from_utf8, but copies the
14203         returned string to a static buffer, which is returned. I think
14204         this is better than returning the result from g_filename_from_utf8
14205         directly, which would mean all apps that use it would have to free
14206         the return value. Or should this function care about this issue at
14207         all? Maybe a new function with clearly defined semantics.
14208
14209         * gtk/gtkfilesel.h: Add comment about
14210         gtk_file_selection_get_filename returning the filename in the C
14211         runtime's encoding.
14212
14213         * README.win32
14214         * gdk/gdk.def
14215         * gdk/makefile.{cygwin,msc}
14216         * gtk/gtk.def: Updates.
14217
14218         * gdk/gdkcursor-win32.c: Initialise refcount.
14219
14220 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
14221
14222         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
14223
14224 2000-01-30  Havoc Pennington  <hp@pobox.com>
14225
14226         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
14227         destroy
14228
14229         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
14230
14231         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
14232         implemented in platform-specific code
14233
14234         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
14235
14236         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
14237         underscore in front
14238
14239         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
14240         put an underscore in front
14241
14242         * gdk/gdkcursor.c: new file, implements
14243         gdk_cursor_ref/gdk_cursor_unref
14244
14245         * gdk/gdkcursor.h: Refcount GdkCursor
14246
14247         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
14248
14249 2000-01-29  Tor Lillqvist  <tml@iki.fi>
14250
14251         * gdk/gdkwindow.h
14252         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
14253
14254 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14255
14256         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
14257         structures to properly inherit from GtkWidget not GtkBin.
14258
14259 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
14260
14261         * gtk+.spec.in: Added lib/gtk+/include/* to %files
14262         (bug #5178 - Peter Wainright)
14263         
14264         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
14265         so that it will be installed.
14266         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
14267
14268 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
14269
14270         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
14271         for the GtkStyleClass vtable const.
14272
14273         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
14274         take a const string argument like GtkTranslateFunc. This will
14275         require changes in use code.
14276
14277 2000-01-19  Tor Lillqvist  <tml@iki.fi>
14278
14279         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
14280         semantics (to mimic the X11 backend, which just calls XClearArea)
14281         is to check for zero width (and height), and in that case use the
14282         window's width minus x (height minus y). This fixes for instance
14283         some redraw problems with gtkclist, which were easily noticeable
14284         in the gtk file selection widget.
14285
14286         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
14287         windows.
14288
14289 2000-01-13  Tor Lillqvist  <tml@iki.fi>
14290
14291         * configure.in
14292         * gdk/Makefile.am
14293         * gdk/x11/Makefile.am
14294         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
14295         (bug #5177).
14296         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
14297         out later.
14298
14299 2000-01-09  Tor Lillqvist  <tml@iki.fi>
14300
14301         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
14302         WM_MOVE for iconified or invisible windows. This fixes various
14303         problems when minimising windows. Thanks to Bernd Herd.
14304
14305 2000-01-05  Tor Lillqvist  <tml@iki.fi>
14306
14307         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
14308         backend's draw_lines method, not draw_points.
14309
14310 2000-01-02  Tor Lillqvist  <tml@iki.fi>
14311
14312         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
14313         before Owen's reorganisation: Don't have queued_events and
14314         queued_tail statics in this file, but use gdk_queued_events and
14315         gdk_queued_tail. This makes exposure event compression work again.
14316
14317         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
14318         seem to be needed?
14319
14320 1999-12-30  Tor Lillqvist  <tml@iki.fi>
14321
14322         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
14323         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
14324         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
14325         doesn't do anything.
14326
14327         * gdk/gdk.def: Add gdk_xid_table_insert.
14328
14329         * gdk/win32/gdkprivate-win32.h
14330         * gdk/win32/gdkevents-win32.c
14331         * gdk/win32/gdkinput-win32.c
14332         
14333         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
14334         extension_events field in the GdkWindowWin32Data struct. Use only
14335         the extension_events field in GdkWindowPrivate. Previously one was
14336         set, and the other one tested, which broke tablet
14337         functionality. Thanks to Keishi Suenaga for pointing this out.
14338
14339 1999-12-18  Tor Lillqvist  <tml@iki.fi>
14340
14341         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
14342         When handling a single character (text length == 1), don't handle
14343         it as if it was UTF-8.
14344
14345 1999-12-11  Tor Lillqvist  <tml@iki.fi>
14346
14347         * Makefile.am: Distribute README.win32.
14348         
14349         * gdk/Makefile.am
14350         * gdk/win32/Makefile.am: Distribute Win32 files.
14351
14352         * gdk/makefile.msc: New file.
14353
14354         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
14355         after label).
14356
14357         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
14358         gdk_error_code as GDKVAR, as they are referred outside GDK.
14359
14360         * gdk/win32/makefile.msc: Update.
14361
14362         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
14363         tweaks. Check only if at least one of those Unicode subrange bits
14364         we care for is set. If no code page bits are set, guess (wildly)
14365         based on the charset.
14366
14367         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
14368
14369         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
14370         non-NULL.
14371
14372         * gtk/gtkdnd.c
14373         * gtk/gtklayout.c
14374         * gtk/gtkplug.c
14375         * gtk/gtkselection.c
14376         * gtk/gtksocket.c
14377         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
14378         appropriate. There must be a cleaner way to handle this?
14379
14380         * gtk/gtkrc.c: Must include windows.h on Win32.
14381
14382         * gtk/testgtk.c: No need to include gdkx.h.
14383
14384         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
14385
14386 1999-12-07  Tor Lillqvist  <tml@iki.fi>
14387
14388         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
14389         the rbearing is set to the same as the width, but this should be
14390         fixed.
14391
14392 1999-12-06  Tor Lillqvist  <tml@iki.fi>
14393
14394         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
14395         function. If Windows doesn't tell us what Unicode subranges a font
14396         covers, guesstimate based on the codepages it covers. This will
14397         hopefully help those Windows versions or fonts that don't give us
14398         any useful Unicode subrange information with GetTextCharsetInfo.
14399         Call this function in gdk_font_load_internal.
14400
14401         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
14402         minor changes.
14403
14404 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
14405
14406         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
14407         New function, long needed.
14408
14409 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
14410
14411         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
14412         only_if_exists argument of gdk_atom_intern to
14413         bool.
14414
14415 1999-11-25  Tor Lillqvist  <tml@iki.fi>
14416
14417         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
14418         Fix two copy&paste errors.
14419
14420         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
14421         win32 has changed.
14422
14423         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
14424         GdkWin32SingleFont struct.
14425
14426         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
14427         subranges of loaded fonts. Clear font signature first, in case
14428         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
14429         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
14430
14431         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
14432         Unoffset clip region.
14433
14434 1999-11-23  Tor Lillqvist  <tml@iki.fi>
14435
14436         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
14437         event->any.window before calling filter functions.
14438
14439 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
14440
14441         * gtk/gtkgamma.h: Adapt cast macros to standard.
14442
14443 [ Merges from 1.2 ]
14444
14445 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
14446
14447         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
14448         If translation does not include a '/', use entire
14449         translation instead of crashing.
14450
14451 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
14452
14453         * docs/gtk_tut.sgml:
14454         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
14455
14456 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
14457
14458         * gtk/gtkselection.c (gtk_target_list_remove): Use
14459         g_list_remove_link, not g_list_remove.
14460
14461         [ From Geert Bevin <gbevin@thunderstorms.org> ]
14462         
14463 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
14464
14465         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
14466         statement upon unselection (how the heck did that slip in?).
14467
14468 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
14469
14470         * gtk/gtktext.c (gtk_text_freeze): 
14471         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
14472         in frozen state (and aparently crashes). patch provided by Anders
14473         Melchiorsen <and@kampsax.dtu.dk>.
14474
14475 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
14476
14477         * fix insensitive default/focus widget activation,
14478         reported by Matt Goodall <mgg@isotek.co.uk>.
14479
14480         * gtk/gtkwindow.c (gtk_window_key_press_event): 
14481         (gtk_window_activate_default):
14482         (gtk_window_activate_focus):
14483         return handled=FALSE for actiavtion of insensitive default
14484         widgets. return handled=TRUE for activation of insensitive
14485         focus widgets. don't activate in either case.
14486
14487 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
14488
14489         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
14490         and $glib_cflags to match library order and in the
14491         theory that an old version of GLib is more likely to
14492         be in the include directory for X then vice-versa.
14493         (Bug #2776)
14494
14495 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
14496
14497         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
14498         to determine the locale for fontsets, not LC_MESSAGES;
14499         the user may want English messages with a handling
14500         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
14501         will still be broken) (Bug #2891)
14502
14503 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
14504
14505         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
14506
14507 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
14508
14509         * gtk/gtkrc.ko: Changed the Korean default fontset.
14510
14511 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
14512
14513         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
14514         where when scrolling to the left or top double exposes
14515         were done, causing major slowdowns.
14516
14517 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
14518
14519         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
14520         names to lowercase and alphanumeric, before looking
14521         them up.
14522
14523         * gtk/Makefile.am: Install codeset variant gtkrc files
14524         with normalized names.
14525
14526 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
14527
14528         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
14529         popup menus when the menu is already visible, but its parent
14530         is still hidden, (happens after tornoff window got hidden).
14531
14532 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
14533
14534         * gtk/Makefile.am (install-data-local): Fix
14535         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
14536         deleted, causing error messages on install.
14537
14538 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
14539
14540         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
14541         the handle as well, since we now sometimes ignore
14542         exposes on the handle while resizing.
14543
14544 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
14545
14546         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
14547         extra g_free introduced in one of the last one or two 
14548         commits.
14549
14550 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
14551
14552         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
14553         consistent, put each style that a gtkrc.* file creates
14554         in a unique namespace, remove old files before installing.
14555
14556 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
14557
14558         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
14559         gtk_rc_init is called multiple times. (Yes, people who
14560         do that have bugs in their code.)
14561
14562 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
14563
14564         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
14565         Remove it since it's generated by the Makefile anyway
14566
14567 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
14568
14569         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
14570         device->info.axes for core pointer.
14571
14572 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
14573
14574         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
14575         idle_id, to deal with obsolete, broken C libraries.
14576
14577 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
14578
14579         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
14580         allocation->x/y twice!
14581
14582         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
14583         consistent with gtk_vscale_pos_trough().
14584
14585 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
14586
14587         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
14588         be queueing a resize on a toplevel container between
14589         the time we show it and when we map it. So, we need
14590         to test GTK_WIDGET_VISIBLE() for toplevels, and only
14591         use GTK_WIDGET_DRAWABLE() for child windows.
14592
14593 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
14594
14595         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
14596         (fixes bug #2144)
14597
14598 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
14599
14600         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
14601         container DRAWABLE (instead of VISIBLE), so we don't queue
14602         resizes on non-toplevel containers.
14603
14604 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
14605
14606         * gtk/gtkselection.[ch]: Make the data argument
14607         const guchar *.
14608
14609 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
14610
14611         * gtk/gtkwindow.c: Try to behave sensibly if 
14612         the focus widget is the window itself. (Should
14613         we allow this at all?)
14614
14615 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14616
14617         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
14618         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
14619         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
14620         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
14621         in prototypes and implementations consistent (Tomas Ogren).
14622
14623         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
14624         before the widget is unparented (reported by damon).
14625
14626         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
14627         since we provide unsigned data anyways.
14628
14629 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
14630
14631         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
14632         the call to gtk_tooltips_layout_text() until later.
14633
14634         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
14635         Call gtk_widget_ensure_style() before using the style.
14636
14637 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
14638
14639         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
14640         for old widgets that don't propagate draws to all
14641         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
14642
14643 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
14644
14645         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
14646         for a redraw but just the widget that requested the resize.
14647
14648 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
14649
14650         * gtk/gtkcontainer.c: added new widget level method
14651         gtk_container_set_reallocate_redraws() and a GtkContainer flag
14652         reallocate_redraws : 1 to reflect the setting, exported this through
14653         the argument system as a boolean ::reallocate_redraws.
14654
14655         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
14656         on the widget because the allocation changes, do so as well for
14657         widget->parent if the parent has reallocate_redraws set to TRUE.
14658         with that containers requesting reallocation redraws get automatically
14659         redrawn if their children changed allocation (this unfortunately
14660         affects also other children that didn't change allocation, but we
14661         cannot work around that before 1.3).
14662
14663 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14664
14665         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
14666         _and_ height are >0 (not _or_).
14667
14668         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
14669         instead of gtk_container_queue_resize(), which is a core gtk internal
14670         function (must have been on crack when i queued that).
14671
14672         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
14673         we can check more reliably if we want to discard expose events.
14674         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
14675         flag.
14676         
14677         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
14678         we simply trust these events. for deciding whether to discard exposes,
14679         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
14680         
14681 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
14682
14683         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14684         queues of areas that are completely off screen.
14685
14686         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
14687         logic for handleboxes.
14688
14689         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
14690         check on width/height.
14691
14692 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
14693
14694         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
14695         we are fine with using $@ the way we do (if we actually encounter
14696         brokeness with $@ in VPATH builds because of additional path prefixes,
14697         we need to use $(@F) actually).
14698
14699 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
14700
14701         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
14702         short lived bugs, that would allow language bindings to do surgeries
14703         to our guts.
14704
14705 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
14706
14707         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
14708         where comparison was being done against an uninitialized
14709         value causing intermittant results depending on
14710         compiler flags. Also make it clearer that we aren't
14711         ever initializing the child as 0x0 (though this will
14712         be caught in gtk_widget_size_allocate())
14713
14714 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
14715
14716         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
14717         gtk_window_unset_transient_for() call after we do checks
14718         involving the old transient parent.
14719         [ From Lance Capser <lmc@cyberhighway.net> ]
14720
14721 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
14722
14723         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
14724         an empty file.
14725
14726 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
14727
14728         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
14729         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
14730
14731 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
14732
14733         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
14734         `$@' is valid only in the build dir, not after we've done 
14735         `cd $srcdir'.  Also use `test -f' instead of less portable
14736         `test -e'.
14737
14738 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
14739
14740         * gtk/gtktext.c (correct_cache_insert): Rewrite
14741          for simplicity, and hopefully correctness.
14742          (Fixes bug #1322, which was a segfault when
14743           on some insertions with the properties around
14744           the insertion set up just wrong.)
14745
14746         * gtk/gtktext.c (gtk_text_adjustment): When we receive
14747          a "changed" signal, clamp the new value to the adjustment
14748          bounds to avoid segfaulting if someone tries to change
14749          the adjustment to a bogus value. (Bug #1795)
14750
14751 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14752
14753         * gtk/gtkmain.c: Ignore unexpected destroy notifies
14754         for children, for toplevel windows handle them
14755         like delete_event.
14756
14757         * gtk/gtkplug.c: Add an unrealize handler so that
14758         we unref plug->socket_window when we are done
14759         with it.
14760
14761 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
14762
14763         * gtk/gtktext.c (clear_area): Fix stupid signedness
14764          problem that was causing background to sometimes
14765          be misaligned.
14766
14767 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
14768
14769         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
14770         
14771         * gtk/gtkmenu.c (gtk_menu_position): Make
14772          sure we never position menus with negative x, y,
14773          since gtk_widget_set_uposition() can't handle that.
14774
14775         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
14776          Modify the positioning code a bit so that we always
14777          put the top-left corner onscreen. (This is for
14778          UI reasons, gtk_menu_position() now takes care of
14779          gtk_widet_set_uposition() brokeness.)
14780
14781 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
14782
14783         * gtk/Makefile.am: fixed up things for -jx, x > 1.
14784
14785 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
14786
14787         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
14788           RC style that is passed in. The lack of the ref
14789           before was a bug. If people worked around this
14790           bug, this will introduce a slight memory leak
14791           in their code. The code should typically look like:
14792
14793             rc_style = gtk_rc_style_new ();
14794             [...]
14795             gtk_widget_modify_style (widget, rc_style);
14796             gtk_rc_style_unref (rc_style);
14797
14798         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
14799           the style if it was already set.
14800
14801         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
14802           style if it was set before.
14803
14804 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14805
14806         * gtk/testgtk.c (main): Add a check to see if we
14807           are being run from the correct directory and
14808           to quit nicely if we are not.
14809
14810         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
14811           static.
14812
14813 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
14814
14815         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
14816
14817         * gtk/gtkwindow.c:
14818         queue resizes unconditionally (gtk_widget_queue_resize will figure
14819         what to do if the window is not realized).
14820         (gtk_window_move_resize): only recenter the window
14821         for GTK_WIN_POS_CENTER_ALWAYS.
14822         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
14823         the same way as GTK_WIN_POS_CENTER.
14824
14825 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
14826
14827         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
14828         with (!(info->last_flags & GDK_HINT_POS)) instead of
14829         (!info->last_flags & GDK_HINT_POS).
14830
14831         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
14832         new_height unconditionally, because we use these values even if
14833         !default_size_changed && !hints_changed.
14834         comented the (default_size_changed || hints_changed) case with
14835         respect to resize rejects from the window manager.
14836
14837         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
14838         in the zvt condition hack, since this includes the window hints, set
14839         the hints after the handling_resize case.
14840
14841         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
14842         window is initially shown with to the geometry.
14843
14844 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
14845
14846         * gtk/gtkwindow.c (gtk_window_move_resize):
14847         s/size_changed/default_size_changed/g so i know what's
14848         really going on (frying brain on smaller flame now).
14849
14850 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
14851
14852         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
14853         we have size_changed upon handling_resize. this is a gross
14854         workaround for the broken zvt widget and should be removed in
14855         1.3 again (search for FIXME).
14856         Owen provided an accurate comment for this:
14857
14858         /* We could be here for two reasons
14859          *  1) We coincidentally got a resize while handling
14860          *     another resize.
14861          *  2) Our computation of size_changed was completely
14862          *     screwed up, probably because one of our children
14863          *     is broken. It's probably a zvt widget.
14864          *
14865          * For 1), we could just go ahead and ask for the
14866          * new size right now, but doing that for 2)
14867          * might well be fighting the user (and can even
14868          * trigger a loop). Since we really don't want to
14869          * do that, we requeue a resize in hopes that
14870          * by the time it gets handled, the child has seen
14871          * the light and is willing to go along with the
14872          * new size. (this happens for the zvt widget, since
14873          * the size_allocate() above will have stored the
14874          * requisition corresponding to the new size in the
14875          * zvt widget)
14876          *
14877          * This doesn't buy us anything for 1), but it shouldn't
14878          * hurt us too badly, since it is what would have
14879          * happened if we had gotten the configure event before
14880          * the new size had been set.
14881          */
14882
14883 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
14884
14885         * gtk/gtkrc.c: deal properly with the fact that RC
14886           style lists may include rc styles more than once.
14887
14888         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
14889           unused static function.
14890
14891         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
14892           stack of directories of RC files currently being
14893           parsed and implicitely add them to pixmap path.
14894           
14895           This fixes a bug where the directory would get
14896           appended then overwritten by pixmap_path declarations.
14897
14898           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
14899
14900         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
14901           theme's exit function. (Patch from Peter Wainwright,
14902           bug #1454)
14903
14904         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
14905           Add a destroy() handler to take care of removing
14906           group for menu item. (Fixes bug #1197)
14907
14908         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
14909           in warning message.
14910
14911 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
14912
14913         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
14914         roundtrip to figure window's width and height, since we know that
14915         anyways from widget->allocation.
14916
14917 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
14918
14919         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
14920           the hints after we request the new size.
14921
14922 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
14923
14924         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
14925           GTK_WIDGET_REALIZED() assertion - we can compute the
14926           hints before we are realized.
14927
14928         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
14929           hint changing so that we have a value of hints_changed
14930           when we decide whether to constrain the window size.
14931
14932         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
14933
14934         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
14935         change back to G_MAXINT.
14936
14937 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
14938
14939         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
14940         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
14941         contain uncluttered values.
14942         (gtk_window_compute_hints): simply assert that window is realized
14943         and that geometry_info is valid, since we rely on this anyways.
14944         (gtk_window_constrain_size): major cleanups to the code.
14945         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
14946         for the base size, instead of the minimums. use 32767 as max width
14947         and height (like in gtkwindow.c) instead of G_MAXINT.
14948
14949 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
14950
14951         * cleaned up the GtkContainer.need_resize flag handling mess, we
14952         only need to force resize requests when we were prematurely
14953         realized, or our widget tree was modified when we were temporarily
14954         hidden. handling these cases directly upon showing the window (i.e.
14955         while the GdkWindow is still unmapped) avoids the need to wait for
14956         a configure event response and therefore makes the GUI more snappier
14957         and avoids blank windows during the roundtrip.
14958
14959         * gtk/gtkwidget.c:
14960         (gtk_widget_hide): 
14961         (gtk_widget_show): don't queue resizes on toplevels, they know how
14962         to deal with matters.
14963
14964         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
14965         flag directly for not visible resize containers and spare us unecessary
14966         signal emissions.
14967
14968         * gtk/gtkwindow.c:
14969         (gtk_window_realize): if we need to enforce premature size allocation,
14970         queue a container resize so we are correctly resized later on.
14971         (gtk_window_init):
14972         (gtk_window_size_request):
14973         don't freak around with the ->need_resize flag,
14974         gtk_container_queue_resize() will care about that.
14975         (gtk_window_show):
14976         handle initial resizing issues here, we can handle matters better in
14977         this place, especially since we know that our GdkWindow is still
14978         unmapped.
14979         (gtk_window_move_resize):
14980         don't care about ->need_resize at all.
14981         handle size changes properly that occoured while we waited for a
14982         configure event.
14983
14984 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
14985
14986         * gtk/gtkwidget.c (gtk_widget_set_uposition):
14987         * gtk/gtkwindow.[hc] (gtk_window_reposition):
14988         Move the hint setting code from gtk_widget_set_uposition
14989         to here; set the hints so that we respect any previously
14990         set geometry hints.
14991
14992         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
14993         change the window hints here or move the window here,
14994         let that happen in gtk_window_move_resize().
14995
14996 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
14997
14998         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
14999         to already queued resizes (and therefore redraws) on a widget, check
15000         its anchestry as well.
15001
15002         * gtk/gtkcontainer.c:
15003         (gtk_container_queue_resize): clear resize widgets for resize
15004         containers before aborting prematurely. this is especially important
15005         for toplevels which may need imemdiate processing or their resize
15006         handler to be queued.
15007         (gtk_container_dequeue_resize_handler): added new internal function for
15008         gtkwindow.c.
15009
15010         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
15011         configure event, take possible changes in window position into account
15012         as well.
15013         if we request a new window size, queue up a resize handler that will
15014         last until the configure event response arrives.
15015         combined the ->need_resize case (initial show) with the general size
15016         (hints) changed case and added even more comments.
15017         if !auto_shrink, only revert to the old allocation if the new size
15018         is smaller than the current allocation.
15019
15020 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
15021
15022         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
15023                            gtk_window_set_geometry_hints
15024                            gtk_window_set_default_size):
15025         When hints are set, queue a resize so that the hints will
15026         be eventually reset on the toplevel.
15027
15028         * gtk/gtkwindow.c (gtk_window_show): Use
15029         gtk_window_compute_default_size(). Clear the need_resize flag
15030         on the initail map so that we don't unnecessarily trigger the
15031         resize code.
15032
15033         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
15034         into separate functions. Compare the hints we are setting
15035         with what we set last time so that we can accurately
15036         tell when we need to reset the hints.
15037
15038         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
15039         function to figure out the size from requisition
15040         and default_size.
15041
15042         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
15043         from fvwm to constrain a size to the geometry hints.
15044
15045         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
15046         to compare two sets of geometry hints.
15047
15048         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
15049         from gtk_window_set_hints(), just compute the hints,
15050         don't set them.
15051
15052         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
15053         code from gtk_window_move_resize() to separate function,
15054         rationalize a bit.
15055
15056 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
15057
15058         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
15059         structure into a new private structure.
15060
15061         * gtkrc.c: Split GtkRcStyle into public/private.
15062         In the private part, add a list of pointers to the
15063         RcStyle lists this RcStyle participates in.
15064
15065         * gtkrc.c: When a RcStyle is free, remove all
15066         lists referencing it from the 
15067         realized_style_ht hash, and free those lists.
15068         
15069         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
15070         gtk_rc_init(), since that adds the default styles
15071         to the list of parsed RC files again.
15072
15073         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
15074         
15075 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
15076
15077         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
15078         checks that ensure that a widget's allocation is at least 1 in width
15079         and height. (GNOME note: this doesn't affect old panel code anymore,
15080         because GtkSocket will request width and height of at least 1 since
15081         Fri Jul 23).
15082
15083         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
15084         allocated yet (happens if the user realizes the window prematurely),
15085         size request and allocate it.
15086         (gtk_window_size_allocate): guard against guint underflows.
15087
15088 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
15089
15090         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
15091         in gtk_built_sources, so gtk.defs gets built prior to all other
15092         sources.
15093
15094 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15095
15096         * gtk/Makefile.am:
15097         invoke indent on gtkmarshal.*. 
15098         rewrote source generation rules, use COPYING as oldest source tag for
15099         a piggyback rule to generate all sources from (don't touch it ;).
15100         major cleanups, strip spaces on build rules for GNU Make.
15101
15102         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
15103         source and target files from commandline arguments. don't invoke indent.
15104
15105 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15106
15107         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15108         notebook after switch to avoid drawing problems.
15109         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15110         
15111         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15112         show them instead. 
15113         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15114
15115 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15116
15117         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15118         notebook after switch to avoid drawing problems.
15119         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15120         
15121         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15122         show them instead. 
15123         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15124
15125 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
15126
15127         * gtk/gtkwindow.c:
15128         we use window->need_resize from configure_event now, to indicate that
15129         the gtkwindow should keep its allocation (e.g. because the user resized
15130         the window through window manager handles). resize_count is now reliably
15131         used to figure whether we got the allocation we requested from the
15132         window manager.
15133         configure events get queued as resizes now, the real stuff (size
15134         computation and allocation) now only goes on in gtk_window_move_resize().
15135         GtkWindow's requisition now contains its *real* requisition (like all
15136         other widgets), *not* taking usize into account.
15137         geometry_info->last_{width|height} is now updated from set_hints() only
15138         so it always contains the last hints we set for the window manager.
15139         made some event handlers return TRUE instead of FALSE.
15140         the overall code should be much more straight forward now, and the
15141         significant code portions are accompanied by comments now.
15142         (gtk_window_set_hints):
15143         removed requisition argument and made it
15144         fetch the requisition through gtk_widget_get_child_requisition.
15145         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
15146         does that now.
15147         (gtk_window_show):
15148         ensure that the widget is realized before calling 
15149         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
15150         ensure that we got properly size requested and allocated before
15151         realization.
15152         (gtk_window_configure_event):
15153         ignore plain window moves, or reallocate the widget tree through the
15154         resize queue otherwise.
15155         (gtk_window_move_resize):
15156         mostly rewrote this function to figure window manager hints more
15157         reliably, coalesce window moves and resizes to reduce configure events
15158         and do actuall size allocations.
15159
15160 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15161
15162         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
15163         that have a resize pending, because a redraw is already queued for them.
15164
15165         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
15166         hack to clear resize_widgets.
15167
15168         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
15169         for resize containers prior to size allocation. (this is also a bit
15170         ugly, but avoids side effects for stopped emissions and is thus more
15171         reliable).
15172         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
15173
15174         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
15175         function from gtk_tooltips_expose, as we connect to ::expose_event
15176         *and* ::draw now.
15177
15178 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15179
15180         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
15181         checks.
15182         (gtk_target_list_unref): Likewise.
15183
15184         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
15185
15186 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
15187
15188         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
15189         guard against division by zero. (Fixes bug #1339)
15190
15191 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
15192
15193         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
15194         Prevent the trivial leak of information of allowing
15195         word motion when the entry is not visible.
15196
15197 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
15198
15199         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
15200         modality to error dialog as well as confirmation dialogs.
15201         (Bug #1803, reported by Rosanna Wing Sze Yuen)
15202
15203 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15204
15205         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
15206         tree->view_lines.
15207         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
15208
15209         * gtk/Makefile.am (install-data-local): Solaris apparently
15210         has various troubles with ln -f; use rm first instead.
15211         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
15212
15213 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
15214
15215         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
15216         use `cp' followed by `rm' (the `rm' was already there).
15217
15218 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15219         
15220         * configure.in: Fix autoconf warnings about cross compilation by
15221         trying to provide sane defaults for AC_TRY_RUN.
15222         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
15223         put them into $(srcdir) when generated. Also add a dependency of
15224         gtksignal.h on gtkmarshal.h for -j builds. 
15225         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
15226
15227 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
15228
15229         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
15230         GDK_THREADS_{LEAVE,ENTER} pair.
15231         (From Paul Fisher <pnfisher@redhat.com>)
15232
15233 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
15234
15235         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
15236         width and height are always >0 (owen).
15237
15238 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
15239
15240         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
15241         change that assured that a widget's allocated with and height are
15242         always >1, since this breaks *buggy* panel code. unfortunately this
15243         back-breaks the gimp's color selector.
15244
15245         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
15246         allocation is always >0 in width and height, before sending the
15247         configure event; this is a *gross* hack to get the gimp back to work.
15248         
15249         * marked both cases with TODO-1.3
15250
15251 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
15252
15253         * gtk/gtktext.c: Don't display wrap indicators when
15254         text is not editable and word wrap is on.
15255
15256 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
15257
15258         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
15259         option menus here as they are not derived from menu shell, assure that
15260         the option menu has a menu we can add items to.
15261
15262 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
15263
15264         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
15265         width/height to (gint) before calculations and check against < 0 to
15266         avoid guint wraparounds.
15267
15268 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
15269
15270         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
15271         width and height is never zero. sanity check both dimensions against
15272         32767 and issue a warning if the allocation is greater than that.
15273
15274 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
15275
15276         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
15277         to g_main_pending() as well.
15278
15279 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
15280
15281         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
15282         call to g_main_iteration() - since that will regrab
15283         GTK+ lock to process events.
15284
15285 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
15286
15287         * gtk/gtkwindow.c
15288         - Regularize with the rest of GTK+ by making widget->requisition
15289           not reflect the set_usize()
15290         - Always recompute geometry hints, then check if they
15291           changed before sending them to the X server. The
15292           previous checks for changes would fail in a number
15293           of circumstances. 
15294
15295 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
15296
15297         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
15298
15299 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
15300
15301         * gtk/gtkdnd.c:
15302         - Code cleanups
15303         - Instantaneously update on modifier key presses
15304         - Allow cancellation of the drag with Escape.
15305
15306 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
15307
15308         * gtk/testgtk.c (create_handle_box): Set the policy
15309         to auto_shrink - otherwise the appearance is rather
15310         strange when flipping between horizontal and vertical.
15311
15312 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
15313
15314         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
15315         (gtk_window_set_default_size): don't change a value if it's < 0.
15316         queue a resize.
15317
15318 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
15319
15320         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
15321
15322 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
15323
15324         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
15325         add an extra "/" when concating "/" + filename.
15326         (From Matt Grossman <mattg@oz.net>)
15327
15328 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
15329
15330         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
15331         for fg_gc if we set it for drawing pixmap.
15332
15333 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
15334
15335         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
15336         
15337         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
15338         already set, call old engine's destroy function and
15339         unref the old engine.
15340
15341 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
15342
15343         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
15344
15345 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
15346
15347         * gtk/gtkaccelgroup.h: mark certain functions as internal.
15348
15349 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
15350
15351         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
15352         expand behaviour changed.
15353
15354         * gtk/gtklabel.c (gtk_label_set_pattern):
15355         (gtk_label_set_justify):
15356         (gtk_label_set_line_wrap):
15357         don't bother invoking queue_clear, the reallocation does
15358         that for us, always free_words so the upcoming resize will
15359         relayout the label's contents.
15360
15361 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
15362
15363         * applied argument implementation patches from Elena Devdariani
15364         <elena@cogent.ca>.
15365
15366         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
15367         ::space_style, ::relief
15368         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
15369         * gtk/gtkpreview.c: ::expand
15370         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
15371         * gtk/gtknotebook.c: ::homogeneous
15372         * gtk/gtklabel.c: ::wrap
15373         * gtk/gtklist.c: ::selection_mode
15374         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
15375         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
15376         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
15377         * gtk/gtkclist.c: ::sort_type
15378         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
15379         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
15380
15381 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
15382
15383         * gtk/gtkstyle.c: Removed ill-thought-out part of last
15384         comment.
15385
15386 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
15387
15388         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
15389         counting right when we have to attach a new style
15390         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
15391
15392         * gtk/gtkstyle.c: Documented the refcounting
15393         peculularities of gtk_style_attach.
15394
15395 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15396
15397         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
15398         window types.
15399
15400         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
15401         of GTK_TOPLEVEL for creating the window.
15402
15403 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15404
15405         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
15406         the last argument (reported by Per Winkvist).
15407         
15408 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
15409
15410         Fixes for invisible XOR lines (Frank Loemker
15411         <floemker@TechFak.Uni-Bielefeld.DE>)
15412         
15413         * gtk/gtkclist.c (gtk_clist_realize): Always use
15414         a non-zero pixel for GDK_XOR.
15415
15416         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
15417         Use GDK_INVERT instead of GDK_XOR.
15418
15419 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
15420
15421         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
15422         signals if h/voffsets differ from adjustment values.
15423         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
15424
15425 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
15426
15427         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
15428         ::selection-done emissions up to the topmost menu shell.
15429
15430 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
15431
15432         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
15433         the user data on the window before destroying it.
15434
15435         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
15436         unrealize handler to take care of destroying 
15437         notebook->panel properly. 
15438         (Bug #1198 - Morten Welinder <terra@diku.dk>)
15439
15440         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
15441         of g_new and g_realloc to stop memory leak. (Actually,
15442         we could just use g_realloc(), but I'm not 100% sure
15443         that is portable).
15444         (Bug #1196 - Morten Welinder <terra@diku.dk>)
15445
15446 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15447
15448         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
15449
15450         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15451         for fontsets.
15452
15453         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
15454         with bin/button confusion.
15455
15456 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
15457
15458         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
15459         and show how preselection of radio items is done.
15460
15461 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
15462
15463         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
15464         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
15465         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
15466         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
15467         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
15468         * gtk/gtktable.c (gtk_table_attach): 
15469         * gtk/gtklist.c (gtk_list_insert_items): 
15470         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
15471         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
15472         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
15473         * gtk/gtkbin.c (gtk_bin_add): 
15474         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
15475         * gtk/gtkfixed.c (gtk_fixed_put): 
15476         * gtk/gtklayout.c (gtk_layout_put):
15477         general fixups to container_add logic. always realize child if
15478         child->parent is realized, only map the child and queue a resize
15479         if child and child->parent are both visible.
15480
15481 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
15482
15483         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
15484         instead of gtk_container_foreach to walk and unrealize children, so
15485         composite children get also unrealized.
15486         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
15487         (gtk_widget_map): assert that the widget is visible (basic constrain).
15488         (gtk_widget_real_map): assert that the widget is realized (basic
15489         constrain).
15490
15491 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
15492
15493         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
15494
15495 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
15496
15497         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
15498         file for iso-8859-2 locales.
15499
15500         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
15501
15502 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
15503
15504         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
15505          (Pointed out by andy@rz.uni-karlsruhe.de and others).
15506          Remove some suspicious and useless lines. 
15507
15508 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
15509
15510         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
15511         width,height = 0, 0 to mean - here to edge of window,
15512         instead of -1, -1, since the former is all we support.
15513
15514 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
15515
15516         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
15517         when removing from quit_functions list.
15518
15519 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
15520
15521         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
15522
15523 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
15524
15525         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
15526          When redrawing characters on non-visible entry, use appropriate
15527          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
15528
15529 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
15530
15531         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
15532         from drag coordinates.
15533         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
15534         use drag_dest_cell.
15535
15536         * gtk/gtktree (drag_dest_cell)
15537         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
15538         (Bug #1129)
15539
15540 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
15541
15542         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
15543         translate_* fields.
15544         (gtk_item_factory_finalize): invoke translate_notify independant from
15545         translate_data.
15546         (gtk_item_factory_set_translate_func): likewise.
15547         (gtk_item_factory_destroy): only remove ifactory pointer from those
15548         widgets that belong to us (stupid me).
15549
15550 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
15551
15552         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
15553         rc_style list when lookup succeeeds.
15554
15555 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
15556
15557         * gtk/gtkctree.c (resync_selection): 
15558         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
15559         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
15560         bug.
15561
15562 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
15563
15564         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
15565         Add some missing GDK_THREADS_ENTER()/LEAVE around
15566         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
15567
15568 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
15569
15570         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
15571         rather than emit_by_name.
15572
15573         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
15574         on the widget across multiple signal emissions.
15575         (gtk_editable_delete_text): same here.
15576         (gtk_editable_class_init): set widget_class->activate_signal after
15577         editable_signals[ACTIVATE] has been created.
15578
15579 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
15580
15581         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
15582         position here prematurely -- we might not have the
15583         right ->min_position and ->max_position yet.
15584
15585 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15586
15587         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
15588         Add error traps so if the other end of the connection
15589         dies, we survive.
15590
15591         * gtk/gtkselection.c (gtk_selection_notify): Clean
15592         up properly when selection property retrieval fails.
15593         
15594         * gtk/gtkselection.c (gtk_selection_request): Correctly
15595         reject SelectionRequest notifies where the handler
15596         returns no data.
15597
15598 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15599
15600         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
15601         when we've previously highlighted.
15602
15603         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
15604         emit two "drag_leave" signals for Motif drops.
15605
15606         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
15607         back the correct status messages when dropping from
15608         Motif onto a proxy window that is rejecting the
15609         drop.
15610
15611 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
15612
15613         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
15614         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
15615         to compare two argument values. added gtk_arg_to_valueloc() to set a
15616         variable from an arg through its location (pointer).
15617
15618         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
15619         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
15620         as gfloat*, uchars are collected as guchar*, ints are collected as
15621         gint*, etc...
15622
15623 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
15624
15625         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
15626         Include <string.h> instead of <strings.h>.
15627
15628         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
15629         (actually, a lot more duplicate includes occur if
15630          you trace through the sequence of #include's)
15631         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
15632         
15633 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15634
15635         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15636         gtk-a-higuti-990322-[0-3]
15637
15638         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15639         that was causing -DX_LOCALE not to work.
15640
15641         * gtk/gtkrc.c (gtk_rc_init):
15642         X_LOCALE will never have LC_MESSAGES defined
15643
15644 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
15645
15646         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
15647         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
15648
15649         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
15650         left/right as well (gtk-michael-980726-0.patch.gz).
15651
15652         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
15653         for pointer values, use gchar instead of char. fixed uline allocation
15654         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
15655         chunks instead of G_ALLOC_ONLY.
15656         (gtk_label_size_request): always alter requisition as passed and leave
15657         widget->requisition alone.
15658         (gtk_label_set_text): allow NULL strings.
15659         (gtk_label_new): likewise.
15660
15661 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
15662
15663         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
15664
15665 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
15666
15667         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
15668         *and* mapped (i.e. drawable).
15669         (gtk_bin_expose): only send exposes to drawable children.
15670
15671         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
15672         (gtk_box_expose): only send exposes to drawable children.
15673
15674         * gtk/gtkhscale.c (gtk_hscale_draw): 
15675         * gtk/gtkvscale.c (gtk_vscale_draw):
15676         hm, this is an ugly one. we first compute the size of our trough area
15677         here (window relative) and then check intersection with the draw_area
15678         which is parent relative because we're a NO_WINDOW widget, so we need
15679         to offset the trough area by allocation.x and allocation.y before the
15680         check. (this must not be done for the background area though, since
15681         that's already computed parent relative).
15682
15683 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
15684
15685         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
15686         unrealize title buttons.
15687
15688 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
15689
15690         * gtk/gtkclist.c (gtk_clist_column_title_passive)
15691         (gtk_clist_column_title_active): 
15692         only connect/disconnect to GtkWidgetClass::event to block mouse events.
15693
15694         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
15695         zero initialize event, removed superfluous gdk_window_get_pointer call
15696
15697         * gtk/gtklist.c (gtk_list_vertical_timeout)
15698         (gtk_list_horizontal_timeout): removed superfluous
15699         gdk_window_get_pointer call
15700
15701 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15702
15703         * plugging problems reported by "Bruce Mitchener, Jr."
15704         <bruce@puremagic.com> due to a purify session.
15705
15706         * gtk/gtkstyle.c:
15707         (gtk_style_ref): 
15708         (gtk_style_unref): assert ref_count to be > 0.
15709
15710         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
15711         the requisition.
15712         (gtk_clist_set_shift): likewise.
15713
15714         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
15715         adjustments.
15716
15717         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
15718         event before sending it and set send_event to TRUE (which needs to
15719         be done for *all* synthesized events).
15720         (gtk_list_vertical_timeout): likewise.
15721
15722         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
15723         leaks.
15724
15725         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
15726         to TRUE when synthesizing events.
15727
15728 [ *** end of merges from 1.2 *** ]      
15729         
15730 1999-11-21  Tor Lillqvist  <tml@iki.fi>
15731
15732         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
15733         (or copied from gdkconfig.h.win32 on Win32, sigh).
15734
15735         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
15736
15737         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
15738
15739         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
15740
15741         * gdk/gdkconfig.h.win32: New file.
15742
15743         * gdk/win32/makefile.cygwin: Build just a static archive here.
15744
15745         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
15746         for the DLL from the static archive built above.
15747
15748         * gdk/gdk.def: Moved here from the win32 subdirectory.
15749
15750         * gdk/win32/*: Adapt for the changed private struct organisation.
15751
15752         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
15753
15754 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
15755
15756         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
15757         for wheel mice (buttons 4 and 5).
15758
15759 1999-11-18  Tor Lillqvist  <tml@iki.fi>
15760
15761         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
15762         drawables use just the pixel field in the foreground and
15763         background GdkColor of the GdkGC.
15764
15765         gdk_gc_set_{fore,back}ground() are called in the GIMP with
15766         GdkColors containing uninitialized (red,green,blue) fields, and
15767         just the pixel field filled in, and furthermore in the
15768         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
15769         It thus turns out that we really don't need to have the full
15770         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
15771         it later to have just the pixel values.
15772
15773 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
15774
15775         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
15776
15777 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
15778
15779         * docs/gtkfaq.sgml: threads example from Erik Mouw.
15780         New question on GtkLabel background colors.
15781
15782         * docs/gtk_tut.sgml:
15783           - Correct the example code callback
15784             function definitions.
15785           - Update the gtkdial example code, from Frans van Schaik.
15786           - Update setselection.c to current API.
15787
15788         * examples/Makefile examples/*/*.c: Update to code
15789         listed in tutorial.
15790
15791 1999-11-10  Tor Lillqvist  <tml@iki.fi>
15792
15793         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
15794         subrange table (from the "Developing International Software for
15795         WIndows 95 and Windows NT" book) was missing the Hangul syllable
15796         block... Get the loaded font's charset correctly.
15797
15798         (Note that this, and the other *-win32.c files, still really are
15799         the old ones, the win32 subdirectory is not ready for compilation
15800         yet after the reorg.)
15801
15802 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
15803
15804         * gtk/gtkclist.c: Fix off-by-one bug in parameter
15805         check.
15806
15807 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
15808
15809         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
15810         on results of XQueryDeviceState().
15811
15812 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
15813
15814         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
15815         we need to accesss only ->children. We need an accessor
15816         for the children.
15817
15818         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
15819         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
15820         to get rid of gdkx.h include.
15821         
15822         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
15823         and random references to 'None'.
15824
15825         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
15826         Get rid of unused #include <gdk/gdkx.h>
15827
15828         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
15829         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
15830         gdkconfig.h.
15831
15832 1999-11-08  Tor Lillqvist  <tml@iki.fi>
15833
15834         * gdk/win32/gdkdraw.c
15835         * gdk/win32/gdkfont.c
15836         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
15837         following yesterday's changes. (Unrelated to Owen's reorg.)
15838
15839 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
15840
15841         * gdk/x11/gdkinput-gxi.c: Add missing include,
15842           fix GdkWindowPrivate => GdkDrawablePrivate.
15843
15844         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
15845
15846         * gdk/x11/Makefile.am (xinput_sources): Add missing
15847         backslash to fix building with --with-xinput=none
15848
15849 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
15850
15851         Move all X specific code into the x11/ directory.
15852         Aside from shuffling things around, did the following:
15853
15854        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
15855          gdk_arg_context_* - a simple argument parsing system
15856          in the style of popt.
15857
15858        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
15859          gdk/x11/gdkprivate-x11.h:
15860          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
15861          add ->klass and ->klass_data fields. The klass_data
15862          field points to an auxilliary structure that is
15863          windowing system dependent.
15864
15865        * gdk/gdkfont.c: Make most of the measurement functions
15866          simply wrappers around gdk_text_extents().
15867
15868        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
15869          _gdk_font_strlen() function that hides the weird
15870          behavior in gtk+-1.[02] where a string is interpreted
15871          differently for 8-bit and 16-bit fonts.
15872
15873        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
15874          to store common code for synthesizing double/triple
15875          press events.
15876         
15877        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
15878          Make all the function that modify an existing GC
15879          simply wrappers around gdk_gc_set_values().
15880          
15881        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
15882          for throwing out later.
15883
15884        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
15885          GdkImagePrivate and GdkColormapPrivate to have a
15886          windowing system dependent part (GdkFontPrivateX etc.)
15887          that "derives" from the system-independent part.
15888
15889        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
15890          Got rid of the included-source-files for XInput in
15891          favor of automake conditionals. (Which didn't exist
15892          when XInput support was originally added.)
15893
15894        * gdk/gdkrgb.c: Remove the visual id from the debugging
15895          statements since that is X11 specific; print out
15896          type/depth info instead.
15897          
15898
15899 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
15900
15901         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
15902         loading duplicates of hashed fonts.
15903
15904         * gdk/gdk.c (gdk_keysym_convert_case): rename
15905         gdk_XConvertCase to gdk_keysym_convert_case, allow
15906         results to be NULL in the GTK+ style.
15907
15908         * gdk/gdkcompat.h: Started compatibility header
15909         for renames.
15910
15911 1999-11-07  Tor Lillqvist  <tml@iki.fi>
15912
15913         * gdk/win32/gdkprivate.h: New font private structures, related to
15914         fontsets.
15915
15916         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
15917         gdk_font_list_free(). On X11, will just be wrappers to
15918         XListFonts() and XFreeFontNames(). On Win32, the code previously
15919         in gtkfontsel.c is now here.
15920
15921         New function gdk_font_xlfd_create(). On X11 will get the FONT
15922         property of the font (for GDK_FONT_FONTs), or call
15923         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
15924         builds a XLFD style name from the font information in the LOGFONT
15925         struct(s).
15926
15927         New function gdk_font_xlfd_free(), which correspondingly frees the
15928         string returned by gdk_font_xlfd_create().
15929
15930         Implement fontsets on Win32. Add a function that iterates over a
15931         wide char string and calls a callback function for each substring
15932         of wide chars from the same Unicode subrange (and thus probably
15933         available in the same real font).
15934
15935         Improve the XLFD emulation a bit.
15936
15937         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
15938
15939         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
15940         Beta3, WM_IME_CHAR messages don't seem to contain the composed
15941         multi-byte char as with the Active IMM on Win9x. Oh well, handle
15942         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
15943         ImmGetCompositionStringW() to get the composed Unicode chars.
15944
15945         * gdk/win32/gdkgc.c
15946         * gdk/win32/gdkdraw.c: Changes needed because of the font private
15947         struct changes.
15948
15949         * gdk/win32/gdk.def: Add the new functions.
15950
15951 1999-11-04  Tor Lillqvist  <tml@iki.fi>
15952
15953         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
15954         get the Platform SDK to get <dimm.h>.
15955
15956         * gdk/win32/gdkevents.c: More event handling fixes and
15957         simplification. Never generate motion events with is_hint true. We
15958         used to do that on bogus grounds earlier. Windows sends
15959         WM_MOUSEMOVE messages on button events even if the mouse hasn't
15960         moved, ignore these.
15961
15962         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
15963
15964         * gdk/win32/gdkglobals.c
15965         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
15966         the TrackMouseEvent function, and use it.
15967
15968         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
15969         char before calling WideCharToMultiByte in order to get a string
15970         for the window title.
15971
15972         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
15973
15974         * gdk/win32/gdk.def: Remove obsolete functions.
15975
15976         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
15977         /nodefaultlib and /defaultlib switches.
15978
15979         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
15980
15981 1999-10-31  Tor Lillqvist  <tml@iki.fi>
15982
15983         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
15984         EuroSign).
15985
15986         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
15987         same type as GdkWChar, especially on Win32.
15988
15989         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
15990
15991         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
15992         before passing to Windows GDI for drawing etc. Convert to the
15993         system default codepage before passing to Windows as window
15994         titles.
15995
15996         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
15997         support changing input locale on the fly.
15998
15999         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
16000         on-the-fly changes. Convert incoming characters from the current
16001         codepage to Unicode (and then to a UTF-8 multi-byte string) based
16002         on the current input language. Use keysym<->Unicode mapping tables
16003         and functions borrowed from xterm sources.
16004
16005         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
16006         editions of Win9x, use the ActiveX-based Active IMM (Input Method
16007         Manager) if available. IMEs and the Active IMM are available under
16008         the disguise of Chinese, Korean and Japanese support for IE and
16009         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
16010         support is present in all editions (as long as you install it).
16011
16012         Call DispatchMessage from gdk_events_queue() (and thus
16013         gdk_WindowProc()), instead of duplicating the code in
16014         gdk_WindowProc().
16015
16016         Reworked the grab handling and propagation code, factored out
16017         duplicated code snippets into separate functions. Other cleanups,
16018         too.
16019
16020         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
16021         the <dimm.h> header describing the Active IMM.
16022
16023         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
16024         just do the same as for "single" fonts.
16025
16026         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
16027         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
16028         the new keysyms from gdkkeysyms.h.
16029
16030         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
16031         fontset, so that gtkentry uses wide characters.
16032
16033         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
16034         GTk+'s system directory "gtk+", not "gtk".
16035
16036 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
16037
16038         * docs/gtkfaq.sgml: FAQ update
16039
16040 1999-10-21  Tor Lillqvist  <tml@iki.fi>
16041
16042         * gdk/win32/gdkprivate.h: Add more font private data.
16043
16044         * gdk/win32/gdkfont.c
16045         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
16046         fonts and strings. Now works much better. You still have to
16047         have a correct font selected, though. No fontset emulation yet.
16048
16049 1999-10-19  Tor Lillqvist  <tml@iki.fi>
16050
16051         * gtk/maketypes.awk: Use G_OS_WIN32.
16052
16053         * gtk/gtk.def: Add some missing entry points. Also some non-public
16054         ones, but PyGTK porter claims to need them.
16055
16056         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
16057         built-in type generation.
16058
16059 1999-10-14  Tor Lillqvist  <tml@iki.fi>
16060
16061         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
16062         GDK_FONT_FONT fonts (which is all we have for now, we don't
16063         emulate fontsets). The X11 version uses plain XDrawString in that
16064         case, too. The string passed to gdk_draw_text_wc seems to be in
16065         fact (at least, when used by gtkentry and gtktext) either in a
16066         single-byte charset, or a DBCS. Not Unicode.
16067
16068         This fixes the problem in gtkfontsel, where even if you had
16069         selected a font with a non-Latin1 charset (windows-greek, for
16070         instance), the preview still used Latin-1 glyphs.
16071
16072         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
16073         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
16074         (gdk_font_load): Recognize the demibold etc weights, even if we
16075         don't have the corresponding constants in the headers.
16076         (gdk_font_hash_insert): Use same hash mechanism as in the X11
16077         version. Should save font resources a bit, when we don't have
16078         multiple HFONTs for the same font.
16079
16080         * gdk/win32/gdkprivate.h: Add the names field as in the X11
16081         version.
16082
16083 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
16084
16085         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
16086         X values
16087
16088 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
16089
16090         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
16091         layout support (as mentioned on
16092         http://www.jcinteractive.com/gnome-ui/software/widgets/)
16093
16094 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
16095
16096         * gtk/fnmatch.c
16097         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
16098
16099 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
16100
16101         * configure.in (ALL_LINGUAS): Added Galician (gl)
16102
16103 1999-10-05  Tor Lillqvist  <tml@iki.fi>
16104
16105         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
16106
16107         * gdk/win32/gdkcompat.c: New file, actually provide an
16108         implementation for the deprecated functions. (Just temporarily.)
16109
16110         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
16111
16112         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
16113
16114         * gdk/win32/gdk.def gtk/gtk.def: Updates.
16115
16116 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
16117
16118         * configure.in: Added "uk" to ALL_LINGUAS.
16119         
16120 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
16121
16122         * configure.in: correct checking for BeOS check
16123
16124         * gdk/gdktypes.h
16125         * gtk/fnmatch.c
16126         * gtk/gtkfilesel.c
16127         * gtk/gtkitemfactory.c
16128         * gtk/gtkmain.[ch]
16129         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
16130
16131 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16132
16133         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
16134         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
16135         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
16136         by Bulgarian). 
16137
16138 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
16139
16140         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
16141         Fix a reference to window_private->destroyed.   
16142
16143         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
16144         (ugly) setting of an internal GdkWindow member to use
16145         a _slightly_ cleaner macro.
16146
16147         * gdk/gdkprivate.h: Split GdkWindowPrivate into
16148         GdkDrawablePrivate and GdkWindowPrivate.
16149         Add extra macros for accessing GDK_DRAWABLE_ components.
16150
16151         * *.[ch]: Massive adjustments for the above, use the
16152         new macros in a lot of places.
16153
16154 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
16155
16156         * gdk/gdktypes.h: Make GdkDrawable the base type,
16157         not GdkWindow.
16158
16159 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
16160
16161         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
16162
16163 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
16164
16165         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
16166
16167 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
16168
16169         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
16170         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
16171
16172         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
16173
16174         * docs/gtk-config.1: Now autogenerated.
16175         * docs/Changes-1.4.txt: started
16176         
16177 1999-10-03  Tor Lillqvist  <tml@iki.fi>
16178
16179         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
16180         to #ifdef also here.
16181
16182         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
16183         Owen did to the X11 backend.
16184
16185         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
16186         ScrollWindowEx when blitting inside a window, it can't be correct
16187         in the general case.
16188
16189         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
16190         WM_GETMINMAXINFO is easier.
16191
16192         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
16193         depth equal to the bitspixel value, not the visual's depth.
16194
16195         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
16196         to 24 even if the bitspixel value is 32.
16197
16198         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
16199         need to check for depth==32 when bpp==32, depth will always be 24.
16200
16201 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
16202
16203         * docs/Changes-1.4.txt: Started
16204         
16205         * gtk/Makefile.am (gdk_headers): Include all the new headers.
16206
16207         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
16208         
16209         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
16210         into C file.
16211         
16212         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
16213         header to gdkinputprivate.h.
16214
16215         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
16216         unused since before 1.2.
16217
16218 1999-09-30  Tor Lillqvist  <tml@iki.fi>
16219
16220         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
16221         expand possible hex escapes in the font family (put there by
16222         logfont_to_xlfd if the font name isn't a legal XLFD font family,
16223         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
16224         On Win32, add hex escapes here, too.
16225
16226 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
16227
16228         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
16229         to #ifdef GDK_WINDOWING_X11.
16230
16231 [ Merges from gtk-1-2 ]
16232
16233 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
16234
16235         * configure.in: fixed "GNU Make" check to pass with new make version
16236         3.77.95.
16237
16238 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
16239
16240         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
16241         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
16242         AM_PATH_GTK() macros don't get confused by the -pre1.
16243
16244 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16245
16246         * configure.in (REBUILD): Change check for perl5
16247           to check explicitely for v >= 5.002. (5.001
16248           does not work with our scripts.)
16249
16250 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
16251
16252         * configure.in: evaluate $PERL for the perl version check. added
16253         --disable-rebuilds to give the user an option to completely disable
16254         any source autogeneration rules.
16255
16256 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
16257
16258         * configure.in: evaluate $ac_make when checking for GNU Make.
16259
16260 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16261
16262         * docs/Makefile.am: added generation.txt.
16263
16264         * Makefile.am: require automake 1.4, build README from README.in and
16265         INSTALL from INSTALL.in in dist-hook.
16266         
16267         * README.in:
16268         * INSTALL.in: new files to autogenerate README and INSTALL from.
16269
16270         * configure.in: figure whether we have GNU Make
16271
16272         * docs/generation.txt: minor additions/corrections.
16273
16274 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16275
16276         * docs/gtkfaq.sgml: FAQ Update
16277
16278 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16279         
16280         * configure.in: Fix autoconf warnings about cross compilation by
16281         trying to provide sane defaults for AC_TRY_RUN.
16282
16283 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
16284
16285         * ltconfig
16286         * ltmain.sh: upgrade to libtool 1.3.3
16287
16288 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
16289
16290         * INSTALL: Indicate that the --with-glib= configure
16291         time flag is unsupported.
16292
16293 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
16294
16295         * docs/generation.txt: Added a file that gives
16296         documenation about the autogeneration process for
16297         various autogenerated files.
16298         
16299 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16300
16301         * configure.in (LIBS): Look for libgmodule in the
16302         right location.
16303
16304 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
16305
16306         * docs/gtk_tut.sgml: Removed references to
16307         code examples in my directory on gtk.org as
16308         they should all be in the tutorial now.
16309
16310         * docs/gtk_tut.sgml: Added sources for dial-test
16311         and scribble-xinput programs that were previously
16312         missing.
16313
16314 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
16315
16316         * TODO: Added entry about menu keyboard navigation, removed
16317         some finished items.
16318
16319 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
16320
16321         * acinclude.m4: Standardize on func_dgettext
16322         not func_gettext, so that the checks for dgettext
16323         actually are paid attention to.
16324
16325 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
16326
16327         * configure.in (LIBS): Add $INTLLIBS into $LIBS
16328         directly, rather than repeating the checks for
16329         gettext.
16330
16331         * INSTALL: Added information about gettext and
16332         NLS support.
16333
16334         * acinclude.m4 (LIBM): Check for dgettext, not
16335         just gettext. This should hopefully fix things wrt
16336         systems with old versions of GNU gettext installed.
16337
16338 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16339
16340         * configure.in (LIBS): Look for libgmodule in the
16341         right location.
16342
16343 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16344
16345         * autogen.sh: add --enable-maintainer-mode
16346
16347         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
16348
16349 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
16350
16351         * docs/gtk-config.1.in:
16352           docs/Makefile.am:
16353           configure.in: gtk-config is now generated.
16354
16355         * docs/gtk-config.1: Removed, now generated.
16356
16357 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
16358
16359         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
16360         handle CreateNotify itself, still put out a debuging message for
16361         --gdk-debug=events. made the ReparentNotify debugging message more
16362         verbose.
16363         wrap xcoords translation for ConfigureEvents into an error trap,
16364         a destroy event may already be pending, and in that case, the
16365         actuall coordinate values are not at all critical.
16366
16367 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
16368
16369         * gdk/gdkcc.c: Stop leaking the color_hash all over
16370         the place. Simplify and improve the logic.
16371
16372 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
16373
16374         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
16375         for prototypes and function implementations consistent (reported
16376         by Tomas Ogren).
16377
16378 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
16379
16380         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
16381         send_event set in debugging output.
16382         (gdk_compress_exposures): default initialize the event so we don't
16383         operate on bogus values (namely send_event).
16384
16385 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
16386
16387         * gdk/gdkwindow.c: When we receive an unexpected
16388         destroy notify on one of our windows, don't just
16389         warn about it, also mark our windows as destroyed.
16390
16391 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
16392
16393         * gdk/gdkfont.c (gdk_font_hash_insert): Add
16394           name => font and name => fontset hashes. The 
16395           name => fontset hash is a _big_ win since we
16396           weren't previously caching fontsets at all and loading
16397           fontsets is expensive. The name => font hash
16398           is less of a win, but it does save us from doing
16399           repeated XQueryFont calls on the same font.
16400
16401         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
16402           list so we can remove font/fontset from hash.
16403
16404 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16405
16406         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
16407           and slightly confusing test. [ XInternAtom (,,TRUE)
16408           will never return None ].
16409
16410 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
16411
16412         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
16413           gdk/gdkwindow.c (gdk_window_set_hints):
16414
16415         Don't omit setting the properties if flags == 0 -
16416         there may be an existing set of properties there
16417         already. (Very old bug. Would it be better to
16418         delete the property instead?)
16419
16420         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
16421           spelling error in comment.
16422
16423 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
16424
16425         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
16426           to avoid stomping over gdk_error_warnings.
16427
16428         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
16429           as (bits_per_pixel + 7) / 8. This gives the same
16430           result as before for multiples of 8, but actually
16431           a "reasonable" value for 1bit or 4bit displays.
16432
16433 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16434
16435         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
16436         GNU Make.
16437
16438 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
16439
16440         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
16441         discarding configure events.
16442
16443 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
16444
16445         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
16446         refcount is greater than zero.
16447
16448         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
16449
16450         * gdk/gdkfont.c (gdk_font_unref): Likewise.
16451
16452         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
16453
16454         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
16455
16456 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
16457
16458         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
16459         that format 32 => sizeof(item) == 4. It really is
16460         sizeof(long).
16461
16462 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
16463
16464         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
16465         core dump at all on X IO errors, only core dump
16466         if --enable-debug for X errors.
16467
16468 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
16469
16470         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
16471         unknown window:" message. disabled ConfigureNotify discarding code,
16472         because it led to events being processed out of order.
16473
16474 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
16475
16476         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
16477
16478         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
16479         we export this function, supress error warnings and don't reset the
16480         error code in the first half of this function.
16481
16482         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
16483         code (instead of just -1) so gdk_error_trap_pop() reveals something
16484         actually informative about the error that happened.
16485
16486         * gdk/*.c:
16487         don't rely on gdk_error_code being -1 if an error occoured, but just
16488         gdk_error_code != 0.
16489
16490 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
16491
16492         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
16493         pointer *before* invoking the filter function, so we at least don't
16494         crash if a filter is removed that is currently executed. window filters
16495         *really* need to be made truely reentrant at some point.
16496
16497 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
16498
16499         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
16500         PropertyNotify debug messages.
16501
16502 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
16503         
16504         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
16505         
16506         * gdk/gdkim.c: Fix cut-and-paste errors for 
16507         x/y and PreeditAttributes/StatusAttributes.
16508
16509 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16510
16511         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
16512         G_MAXINT to 2^16 to alleviate overflow problems in
16513         various window managers.
16514
16515 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16516
16517         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16518         for fontsets.
16519
16520 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
16521
16522         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
16523         Initialize size_hints.x and size_hints.y because kwm
16524         brokenly pays attention to them.
16525         (Bug #1181 -  Lars Heete <hel@admin.de>)
16526
16527 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
16528
16529         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
16530         return value of gdk_list_visuals(). 
16531         (Bug #1193 - Morten Welinder <terra@diku.dk>)
16532
16533 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
16534
16535         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
16536         XSetIMValues to (void *) when comparing to NULL, to workaround
16537         the problem of some compilers barfing since older X headers don't
16538         have the prototype for it.
16539
16540 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
16541
16542         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
16543         for pseudocolor where colormap->colors was double
16544         allocated.
16545
16546         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
16547         color value in the hash table with the pixel filled
16548         in so when we do later hash table lookups, the color
16549         value is correct.
16550         
16551 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
16552
16553         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
16554         making the call
16555
16556 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
16557
16558         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
16559         pointed out by Morten Welinder <terra@diku.dk>.
16560
16561 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16562
16563         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16564           default filter from the list
16565
16566 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16567
16568         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16569           default filter from the list
16570
16571 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
16572
16573         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
16574
16575         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
16576         g_strdup_printf instead of calcing the length separately
16577
16578 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
16579
16580         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
16581         that we don't do in many other places. (Fixing duplicate 
16582         #include of config.h)
16583
16584         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
16585         Otherwise, #ifndef XINPUT_NONE check in the latter
16586         doesn't work. (Bug #546)
16587
16588 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
16589
16590         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
16591         "None" case insensitive.
16592
16593 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16594
16595         * gdk/gdkselection.c: 
16596         Add error traps so if the other end of the connection
16597         dies, we survive.
16598
16599 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16600
16601         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
16602         dest_xid field into two fields - one for the window
16603         to send in messages, one to indicate the last looked
16604         up window for caching purposes. This is needed, so
16605         that Leave messages get the correct window.
16606
16607 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
16608
16609         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
16610         Fix warning created by people mucking around
16611         with the gsource API.
16612
16613         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
16614         Change mapping between GIOCondition and GdkInputCondition
16615         to match the way the Linux kernel does it. This should
16616         fix problems where closed pipes were no longer signalling
16617         GDK_INPUT_READ on systems with a native poll().
16618
16619 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
16620
16621         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
16622         explicitly for the string "None" - it is in the XPM
16623         spec and some servers treat unknown colors in odd ways
16624         (like asking the user!)
16625
16626 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16627
16628         * gdk/gdkevents.c: made "->" into a "." of previous change so
16629         it compiles
16630
16631 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
16632
16633         * gdk/gdkevents.c (gdk_compress_exposures): Set the
16634         window field of the event structure before calling
16635         user filters.
16636
16637 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16638
16639         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
16640         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
16641
16642 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
16643
16644         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
16645         intermediate text property - prevents major memory
16646         leak when gdk_use_mb.
16647         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
16648
16649 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16650
16651         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16652         gtk-a-higuti-990322-[0-3]
16653
16654         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
16655         sizeof(wchar_t) != sizeof (GdkWChar)
16656
16657         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16658         that was causing -DX_LOCALE not to work.
16659
16660         * gtk/gtkrc.c (gtk_rc_init):
16661         X_LOCALE will never have LC_MESSAGES defined
16662
16663         * gdk/gdk.c (gdk_init_check):
16664         Remove --xim-preedit and --xim-status from argv properly.
16665
16666         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
16667         that the client window is present on the X server
16668         before we pass it to the input method.
16669
16670 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
16671
16672         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
16673         if --display is specified on the command line, than
16674         the drag window will not be created on that display.
16675         
16676 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
16677
16678         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
16679         lookups with only_if_exists == TRUE were inserting
16680         bogus values into the atom cache.
16681
16682 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16683
16684         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
16685         then reset it to NULL.
16686
16687         * gdk/gdkcolor.c:
16688         (gdk_colors_free): 
16689         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
16690         key for g_hash_table_remove() in both functions, this prevents us
16691         from accessing possibly uninitialized portions of a GdkColor structure
16692         where we are only interested in its pixel value.
16693
16694 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16695
16696         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16697         font hash table, if we have a GdkFontPrivate entry for this font
16698         already, simply increment its reference count, provided by Olaf Dietsche
16699         <olaf.dietsche+list.gtk@netcologne.de>.
16700
16701 1999-09-21  Tor Lillqvist  <tml@iki.fi>
16702
16703         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
16704         just to be sure.
16705
16706         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
16707         unused variables, leftovers from the X11 version.
16708
16709         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
16710
16711         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
16712         downcase fields on X11.
16713
16714 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16715         
16716         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
16717         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
16718
16719 1999-09-17  Tor Lillqvist  <tml@iki.fi>
16720
16721         * gdk/win32/gdk.def: Add gdk_threads_mutex.
16722
16723         * gtk/makefile.msc: Correct path to libintl.
16724
16725         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
16726         use of gint vs. int, and gint vs. gboolean in headers and
16727         definitions. Use GtkType for the *_get_type functions. Note that
16728         these changes preserve binary compatibility.
16729
16730         * gdk/gdk.c
16731         * gdk/win32/gdk.c
16732         * gdk/gdk.h: Fix inconsistencies: gint vs int.
16733
16734         * gtk/gtkmain.c
16735         * gtk/gtkclist.c
16736         * gtk/gtkmenufactory.c
16737         * gtk/gtknotebook.c
16738         * gtk/gtkwidget.c: Fix inconsistencies, also gint
16739         vs. gboolean.
16740
16741         * gtk/gtkcolorsel.[ch]
16742         * gtk/gtkcombo.[ch]
16743         * gtk/gtkdrawingarea.[ch]
16744         * gtk/gtkgamma.[ch]
16745         * gtk/gtkhandlebox.[ch]
16746         * gtk/gtkhpaned.[ch]
16747         * gtk/gtkhruler.[ch]
16748         * gtk/gtkplug.[ch]
16749         * gtk/gtkpreview.[ch]
16750         * gtk/gtkruler.[ch]
16751         * gtk/gtksocket.[ch]
16752         * gtk/gtkstatusbar.[ch]
16753         * gtk/gtktoolbar.[ch]
16754         * gtk/gtkvbbox.[ch]
16755         * gtk/gtkvpaned.[ch]
16756         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
16757         functions.
16758
16759         * gtk/gtkgamma.h: Fix bug, missing () in call of
16760         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
16761
16762 1999-09-14  Tor Lillqvist  <tml@iki.fi>
16763
16764         * gdk/gdkcolor.c (gdk_colormap_new)
16765         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
16766         colormap->colors was allocated twice.
16767
16768         * gdk/win32/gdk.c: Remove some unused stuff.
16769
16770         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
16771         colormap.
16772
16773         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
16774         * gtk/gtklabel.h (gtk_label_get_type)
16775         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
16776         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
16777         in a couple of places, not guint.
16778
16779 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
16780
16781         * configure.in,po/et.po: added Estonian language file
16782
16783 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
16784
16785         * configure.in,po/da.po: added Danish file
16786
16787 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
16788
16789         * docs/gtkfaq.sgml: Minor FAQ Update
16790
16791 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
16792
16793         * docs/gtkfaq.sgml: FAQ update
16794
16795 1999-08-27  Tor Lillqvist  <tml@iki.fi>
16796
16797         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
16798         way to get window contents continually refreshed while resizing. I
16799         didn't like the effects myself, so it's not on by default.
16800
16801         * gdk/win32/gdkprivate.h: New flag variable
16802         gdk_event_func_from_window_proc, FALSE by default.
16803
16804         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
16805         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
16806         are passed --gdk-event-func-from-window-proc.
16807
16808         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
16809         and we have am event_func, call it instead of enqueing the event.
16810
16811 1999-08-23  Tor Lillqvist  <tml@iki.fi>
16812
16813         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
16814         Kelley: Set expose_count in GdkEventExposes correctly.
16815
16816         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
16817         MULTIPLE_WINDOW_CLASSES).
16818
16819         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
16820         for bug in NT, apparently NT *does* draw the end pixel, too, in
16821         LineTo with a one-pixel pen, so we don't have to do it ourselves.
16822
16823 1999-08-21  Tor Lillqvist  <tml@iki.fi>
16824
16825         Improvements by Hans Breuer: 
16826
16827         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
16828
16829         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
16830         CS_?REDRAW flags as they cause lots of (late) redraws when "show
16831         window contents while dragging" is turned on. Allocate at least
16832         one unique class for every GdkWindowType. If support for single
16833         window-specific icons is ever needed (eg. Dialog specific), every
16834         such window should get its own class.
16835
16836 1999-08-19  Tor Lillqvist  <tml@iki.fi>
16837
16838         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
16839         error that caused crashes.
16840
16841 1999-08-17  Tor Lillqvist  <tml@iki.fi>
16842
16843         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
16844         window, use ScrollWindowEx, and call UpdateWindow. This prevents
16845         bugs when for instance part of the window was outside the
16846         display. Thanks to Philippe Colantoni for finding and fixing this.
16847
16848 1999-08-16  Tor Lillqvist  <tml@iki.fi>
16849
16850         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
16851         endpoint calculations which were totally wrong. (A little RTFMing
16852         helps a lot ;-)
16853
16854         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
16855         from a separate directory, not from gettext, because of licensing
16856         issues (we want to use the LGPL version).
16857
16858         * README.win32: Mention the intl from glibc vs from gettext issue.
16859
16860 1999-08-13  Tor Lillqvist  <tml@iki.fi>
16861
16862         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
16863         in the key event handling: Now AltGr chars work again. Also,
16864         now Alt-digits are passed up as well as Control-digits.
16865         Pass keypad plus and minus as normal plus and minus.
16866
16867 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16868
16869         * docs/gtkfaq.sgml: FAQ Update
16870
16871 1999-07-25  Tor Lillqvist  <tml@iki.fi>
16872
16873         * README.win32
16874         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
16875         the Wintab SDK.
16876
16877         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
16878         OK, but getting closer. Guard against bogus tilt data from Wacom
16879         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
16880         enable easier building without Wintab.
16881
16882         * gdk/win32/gdkinput.h
16883         * gdk/win32/gdkevents.c 
16884         * gdk/win32/gdkwindow.c: Minor changes related related to above.
16885         
16886         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
16887         code. As we have just one visual on Win32, no sense to have it in a
16888         table, and no need for the hash table.
16889
16890         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
16891         better on white background.
16892
16893 1999-07-21  Tor Lillqvist  <tml@iki.fi>
16894
16895         * README.win32: Update gcc build instructions. Mention gettext is
16896         GPL.
16897
16898         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
16899         supported cursor size with GetSystemMetrics.
16900
16901         * gdk/win32/gdkfont.c
16902         * gtk/gtkfontsel.c: Guard against some font weight and charset
16903         symbols being undefined (in mingw32 headers).
16904
16905         * gdk/win32/makefile.cygwin
16906         * gtk/makefile.cygwin
16907         * gtk/gtkthemes.c: No longer need to have differently named
16908         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
16909
16910 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
16911
16912         * docs/gtkfaq.sgml: Long awaited FAQ update.
16913
16914 1999-07-15  Tor Lillqvist  <tml@iki.fi>
16915
16916         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
16917         it. Obscure bit manipulation needed.
16918
16919         * gdk/win32/gdkevents.c: Logging.
16920         
16921         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
16922         style (file name include compiler name) for theme engines.
16923
16924 1999-07-13  Tor Lillqvist  <tml@iki.fi>
16925
16926         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
16927
16928         * gdk/win32/gdkevents.c: Fix long-standing bug in key
16929         events. The key.string wasn't zero-terminated, still we strdup'ed
16930         it in gdk_event_copy(). Synthesize crossing events for button
16931         events before possible propagation.
16932
16933         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
16934
16935         * gdk/win32/makefile.cygwin
16936         * gtk/makefile.cygwin: Use new DLL naming style for the
16937         GCC-compiled ones.
16938
16939         * gdk/win32/makefile.msc
16940         * gtk/makefile.msc: Cosmetics mostly.
16941
16942         * gtk/gtk.def: Add missing entry points.
16943
16944         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
16945
16946 1999-07-09  Tor Lillqvist  <tml@iki.fi>
16947
16948         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
16949         or height is zero. Don't print a warning if Pie or Arc fails, they
16950         always fail (?) for very narrow ellipses.
16951
16952         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
16953         the part or the destination window corresponding to source area
16954         outside of the source drawable's boundary.
16955
16956         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
16957         anything if less than two points.
16958
16959         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
16960         return NULL. Gtk cut-and-paste inside a single program works
16961         better this way. (It always gets the clipboard contents from
16962         Windows, not from its own copy, which is cleared anyway. I can't
16963         say I fully understand what happens... Emulating the X selection
16964         and property stuff is a bit of a mess.)
16965
16966         * gdk/win32/gdkevents.c
16967         * gdk/win32/gdkproperty.c: A bit more verbose logging.
16968
16969         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
16970         that never got deleted). Revamp gdk_region_shrink.
16971
16972         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
16973         after use.
16974
16975         * gtk/gtk.def: Add some missing entry points.
16976
16977         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
16978         component.
16979
16980 1999-07-04  Tor Lillqvist  <tml@iki.fi>
16981
16982         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
16983         Control-digits specially.
16984
16985 1999-07-03  Tor Lillqvist  <tml@iki.fi>
16986
16987         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
16988
16989 1999-06-28  Tor Lillqvist  <tml@iki.fi>
16990
16991         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
16992         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
16993         finding this.)
16994
16995 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
16996
16997         * gtk+.spec.in: Corrected some typos in files section.
16998         
16999 1999-06-15  Tor Lillqvist  <tml@iki.fi>
17000
17001         * README.win32: Mention using GNU gettext.
17002         * config.h.win32: Enable NLS stuff.
17003         * gtk/makefile.msc: Use GNU gettext.
17004         * gdk/win32/gdkdnd.c: Minor header reorg.
17005         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
17006         cosmetics.
17007         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
17008         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
17009
17010 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
17011
17012         * acinclude.m4
17013         * config.guess
17014         * config.status
17015         * ltconfig
17016         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
17017
17018 1999-05-30  Tor Lillqvist  <tml@iki.fi>
17019
17020         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
17021         SafeAdjustWindowRectEx. Don't override all calls to
17022         AdjustWindowRectEx by it, but use it only in two places: When
17023         creating a new top-level window and when moving a top-level
17024         window.
17025
17026         Use screen coordinate rectangle, not client rectangle, in
17027         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
17028         when we try to place a window so that the decoration (mainly,
17029         title bar) isn't visible.
17030
17031         These changes fix the bug that showed up for instance as the
17032         GIMP's saved top-level windows moving right and down (by an amount
17033         equal to the window decoration) for each session. This bug showed
17034         up also in testgtk's "Saved Position".
17035
17036         gdk_window_resize also redone a bit.
17037
17038 1999-05-25  Tor Lillqvist  <tml@iki.fi>
17039
17040         * gtk/testgtkrc: Add (commented out) Windows-style theme
17041         include line.
17042
17043         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
17044
17045 1999-05-18  Tor Lillqvist  <tml@iki.fi>
17046
17047         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
17048         gdkx.h to a gdk subdirectory, so that applications can include
17049         these with <gdk/*.h> without trouble.
17050
17051         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
17052         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
17053         have their bitmap destroyed.
17054
17055         * gdk/win32/gdk.def: Add gdk_root_parent.
17056
17057 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
17058
17059         * configure.in
17060           gtk-config.in
17061           ltconfig
17062           ltmain.sh     
17063           gtk/Makefile.am: changes to compile nicely (with xlib) 
17064           on BeOS
17065
17066 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
17067
17068         * acinclude.m4
17069         * config.guess
17070         * config.sub
17071         * ltconfig
17072         * ltmain.sh: upgrade to libtool 1.3
17073
17074 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
17075
17076         * gtk/gtkclist.c:
17077         * gtk/gtkctree.c: merges from gtk-1-2
17078
17079 1999-04-25  Tor Lillqvist  <tml@iki.fi>
17080
17081         Support added for building using a GNU toolchain on Win32,
17082         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
17083
17084         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
17085         * config.h.win32: Changes for gcc.
17086         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
17087         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
17088         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
17089         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
17090         Protect shl stuff unavaiilable with mingw32 headers.
17091         * gdk/win32/gdkevents.c: Fix typo.
17092         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
17093         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
17094         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
17095         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
17096         the mingw32 headers.
17097         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
17098         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
17099         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
17100         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
17101         Test for NATIVE_WIN32, not _MSC_VER.
17102         * gtk/gtkmain.c: No use warning about developer version on Win32,
17103         there aren't any non-developer versions anyhow.
17104         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
17105         * gtk/makefile.msc: Use pthread from another directory. Minor other
17106         changes. 
17107
17108 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17109
17110         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17111           default filter from the list
17112
17113 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
17114
17115         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
17116          when gtk_widget_grab_default() is called for a widget that
17117          is not within a GtkWindow.
17118
17119 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
17120
17121         * docs/gtk_tut.sgml, examples/clist.c: use a
17122           scrolled window in the clist example. Minor
17123           tutorial fixes.
17124
17125 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
17126
17127         * docs/gtk_tut.sgml: Style check from David King
17128           <dking@youvegotmail.net>
17129
17130 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
17131
17132         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
17133         compile with unknown value of GDK_WINDOWING
17134
17135 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
17136
17137         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
17138         after the rule is fired.
17139         (install-exec-local): Install gdkconfig.h only if the contents are
17140         different from the currently installed gdkconfig.h.
17141
17142 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
17143
17144         * gdk/Makefile.am (configexecincludedir): Rename from 
17145         configincludedir so that gdkconfig.h will be installed 
17146         as part of `make install-exec'. 
17147
17148 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
17149
17150         * acinclude.m4
17151         * config.guess
17152         * config.sub
17153         * ltconfig
17154         * ltmain.sh: upgrade to libtool 1.2f
17155
17156         * autogen.sh: libtool is not required to autogen gtk+
17157
17158         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
17159         needed)
17160
17161 1999-03-18  Tor Lillqvist  <tml@iki.fi>
17162
17163         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
17164         declaring gdk variables exported/imported from the DLL. New image
17165         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
17166         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
17167         GDK_DRAG_PROTO_OLE2.
17168
17169         * gdk/gdk.h: Merge in Win32 version: Two new functions,
17170         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
17171         declared only for the Win32 version, but could be in the X11
17172         version as well. (Needed for a Xlib-less gdk_imlib.)
17173         gdk_color_hash should have only one parameter. Declare
17174         gdk_threads_mutex with GDKVAR.
17175         
17176         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
17177         just one parameter.
17178
17179         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
17180         per pixel, not bits.
17181
17182         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
17183         Fetch bpp (which means bits-per-pixel here) from another place on
17184         Win32. Accept also depth==32 (which we might get on Win32) with
17185         bpp==32.
17186
17187         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
17188         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
17189         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
17190         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
17191         in the backend-dependent directory, not in the common gdk
17192         directory.
17193
17194         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
17195         headers.
17196
17197 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
17198
17199         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
17200         want to use the Gtk+ devel version (which is true, and yes - even i am
17201         currently working with the 1.2.x branch). so everyone reading this, you
17202         probably want to issue
17203         cvs checkout -r glib-1-2 glib
17204         and
17205         cvs checkout -r gtk-1-2 gtk+
17206         as your next two comands.
17207
17208 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
17209
17210         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
17211         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
17212
17213         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
17214         file. strongly deprecated the GTK_HAVE_* macros, we provide
17215         GTK_CHECK_VERSION() for people that need to check for certain
17216         Gtk+ versions.
17217
17218         * gtk/gtkcompat.h: removed this from CVS.
17219         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
17220         idea right from the start, it just didn't seem like that back then.
17221
17222 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
17223
17224         * merges from gtk-1-2:
17225
17226 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
17227
17228         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
17229         item factory class has been created.
17230         (gtk_item_factory_parse_rc): likewise.
17231
17232         * gtk/gtkmenu.c:
17233         keep proper references for old_active_menu_item.
17234         (gtk_menu_reparent): unset the usize of the new parent,
17235         so the menu can sanely be size requested and we don't get nasty screen
17236         artefacts upon next reparentation.
17237         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
17238         enter notify. only synthesize enter notifies if the pointer really is
17239         inside the event window.
17240         (gtk_menu_popdown): use gtk_menu_shell_deselect().
17241         (gtk_menu_popup): move the background setting stuff into
17242         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
17243
17244         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
17245         gtk_menu_shell_select_item() to select the new item.
17246         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
17247         do the right thing for deselection as well.
17248
17249 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
17250
17251         * gtk/gtkwidget.[hc]:
17252         (gtk_widget_accelerators_locked): return whether a widget's accelerators
17253         are locked.
17254
17255         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
17256         existing accelerators if the widget's accelerators are locked.
17257
17258 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
17259
17260         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
17261
17262         * gtk/gtkmenu.c: truely forward key press and key release events to
17263         the menu widget from the toplevel or tearoff window. we can't simply
17264         connect to that, we need to stop further processing of the events as
17265         well.
17266
17267 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
17268
17269         * gtk/gtkmenu.c:
17270         (gtk_menu_key_press): pass event->keyval, event->state to
17271         gtk_accelerator_valid, instead of event->keyval twice.
17272         refuse to install single letter accelerators for menus that use
17273         single letter shortcuts.
17274
17275         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
17276         gtk_menu_ensure_uline_accel_group().
17277
17278         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
17279         which will always return an uline accel group, made
17280         gtk_menu_get_uline_accel_group() return NULL if the group isn't
17281         yet created.
17282
17283 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
17284
17285         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
17286
17287         * gtk/gtkclist.c (gtk_clist_column_title_passive):
17288         Leave button sensitive, trap  button_press, button_release,
17289         motion_notify, enter_notify and leave_notify events instead.
17290         (gtk_clist_column_title_active): disconnect event handler.
17291         (gtk_clist_drag_data_get): fixed memory leak. Reported by
17292         Guillaume Laurent <glaurent@worldnet.fr>
17293
17294 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
17295
17296         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
17297         width/height mixups.
17298
17299         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
17300         if needed.
17301
17302 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
17303
17304         * gtk/testgtk.c (create_item_factory): unref the item factory after
17305         window's destruction.
17306
17307         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
17308         count on the menu shell around the menu item's activation, since the
17309         signal emission may cause menu shell destruction.
17310
17311         * gtk/gtkitemfactory.c:
17312         the previous code leaked one accel group per menu. we use
17313         gtk_menu_get_uline_accel_group() now to fix that, and with that
17314         also create the underline accelerator group of the menus only if
17315         required (i.e. an underline accelerator has been specified).
17316         (gtk_item_factory_construct):
17317         (gtk_item_factory_create_item): removed code that would create an
17318         extra accel group for the menu (and leak references).
17319         (gtk_item_factory_create_item): adapted the underline accelerator
17320         installation code to properly feature gtk_menu_get_uline_accel_group().
17321
17322         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
17323         menu->accel_group, this may return NULL if the accelerator group
17324         hasn't been set yet.
17325         added gtk_menu_get_uline_accel_group() to retrive the underline
17326         accelerator group of the menu, this will be created on demand
17327         and proper care is taken about its reference count.
17328
17329         * gtk/gtkitemfactory.h:
17330         * gtk/gtkitemfactory.c:
17331         dumped the approach of keeping a widgets by action list on the
17332         factory since the factory<->widget destroy negotiation didn't work
17333         and would be hard to get going at all. instead we keep a list of
17334         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
17335         persistant throughout a program's life time).
17336         also, i removed the static const gchar *key_* variables, and made
17337         them inline strings (they weren't actually used anyways).
17338         (gtk_item_factory_add_item): update ifactory->items.
17339         (gtk_item_factory_destroy): destroy ifactory->items (and remove
17340         the item factory pointer from the remaining ifactory widgets).
17341         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
17342         list to find the widget.
17343         (gtk_item_factory_get_item): new function that works around
17344         gtk_item_factory_get_widget() limitations, this function will only
17345         return menu items, even for <Branch> entries.
17346
17347 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17348
17349         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17350         font hash table, if we have a GdkFontPrivate entry for this font
17351         already, simply increment its reference count, provided by Olaf Dietsche
17352         <olaf.dietsche+list.gtk@netcologne.de>.
17353
17354         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17355         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17356
17357 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
17358
17359         * gtk/gtkcontainer.c:
17360         (gtk_container_add_with_args):
17361         (gtk_container_addv):
17362         (gtk_container_add): before adding a child to a conatiner, make sure
17363         it is (default) constructed, this is neccessary because under certain
17364         circumstances the child will get relized and mapped immediatedly, in
17365         which case it has to be constructed already.
17366
17367 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
17368
17369         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
17370         values > 1 as TRUE also.
17371
17372 1999-03-16  Tor Lillqvist  <tml@iki.fi>
17373
17374         * README.win32: New file.
17375                 
17376         * configure.in: Check for lstat.
17377
17378         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
17379         completeness.
17380
17381         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
17382
17383         * gtk/gtk.def: Removed CRs.
17384
17385         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
17386         ..\gdk\win32).
17387
17388         * gdk/win32/makefile.msc: Correct upwards relative paths.
17389         
17390 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
17391
17392         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
17393           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
17394           it was connecting a void function to expose_event and the int
17395           returning function to the draw signal
17396
17397 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
17398
17399         * configure.in:
17400         Use correct path to libgmodule.la when ref'ing uninstalled copy
17401         of glib.  (Already in stable branch, Bug #417)
17402
17403 1999-03-15  Tor Lillqvist  <tml@iki.fi>
17404
17405         Win32 merge and general portability stuff:
17406                 
17407         * acconfig.h,configure.in: Check for <sys/time.h>.
17408
17409         * gdk/win32: New directory (actually, been there for a while).
17410         
17411         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
17412         NATIVE_WIN32, and use these. Always case fold on Win32. No
17413         backslashed escapes on native Win32.
17414
17415         * gtk/{gtk.def,makefile.msc}: New files.
17416
17417         * gtk/Makefile.am: Add above new files.
17418         
17419         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
17420         instead of <strings.h>.
17421
17422         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
17423         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
17424         <unistd.h> appropriately.
17425
17426         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
17427         Use ABS() (from <glib.h>) instead of abs().
17428         
17429         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
17430         of gtk (and thus glib) headers, so that WIN32 will be
17431         defined. With MS C, include <direct.h> for mkdir prototype.
17432
17433         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
17434         some casts, needed by MS C.
17435
17436         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
17437         implemented).
17438
17439         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
17440         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
17441         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
17442
17443         * gtk/gtkmain.h: Mark variables for export/import on Win32.
17444                 
17445         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
17446         the event is not a hint, or its window is not the slider. Needed
17447         on Win32, at least.
17448
17449         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
17450         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
17451         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
17452         a subdirectory of the Windows directory as gtk system
17453         configuration directory.
17454
17455         * gtk/gtkselection.c: No chunks on Win32.
17456
17457         * gtk/gtksocket.c: Not implemented on Win32.
17458
17459         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
17460
17461         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
17462
17463         * gtk/maketypes.awk: Declare variables with a macro that expands to
17464         necessary export/import magic in the case of Win32.
17465                 
17466         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
17467
17468 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
17469
17470         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
17471         since those were meant only for gdki18n.h.  
17472         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
17473         for widechar tests.
17474         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
17475
17476 1999-03-13  Tor Lillqvist  <tml@iki.fi>
17477
17478         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
17479         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
17480
17481         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
17482         installed) to CFLAGS.
17483
17484         * gdk/Makefile.am: Add rules for gdkconfig.h.
17485
17486         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
17487         APIs.
17488
17489         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
17490         gdkx.h anyway when compiling for X11.
17491         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
17492         general): Merge in Win32 version.
17493         
17494         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
17495         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
17496         expansion (if we don't have HAVE_PWD_H), allow for drive
17497         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
17498         included code from Craig Setera's port to Win32 (the one that uses
17499         X11, and the cygwin dll), even if it probably will be abandoned.
17500
17501         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
17502         the user entered one herself.  This way one can complete *.h and
17503         don't get matches on any .help files, for instance.
17504         
17505 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17506
17507         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17508         font hash table, if we have a GdkFontPrivate entry for this font
17509         already, simply increment its reference count, provided by Olaf Dietsche
17510         <olaf.dietsche+list.gtk@netcologne.de>.
17511
17512         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17513         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17514
17515 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17516
17517         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
17518         the number of calls to gdk_draw_point() (and thus to X) by
17519         clipping the points by hand.
17520
17521         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
17522         the clip parameter.
17523         (gtk_handle_box_paint): Only paint the handle if the expose area
17524         intersects it.
17525
17526 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17527
17528         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
17529
17530 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
17531
17532         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
17533         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
17534
17535 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17536
17537         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
17538          textmode (O_TEXT) for OS/2 version.
17539
17540 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
17541
17542         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
17543         GtkSpinButton, "input" and "output", to make the output more flexible.
17544         The user has to provide a mapping between adjustment->value and the
17545         output string (and vice versa, if the spin button is editable). 
17546         See testgtk for examples.
17547
17548 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
17549
17550         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
17551         new one.
17552         
17553         * configure.in: set gtk+ version to 1.3.0.