]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
Add a special size for drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
[~andy/gtk] / ChangeLog.pre-2-4
1 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
4         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
5
6         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
7         with un'reffing wrong list reported by Jeff Franks.
8
9         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
10
11         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
12         for the default icon. Remove inline XPM.
13
14         * gtk/gtkstock.h gtk/gtkiconfactory.c:
15         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
16         is used for GTK_STOCK_DND, but it is a bit too small.)
17
18         * gtk/stock-icons/stock_dnd_multiple.png
19         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
20
21         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
22         TRUE when starting a drag. In other cases, we are
23         just observing. (#52995)
24
25         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
26         function to set the icon for a drag from a GdkPixbuf
27         or stock ID.
28
29         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
30         Likewise, for drag sources.
31
32         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
33         (Now should be done using the stock system.)
34
35 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
36
37         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
38         Removed - didn't work and not particularly useful anyways
39         if it did. 
40
41 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
42
43         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
44         introduced last night that was making things decidedly not work.
45
46         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
47         so that we have getter/setter pairing everywhere it makes
48         sense. (#55767)
49
50         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
51         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
52         deprecated compat macro. (#55516)
53
54         * gtk/gtklabel.[ch]: Add functions
55         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
56         gtk_label_set_label(), which mirror the property API for GtkLabel.
57         Make gtk_label_get_attributes() only reflect the attributes
58         set by gtk_label_set_attributes.
59
60         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
61         from gtk_notebook_set_page().
62
63 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
64
65         * configure.in: Fix tests for XShm.h.
66
67         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
68         gdk_image_new() by use of goto, properly use g_object_unref().
69
70 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
71
72         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
73         calls, as GdkImage is an object. these should be g_obejct_unref()
74         instead but that won't work because of the g_error() statement
75         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
76         to spot these places.
77
78 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
79
80         * modules/input/gtkimcontextxim.c: Fixup some problems with 
81         text length handling in error cases.
82
83         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
84         a bit to make test actually warn on attempt to allocation
85         a negative size. (#56101, Matthias Clasen)
86
87 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
88
89         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
90         noticed by Brian Cameron.
91         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
92         Cameron.
93
94 2001-06-22  Hans Breuer  <hans@breuer.org>
95
96         * gdk/gdk.def : updated externals
97
98         * gdk/win32/gdkdrawable-win32.c : corrected some casts
99         in GDK_NOTEs
100
101         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
102         to translate coordinates to the internal > 16 bit system
103         Try to handle WM_WINDOWPOSCHANGED to get better performance for
104         when moving/resizing
105
106         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
107         and gdk_keymap_get_direction (). The latter is untested for
108         the RTL case
109
110         * gtk/gtk.def : updated externals
111
112         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
113         from pango_language_from_string (), not an already freed pointer
114
115         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
116         binary (-kb) to be useable on windoze
117  
118 2001-06-21  Alexander Larsson  <alexl@redhat.com>
119
120         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
121         Update to new PangoLanguage changes.
122         
123         * gtk/gtkwindow-decorate.c:
124         * gtk/gtkwindow.[ch]:
125         Added setting argument to gtk_window_set_has_frame ()
126         
127 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
128
129         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
130         the case without XKB properly.
131
132         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
133         unused gtk_rc_auto_parse variable.
134
135         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
136         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
137         longer needed with GdkPixbuf.
138
139         * gtk/gtkrc.c (_gtk_rc_init): Make private.
140
141 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
142
143         * gtk/gtkentry.h: Mark deprecated functions with
144         GTK_DISABLE_DEPRECATED.
145
146 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
147
148         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
149
150         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
151
152         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
153           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
154           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
155           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
156           to recent changes in Pango.
157
158         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
159           to test whether the basic engine honors them.
160
161 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
162
163         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
164         gtk_container_child_get_property().
165
166 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
167
168         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
169         (gtk_tree_view_move_cursor_page_up_down): implement.
170
171 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
172
173         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
174         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
175         don't use automatic fixed size buffer for printf-ing floats, doubles
176         can expand to really _huge_ strings, use g_strdup_printf() instead.
177
178 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
179
180         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
181         construct property in 1.2 and still needs to be.
182
183         * gtk/gtkwidget.c: "composite_child" is not a settable property.
184
185 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
186
187         * gtk/gtkliststore.c (gtk_list_store_clear): 
188         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
189         clear a model.
190
191 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
192
193         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
194
195         * gtk/Makefile.am:
196         * gtk/gtk.h: disabled GtkPacker compilation.
197
198         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
199
200         * gtk/gtknotebook.c:
201         * gtk/gtktable.c:
202         * gtk/gtkbox.c: ported this over to child properties.
203
204         * gtk/gtksettings.c: fetch class properties via
205         g_object_class_list_properties().
206
207         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
208         child arg interface. use gobjectnotifyqueue.c for child property
209         notification.
210
211         * gtk/gtkwidget.[hc]: provide necessary means for container child
212         properties, i.e. ::child_notify signal,
213         gtk_widget_freeze_child_notify(),
214         gtk_widget_child_notify(),
215         gtk_widget_thaw_child_notify().
216
217         * tests/testgtk.c: removed inferior property handling code, for
218         property editing, a generic module should be used, and GLE
219         coincidentally fullfills that purpose.
220
221         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
222         needs to be adapted to g_object_class_list_properties() before this
223         builds again.
224
225 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
226
227         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
228         test if a node is expanded.
229
230 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
231
232         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
233         where collapsing a selected row would result in the cursor/anchor
234         getting screwed up.
235
236 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
237
238         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
239         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
240         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
241         Now I can really reorder/sort all Store widgets.  treesorttest
242         seems to just work now.
243         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
244         testtreesort worked through a big coincidence all this time.
245         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
246         code.
247         * tests/testtreecolumns.c: Big 'ol warning at the top letting
248         people know that this code should never ever ever be copied.
249
250 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
251
252         * gtk/gtkwindow.h: Fixed a small typo, it should be
253         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
254         on line 134.
255
256 2001-06-14  Havoc Pennington  <hp@redhat.com>
257
258         Docs fixups, and:
259         
260         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
261         GTK_DISABLE_DEPRECATED
262
263 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
264
265         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
266         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
267         finish it off tonight, though it basically works now when it's a
268         list.  Also, I have a sinking feeling neither GtkTreeStore or
269         GtkListStore actually resort when adding a new item.  I'll look
270         into it.
271
272 2001-06-14  Havoc Pennington  <hp@redhat.com>
273
274         * demos/gtk-demo/main.c (load_file): fix bug identified by
275         warnings I just added to gtktextbuffer
276
277 2001-06-14  Havoc Pennington  <hp@redhat.com>
278
279         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
280
281         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
282
283         * gtk/gtktextbtree.c: don't leak node data all over the place.
284
285         * demos/gtk-demo/main.c (main): create fontify tags for the right
286         buffer
287
288         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
289         to mention tags in the same table can't have the same name,
290         suggested by Skip Montanaro
291
292 2001-06-11  Havoc Pennington  <hp@redhat.com>
293
294         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
295         for trying to add two tags with same name to the tag table
296
297         * demos/gtk-demo/main.c (main): fix colors ;-)
298
299 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
300
301         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
302         that allows grouping together multiple windows so that grabs
303         within that set of windows only affect those windows.
304
305         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
306         signal for notification when a widget becomes shadowed
307         by a grab or is no longer shadowed by a grab.
308
309         * gtk/gtkwidget.c (gtk_widget_propagate_state)
310           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
311         insenstive widgets to maintain a grab.
312
313 2001-06-14  Alexander Larsson  <alexl@redhat.com>
314
315         * docs/README.linux-fb:
316         Add some example config files that can be used with the URW fonts.
317         
318         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
319         Set up the color ramps for DirectColor mode.
320
321 2001-06-11  Havoc Pennington  <hp@redhat.com>
322
323         * Release 1.3.6
324          
325 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
326
327         * gdk/linux-fb/gdkwindow-fb.c:
328         Unify shaped window code and make it repaint the area that used
329         to be part of the shape, but isn't anymore.
330
331 2001-06-11  Havoc Pennington  <hp@redhat.com>
332
333         * NEWS: Updates
334
335         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
336
337         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
338         
339 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
340
341         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
342         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
343         passes zero instead, so do we.
344         
345 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
346
347         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
348         Deep copy dash_list too.
349         (_gdk_fb_gc_new): Set default cap_style before
350         setting values.
351
352 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
353
354         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
355         gdk_keymap_get_direction): New functions.
356
357 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
358
359         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
360         gtk_tree_model_get_flags by adding a second flag for atk.
361
362         * gtk/gtktreemodel.c: make cursor behavior interact better with
363         mouse presses.
364
365 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
366
367         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
368         expand_row/collapse_row to be 2 signals each -- test_expand_row
369         and row_expanded as well as test_collapse_row and row_collapsed.
370
371 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
372
373         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
374         signal name to be changed instead of selection_changed.
375
376 2001-06-08  Havoc Pennington  <hp@redhat.com>
377
378         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
379         "scroll_offset" property for notification when the layout offsets
380         may have changed
381         (gtk_entry_adjust_scroll): add notify for scroll_offset
382         (gtk_entry_layout_index_to_text_index): function to compensate for
383         preedit string when doing coordinate stuff on the entry's layout
384         (gtk_entry_text_index_to_layout_index): inverse function
385         (gtk_entry_get_layout_offsets): hook to get current position of
386         the layout      
387         (gtk_entry_get_layout): hook to get the layout itself.
388
389         * gtk/gtklabel.c (gtk_label_get_layout): new function
390
391 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
392
393         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
394         keybinding.
395         (gtk_tree_view_focus): Fix merge conflict.
396
397 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
398
399         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
400         clean up cursor handling.
401
402 2001-06-08  Havoc Pennington  <hp@redhat.com>
403
404         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
405         function
406
407         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
408         this function
409
410 2001-06-08  Alex Larsson  <alexl@redhat.com>
411
412         * gtk/gtkcompat.h.in:
413         Added compat macros for all old GTK_TYPE_GDK_xxx types.
414         Fixes bug #52892
415
416 2001-06-08  Havoc Pennington  <hp@redhat.com>
417         
418         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
419         parent still
420
421 2001-06-08  Havoc Pennington  <hp@redhat.com>
422
423         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
424         don't call g_list funcs on GSList
425
426         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
427         gtk_container_focus(), since some widgets have focusable locations
428         which are not other widgets. These widgets should not have to be 
429         containers just to manage the focus. For example, GtkHSV is
430         currently a container for no good reason. Also, this cleans
431         up the "if (is_container && is_sensitive && is_drawable)
432         container_focus ()" mess in widget implementations.
433
434         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
435         function, and have it just call gtk_widget_child_focus().
436
437         * gtk/gtkhsv.c: derive from widget not container
438         
439         Throughout: fix to reflect GtkContainer::focus change
440         
441 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
442
443         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
444         range.  Fix bug #55921
445
446         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
447         (#55920).
448
449 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
450
451         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
452         and gdk_keymap_get_current_direction().
453
454         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
455           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
456         the current locked group, use it to set the keymap
457         direction.
458
459         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
460         to determine whether we draw a split cursor or use
461         a jumping cursor based on the current direction.
462
463         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
464         Obey the split cursor setting. 
465
466 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
467
468         * gtk/gtkimmulticontext.c (activate_cb): Only activate
469         when toggling on, not when toggling off... (#55906)
470
471 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
472
473         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
474         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
475         in docs. (#55812, Vitaly Tishkov)
476
477 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
478
479         * demos/gtk-demo/main.c (create_tree): Changed signal name from
480         selection_changed to changed in signal connection to GtkTreeSelection,
481         also used g_signal_connectc since GtkTreeSelection is now a GObject.
482
483 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
484
485         * gtk/gtktreeselection.c: Now it's a GObject instead of a
486         GtkObject.  The GtkTreeSelection::selection_changed signal is now
487         the GtkTreeSelection::changed signal.
488
489         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
490         object.
491
492         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
493         object.
494
495 2001-06-07  Havoc Pennington  <hp@redhat.com>
496
497         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
498
499 2001-06-07  Havoc Pennington  <hp@redhat.com>
500         
501         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
502         (not tested yet because with absolute path to srcdir I can't build
503         atk, but it was broken anyway so this may help) 
504
505 2001-06-07  Havoc Pennington  <hp@redhat.com>
506
507         * configure.in: output m4macros/Makefile
508         
509 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
510
511         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
512         buttons.  Fixes #55460 reported by matthiasc@poet.de.
513
514 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
515
516         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
517         expansion/collapsing so it only happens in one place.
518         (gtk_tree_view_real_expand_row): ditto.
519
520 2001-06-07  Havoc Pennington  <hp@redhat.com>
521
522         * tests/Makefile.am: add missing -I flag
523
524         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
525
526         * configure.in: use pkg-config to see if GModule is
527         supported; fix to properly turn on included loaders 
528         when GModule isn't supported; don't use AC_CHECK_LIB 
529         when libs are not installed yet
530
531         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
532
533         * Makefile.am (SUBDIRS): add m4macros subdir
534
535         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
536         dependencies also.
537
538 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
539
540         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
541         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
542
543 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
544
545         * gtk/gtktreeview.c
546         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
547         bindings to expand and collapse rows.
548         (gtk_tree_view_real_select_cursor_parent): New key binding.
549         (gtk_tree_view_real_toggle_cursor_row): New key binding.
550
551         * gtk/gtkmarshal.list: new
552         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
553
554 2001-06-06  Havoc Pennington  <hp@redhat.com>
555
556         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
557
558         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
559         Down to move visually rather than logically, since it confuses 
560         people. Add -/+ and Ctrl--/+ bindings for logical movement.
561
562 2001-06-06  Alex Larsson  <alexl@redhat.com>
563
564         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
565         Fix up error messages.
566
567 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
568
569         * gtk/gtktooltips.h: Include gtkwidget.h 
570         (#55798, Karl Nelson)
571
572         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
573         a valid latin-1 character. (Marc Lehmann, #35467)
574
575         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
576         (Marc Lehmann, #35467)
577         
578 2001-06-05  Alex Larsson  <alexl@redhat.com>
579
580         * demos/gtk-demo/appwindow.c (do_appwindow):
581         Don't swap the order of the args to gtk_widget_destroyed.
582
583         * tests/testgtk.c (destroy_properties):
584         Don't crash when the properties window is destroyed.
585
586         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
587         Use with_mnemonics to handle the case of stock items with
588         underscores in them.
589
590 2001-06-05  Havoc Pennington  <hp@redhat.com>
591
592         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
593         gtk_text_iter_reorder
594
595 2001-06-05  Havoc Pennington  <hp@redhat.com>
596
597         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
598
599 2001-06-05  Havoc Pennington  <hp@redhat.com>
600
601         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
602         to the range that was set
603
604         * gtk/gtkrange.c: add value_changed signal, primarily 
605         intended for use with GtkScale
606         (gtk_range_set_increments): new function
607         (gtk_range_set_range): new function with weird name
608         (gtk_range_set_value): new function
609         (gtk_range_get_value): new function
610
611         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
612         from gtk_spin_button_get_value_as_float(). Compat #define
613         added for get_value_as_float.
614
615         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
616
617         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
618
619 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
620
621         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
622
623 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
624
625         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
626
627         * tests/testgtk.c (create_tooltips): Remove usage of
628         gtk_widget_set().
629
630 2001-06-05  Havoc Pennington  <hp@redhat.com>
631
632         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
633
634         Applying patch from Jeff Franks, with function docs added.
635         
636         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
637         remove call to set_mnemonic_widget, change docs a bit.  
638
639         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
640         new function
641
642         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
643         new function
644
645         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
646
647         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
648         function
649         (gtk_radio_button_new_with_mnemonic_from_widget): new function
650
651         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
652         new function
653
654         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
655         function        
656
657         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
658         auto-selection of mnemonic widget.
659
660 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
661
662         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
663         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
664         (gtk_tree_view_column_set_min_width): ditto.
665
666 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
667
668         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
669         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
670
671 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
672
673         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
674         gtk_clist_thaw().
675
676 2001-06-04  Havoc Pennington  <hp@pobox.com>
677
678         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
679         releases for buttons 6, 7
680
681 2001-06-04  Havoc Pennington  <hp@redhat.com>
682
683         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
684         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
685         #55562
686
687 2001-06-04  Havoc Pennington  <hp@redhat.com>
688
689         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
690         where text_view->layout == NULL by assuming its size is 0, 
691         i.e. same as if we haven't done any reflow. Reported by 
692         Hidetoshi Tajima #55448 
693
694 2001-06-04  Havoc Pennington  <hp@redhat.com>
695
696         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
697         and 7 for scroll left/right, from Thomas Broyer
698
699 2001-05-10  Havoc Pennington  <hp@redhat.com>
700
701         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
702         we need to parse the xsetting as if it were an RC file string.
703
704         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
705         value of palette from settings, not from static variable
706
707         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
708         xsettings translation table
709
710         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
711         hardcoding the toolbar style conflicts with new customizable 
712         toolbar style philosophy
713         (gtk_toolbar_class_init): add settings for default toolbar style;
714         these are used unless the app specifically forces a toolbar style
715
716         * gtk/gtksettings.c (settings_install_property_parser): only
717         return at the start if we warn and parser == NULL
718
719         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
720         palette changed handler so we don't notify dead color selections
721
722         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
723         xthickness/ythickness of 0 or 1 properly 
724         (gtk_default_draw_resize_grip): clear the background behind the
725         resize grips, and align to bottom right if we square the 
726         area to be drawn.
727
728         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
729         statusbar label to 1, so it doesn't make toplevels resize oddly
730         (gtk_statusbar_size_request): add grip size to request
731         (gtk_statusbar_size_allocate): hack so the hbox still works with 
732         the grip size in the request
733
734         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
735         bug where showing all on a toplevel makes the toolbar 
736         button text appear despite the toolbar mode
737
738         * gtk/gtkmenubar.c: add internal padding style property
739
740         * gtk/gtktoolbar.c: Add internal padding style property; add
741         shadow type style property
742
743         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
744         state; and put Container::border_width outside the frame
745
746         * gtk/gtktextview.c: don't draw focus rectangle if we're in
747         interior focus mode, we just use blinking cursor
748
749 2001-06-04  Havoc Pennington  <hp@redhat.com>
750
751         * configure.in: Make gdk-pixbuf have same version number as GTK
752
753 2001-06-04  Havoc Pennington  <hp@redhat.com>
754
755         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
756         digits greater than 6. If there actually are limits (which there
757         likely aren't), should clamp to them not warn.
758         (gtk_spin_button_new_with_range): don't take log of 0
759         (gtk_spin_button_size_request): use digits to compute size
760         request, rather than step increment.
761
762         * tests/testgtk.c (create_spins): test larger values of digits
763         
764         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
765         font on map not expose, so we don't get weirdness during scrolling
766
767 2001-06-04  Havoc Pennington  <hp@redhat.com>
768
769         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
770         Sam Solon, bug #54577, update value even if not drawable.
771
772 2001-06-04  Havoc Pennington  <hp@redhat.com>
773
774         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
775         SCROLL_LEFT, reported by Thomas Broyer.
776
777 2001-06-04  Havoc Pennington  <hp@redhat.com>
778
779         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
780         Process updates immediately, to prevent funny lag effect
781         when scrolling, at some mild potential efficiency cost.
782
783 2001-06-04  Havoc Pennington  <hp@redhat.com>
784
785         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
786         slider on the click.
787
788 2001-06-03  Havoc Pennington  <hp@pobox.com>
789
790         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
791         hscale/vscale details, so we can use it for scrollbar as well.
792
793         * tests/testgtk.c (reformat_value): honor digits from GtkScale
794
795         * gtk/gtkenums.h (GtkTroughType): Remove this enum
796         (GtkScrollType): add START and END from GtkTroughType
797
798         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
799         its x/y arguments
800
801         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
802         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
803         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
804         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
805         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
806
807         Notable changes in the process:
808          
809         - stepper_size style property is the height for vertical 
810           ranges, width for horizontal; the other dimension matches
811           the trough size
812         - add ability to do NeXT-style steppers (and several other styles
813           that don't make any sense)
814         - added min_slider_length, fixed_slider_length properties to
815           GtkScrollbar
816         - cleaned some private (or at least useless) functions out of
817           gtkscale.h    
818         - moved bindings to GtkScale from subclasses, even arrow keys,
819           since blind users don't know scale orientation.
820         - change move_slider action signal to use new GtkScrollType,
821           remove GtkTroughType argument
822         - digits rounds the values a range will input to the given 
823           number of decimals, but will not try to force adjustment 
824           values set by other controllers. That is, we no longer
825           modify adjustment->value inside a value_changed handler.
826         - added getters for GtkScale setters
827         - middle-click begins a slider drag
828         
829 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
830
831         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
832         getting the focus code to work.
833         (gtk_tree_view_class_init): Add a bunch of keybindings.
834
835         * gtk/gtktreeviewcolumn.c
836         (gtk_tree_view_column_set_cell_data_func):
837         s/GtkCellDataFunc/GtkTreeCellDataFunc.
838         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
839         of "properties_changed" to help justify the death of the latter
840         signal. (-:
841
842         * tests/testtreefocus.c (main): Let some columns be focussable to
843         test focus better.
844
845 2001-06-01  Havoc Pennington  <hp@redhat.com>
846
847         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
848         
849         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
850         overwrite in overwrite mode if we already deleted the selection
851         and replaced it with new text.  
852
853         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
854         selection to an empty range, clear the clipboard if we owned it.
855         (gtk_label_set_selectable): give up selection if we become
856         unselectable.
857         (gtk_label_state_changed): override state changed to unselect text
858         when insensitive
859         (get_text_callback): add paranoia check that indexes aren't
860         outside of label->text
861         (gtk_label_select_region): make -1 for start_offset mean "end of
862         label," for consistency with GtkEditable
863
864         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
865         GTK_DIALOG_NO_SEPARATOR flag
866
867 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
868
869         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
870         notifications on non-existant "enable_arrow_keys".
871         (#53753, Skip Montanaro)
872
873 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
874
875         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
876         GDK_TYPE_RECTANGLE.
877
878         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
879         of allocation argument be GDK_TYPE_RECTANGLE.
880
881 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
882
883         * gtk/gtkoptionmenu.c: Account for the fact that the border
884         width is _outside_ the window. (Fixes #54585, bug found
885         by Bastien Nocera.)
886
887 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
888
889         * gtk/gtksettings.c (gtk_settings_get_property): Validate
890         value from GDK settings against parameter spec.
891
892         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
893         to temporary values and use g_value_transform(), since
894         thinking that GValue was going to be easy or efficient
895         to use was, of course, a mistake.
896
897         * gtk/gtksettings.c: Add cursor blink setting.
898         
899         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
900
901         * gtk/gtkentry.c: Add cursor blinking.
902
903         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
904         cursor blink global settings.
905
906         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
907         for :text_position in places where it is missing.
908
909 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
910
911         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
912
913 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
914
915         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
916         not pkg-config. (#51032)
917
918         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
919         (fixes #51952, James Henstridge)
920         
921 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
922
923         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
924         Rename to the more correct gtk-go-up.
925
926         * gtk/stock-icons/stock_menu_sort_ascending.png:
927         Added new file.
928         
929         * gtk/stock-icons/stock_menu_sort_descending.png:
930         Changed to show descending instead of ascending.
931
932         * gtk/gtkiconfactory.c:
933         Added menu size icon to sort ascending.
934
935         * gtk/stock-icons/Makefile.am:
936         Added stock_menu_sort_ascending.png.
937         
938         * gtk/gtkseparatormenuitem.c:
939         Use correct typenames.
940
941 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
942
943         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
944         gulong as in GSignal.
945
946 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
947
948         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
949         instances of GtkCellRenderer in code (all but dnd icon code).
950         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
951         there, and I can do multiple Cells per column.
952
953         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
954
955         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
956         when model was unreffed prior to removing the row reference.
957
958 2001-05-25  Havoc Pennington  <hp@redhat.com>
959
960         * gtk/gtkiconfactory.c: fix so that default icons are created if 
961         you call gtk_stock_list_ids()
962
963         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
964         in list
965
966 2001-05-25  Havoc Pennington  <hp@redhat.com>
967
968         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
969         set can render without falling back to missing image icon
970
971         * gtk/gtktextview.c (gtk_text_view_size_request): request full
972         size of text, instead of random values
973
974         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
975         size of tree view, instead of random values
976
977         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
978         image in an appropriate size
979
980         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
981         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
982
983         Throughout: fix GTK_STOCK_BUTTON_ instances
984         
985         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
986         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
987         Add a bunch of new stock items/icons
988
989         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
990         new function, convenience for inserting columns with a data func
991
992         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
993         (_gtk_icon_factory_list_ids): use list of all factories to
994         generate a list of all known IDs
995
996         * gtk/gtkstock.c (gtk_stock_list_ids): replace
997         gtk_stock_list_items() with a function that returns all IDs known
998         including those for GtkIconFactory.
999
1000 2001-05-25  Hans Breuer  <hans@breuer.org>
1001
1002         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
1003         work -> check boxes and radio buttons are drawn now, even on win9x.
1004         Improved line settings a bit, still no clue how to get really dotted
1005         lines on win9x, on NT it's PS_ALTERNATE.
1006
1007         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
1008         GDK_HINT_MIN_SIZE as well
1009
1010         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
1011
1012         * gtk/gtk.def : updated
1013
1014         * gtk/gtktreeprivate.h : change column_drop_func to be a function
1015         pointer not a function pointer pointer
1016
1017         * tests/testdnd.c : include <stdlib.h> for putenv prototype
1018
1019         * tests/testsocket.c : made it compile on win32 again
1020
1021         * tests/makefile.msc : one more test-app uses prop-editor.obj
1022
1023 2001-05-22  Havoc Pennington  <hp@pobox.com>
1024
1025         * gtk/gtkbin.c (gtk_bin_get_child): New function
1026
1027 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
1028
1029         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
1030         to ignore when doing compose processing.
1031
1032 2001-05-22  Joe Shaw  <joe@ximian.com>
1033
1034         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
1035         Simplify as suggested by Havoc. Just get the last iter and work
1036         backward to the tag instead of getting a line and working back from
1037         there. Fixes passing in an invalid offset to
1038         iter_init_from_byte_offset().
1039
1040 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
1041
1042         * gtk/gtktreeview*.h: 
1043         * gtk/gtkcell*.h:
1044         * gtk/gtk*store.h:
1045         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
1046         macros to all objects.
1047
1048 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
1049
1050         * gtk/gtkcellrenderertext.c
1051         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
1052         with very large (TM) amounts of text.  May be moved to
1053         GtkCellRenderer in the future, though I'm not sure it wants to be
1054         this accessible.
1055
1056         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
1057         More sanity brought to this class.  I like it.
1058
1059         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
1060         case.  Kids, don't try this at home.
1061
1062         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
1063         convenience function.
1064
1065         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
1066
1067 2001-05-21  Alexander Larsson  <alexl@redhat.com>
1068
1069         * gtk/gtkfontsel.c:
1070         Added properties. Based on patch by Lee Mallabone.
1071
1072         * gtk/gtkruler.c:
1073         * gtk/gtkhruler.c:
1074         * gtk/gtkvruler.c:
1075         * gtk/gtktext.c:
1076         * gtk/gtktextview.c:
1077         Converted GtkArg to GParam. Based on patches by John Margaglione.
1078
1079         * tests/Makefile.am:
1080         * tests/testtext.c:
1081         Add a property editor to testtext.
1082         
1083 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
1084
1085         * gtk/gtk{h,v,}paned.c: Only show the separator if 
1086
1087         * configure.in: Fixed reversed conditional causing all image
1088         libraries to be linked in.
1089
1090 2001-05-21  Joe Shaw  <joe@ximian.com>
1091
1092         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
1093         that top_y needs to be >= 0.
1094
1095 2001-05-11  Havoc Pennington  <hp@pobox.com>
1096         
1097         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
1098         losing connection to the X server.
1099
1100 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
1101
1102         * configure.in: Start checks for X from pangox/pangoxft
1103         CFLAGS to avoid duplicate libraries.
1104
1105         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
1106
1107         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
1108         to include gobject.
1109         
1110 2001-05-18  Alexander Larsson  <alexl@redhat.com>
1111
1112         * gtk/gtkspinbutton.c:
1113         Convert GtkArgs to GParams. Based on patch by John Margaglione.
1114         Also do size request reasonable for MAXDOUBLE. Previously it printed
1115         the limits to a buffer and overran it. Instead do it using log10() and
1116         limit the width to 10 digits.
1117         
1118         * gtk/gtkwidget.c (gtk_widget_get_property):
1119         Correctly handle setting the parent property to NULL.
1120
1121 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
1122
1123         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
1124         style attributes even if the widget isn't realized.
1125
1126         * demos/gtk-demo/main.c: Use a slightly smaller font.
1127
1128 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
1129
1130         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
1131         This is something that only a widget writer would ever want
1132         to change.
1133
1134         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
1135         gtk_signal_emit_by_name().
1136
1137         * gtk/gtkviewport.c: Fix some warnings.
1138
1139         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
1140         allowing the requisitions of multiple widgets to be grouped
1141         together.
1142
1143         * tests/testgtk.c: Add GtkSizeGroup test
1144
1145         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
1146
1147         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
1148         warnings.
1149
1150         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
1151
1152 2001-04-28  Martin Baulig  <baulig@suse.de>
1153
1154         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
1155         to gtk_image_menu_item_set_icon() and made it work if there's already
1156         an image.
1157         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
1158         (gtk_image_menu_item_new_with_label): New function.
1159
1160 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
1161
1162         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
1163         highlighting code!!!!  The result is okay so long as you don't try
1164         to stress it.  It also highlights a bug in the TextView so it's in
1165         an unproportional font right now until it's fixed.
1166
1167         *demos/gtk-demo/*.c: Clean up code a bit to make it
1168         ugly-parser(TM) friendly. (-:
1169
1170 2001-05-17  Joe Shaw  <joe@ximian.com>
1171
1172         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
1173         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
1174         if it is only partially onscreen.
1175
1176 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
1177
1178         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
1179         not by characters.
1180
1181         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
1182         are not zero or one; that is, when graphemes of multiple characters
1183         are involved.
1184
1185         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
1186         FIXME.
1187
1188 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
1189         
1190         * gtk/gtkbbox.c:
1191         Add properties, based on patch by Lee Mallabone.
1192
1193         * gtk/gtknotebook.c:
1194         * gtk/gtktoolbar.c:
1195         Convert from GtkArg to GParam, based on patch by John Margaglione.
1196         
1197         * gtk/gtkhscale.c:
1198         * gtk/gtkvscale.c:
1199         * gtk/gtkhscrollbar.c:
1200         * gtk/gtkvscrollbar.c:
1201         * gtk/gtkrange.c:
1202         Move adjustment property to GtkRange.
1203
1204         * gtk/gtklabel.c:
1205         Setup mnemonics on property changes
1206
1207         * gtk/gtkwidget.c (gtk_widget_get_property):
1208         GdkExtensionMode is an enum, not a flag. Set it with
1209         g_value_set_enum ().
1210
1211         * tests/prop-editor.c:
1212         Better propery editor.
1213
1214         * tests/testgtk.c:
1215         Add new property test. Pass zero to the property editor to
1216         get properties from all derived types.
1217         
1218 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
1219
1220         * autogen.sh (have_automake): Require libtool-1.4,
1221         automake-1.4p1.
1222
1223         * acinclude.m4: Remove libtool macros.
1224
1225         * gdk-pixbuf/Makefile.am: Add dependencies to loade
1226         modules.
1227
1228         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
1229         for libgdk.
1230
1231         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
1232         libgdk.la for libgtk.
1233
1234         * modules/input/Makefile.am: Make modules have full
1235         dependencies.
1236
1237 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
1238
1239         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
1240         #54699 where paths weren't being checked for correctness.
1241
1242 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
1243
1244         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
1245         in any order you wan, whether or not the column is added to the
1246         tree, or the tree is realized.  Yay!
1247
1248         * gtk/gtktreeviewcolumn.c
1249         (gtk_tree_view_column_setup_sort_column_id_callback): handle
1250         sorting columns a lot saner
1251
1252         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
1253         new function to actually set wether or not a column is
1254         reorderable.
1255
1256         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
1257         if we have 'em.
1258
1259         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
1260         Fix nasty bug where we were showing the button just before
1261         realizing it.  As a result, the parent window was
1262         tree_view->window instead of tree_view->priv->header_window.
1263
1264         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
1265         to let you easily reorder a list or tree.
1266
1267 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
1268
1269         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
1270         from args to properties.
1271
1272 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
1273
1274         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
1275         from args to properties. (#51957)
1276
1277         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
1278         calls to after ->set_property call.
1279
1280 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
1281
1282         * tests/prop-editor.c: Block against redundant changes.
1283
1284         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
1285         properties.
1286
1287 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
1288
1289         * gdk/gdkpixmap.h: Remove creative formatting.
1290
1291 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
1292
1293         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
1294         property API. (#51669)
1295
1296         * gtk/gtkscale.c: Patch from John Margaglione converting to
1297         property API. (#51891)
1298
1299         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
1300         to property API. (#50985)
1301
1302 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
1303
1304         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
1305         buffering state across expose event, so we still call end_paint().
1306
1307 2001-05-11  Alexander Larsson  <alexl@redhat.com>
1308
1309         * gtk/gtkhsv.c (paint_triangle):
1310         Expose the ring in the triangle at the correct place when
1311         exposing just a part of the triangle.
1312
1313         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
1314         Return FALSE, or window focusing will not work.
1315
1316 2001-05-11  Havoc Pennington  <hp@pobox.com>
1317
1318         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
1319         #54144
1320
1321         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
1322         bug #54330
1323
1324 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
1325
1326         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
1327         propagate exposes to NULL child.
1328
1329         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
1330         against not having one of the scrollbars.
1331
1332         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
1333         we don't keep a mnemonic window if we have no mnemonic installed.
1334
1335 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
1336
1337         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
1338         it has the _important_ side effect of initializing a class.
1339
1340 2001-05-10  Alexander Larsson  <alexl@redhat.com>
1341
1342         * gdk/linux-fb/gdkprivate-fb.h:
1343         Make sure you can compile out the implementation/wrapper assert
1344         macros.
1345
1346         * gdk/linux-fb/gdkdrawable-fb2.c:
1347         Check implementation/wrappers, initialize type for pixmap dummys.
1348
1349         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
1350         Hide the cursor if reading from the screen.
1351
1352         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
1353         Fix sign bug in tiling code.
1354
1355         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
1356         Handle background pixmaps.
1357
1358 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
1359
1360         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
1361         function to let user control where columns are dragged.
1362
1363         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
1364         Escape is pressed.
1365
1366 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
1367
1368         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
1369         "columns_changed" signal.
1370         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
1371         motion code to draw arrows to the side if indicator is outside the
1372         widget.
1373         (gtk_tree_view_map_expanded_rows): Implement.
1374
1375 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1376
1377         * demos/testpixbuf-save.c: 
1378         * demos/testpixbuf-drawable.c:
1379         Include gdkfb.h on linux-fb.
1380
1381 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1382
1383         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
1384         New function for getting toplevel window at position.
1385         (gdk_drag_find_window): Use get_toplevel_window () instead
1386         of gdk_window_get_pointer(). (gdk_drag_status): Use
1387         correct context for getting window.
1388
1389         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
1390         g_strdup the atom name.
1391
1392         * gdk/linux-fb/gdkwindow-fb.c:
1393         Costmetic fix.
1394
1395         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
1396         Add code for changing cursor on linux-fb backend (same as
1397         win32).
1398
1399 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
1400
1401         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
1402         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
1403         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
1404         report was not for the development branch of GTK+, but it applies
1405         anyways).
1406
1407 2001-05-04  Havoc Pennington  <hp@redhat.com>
1408
1409         * configure.in: fix some shell typos
1410
1411         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
1412
1413         * gtk/gtkimage.c: handle animations
1414
1415         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
1416         border_width * 2, not just border_width
1417
1418         * gtk/gtkscale.c: add "format_value" signal to allow people
1419         to override the way values are drawn.
1420         (gtk_scale_get_value_size): fix width/height mistake,
1421         and compute size from actual displayed text, not 
1422         from made-up text.
1423
1424         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
1425         signal registration
1426
1427         * tests/testtext.c: Add "Remove all tags" menu item for testing
1428
1429         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
1430
1431         * demos/gtk-demo/main.c (main): add hack so we can find modules
1432         without installing gtk
1433
1434         * demos/gtk-demo/textview.c (insert_text): demo font scaling
1435
1436         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
1437         factor)
1438         (gtk_cell_renderer_text_set_property): remove some bogus
1439         g_object_notify
1440
1441         * gtk/gtktexttag.c: add "scale" property which is a font scaling
1442         factor
1443
1444         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
1445         to layout
1446
1447         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
1448         gtk_text_iter_is_first
1449
1450 2001-01-06  Hans Breuer  <hans@breuer.org>
1451
1452         * gdk/gdk.def : updated exports
1453
1454         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
1455         gdk won't compile anymore
1456  
1457         * gdk/win32/gdkevents-win32.c : initialize ret_val when
1458         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
1459         Improved gdk_flush () to not only do pending drawing operations
1460         but also process all currently pending events. This should make
1461         the behaviour more similar to the X11 version.  
1462
1463         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
1464         option needs to be set even if there is no GDK_GC_BACKGROUND.
1465         (gdk_win32_hdc_get) : use predraw_set_background () independent
1466         of value_mask. This allows to draw dashed lines leaving the original
1467         background intact.
1468
1469         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
1470         after processing, because we can't reuse it as the X11 version does.
1471
1472         * gtk/gtk.def : updated exports
1473
1474         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
1475         would like to get rid of this file again, and use straight
1476         makefile.msc again, as the other Gtk+ subdirs do)
1477
1478         * test/makefile.msc (new file) : build the test apps here
1479
1480 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
1481
1482         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
1483         strike-through setting
1484         (gdk_draw_layout_line_with_colors): Render strike-through
1485
1486 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
1487
1488         * Release 1.3.5
1489
1490         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
1491
1492         * NEWS: Updated
1493
1494         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
1495         Makefile breakage.
1496
1497 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
1498
1499         * demos/gtk-demo/images.c (progressive_timeout): Fix
1500         typo in filename.
1501
1502         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
1503         out FIXME warning; just too annoying.
1504
1505 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
1506
1507         * gdk/linux-fb/gdkcolor-fb.c:
1508         Better error messages.
1509
1510         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
1511         Initialize abs_x and abs_y.
1512         
1513         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
1514         Correct handling of stipple offset.
1515
1516         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
1517         Treat directcolor framebuffers as truecolor.
1518         
1519 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
1520
1521         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
1522         dependency on Atk for accessibility support.
1523
1524         * configure.in **/Makefile.am: Major reworking of substituted
1525         variables for CFLAGS/LIBS to make a lot more sane and 
1526         keep the the compile/link lines a bit shorter.
1527
1528         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
1529
1530 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
1531
1532         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
1533         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
1534         use _gtk_boolean_handled_accumulator.
1535
1536 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
1537
1538         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
1539         to fix things so clicking inside selection leaves cursor
1540         at point where clicked. (#50324)
1541
1542         * gtk/gtksettings.c (gtk_settings_class_init): Restore
1543         sane value for default double click time.
1544
1545         * tests/testtext.c (test_init): Really path to input modules.
1546
1547 2001-05-03  Sven Neumann  <sven@convergence.de>
1548
1549         * demos/testpixbuf-save.c: include target-specific headers as
1550         done in testpixbuf-drawable.c
1551
1552 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
1553
1554         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
1555         new_text_length appropriately when we run into the 
1556         size limit for the entry. (#53445, reported by Jeff Franks)
1557
1558         * tests/testgtk.c (create_entry): Remove most of the
1559         property toggle buttons. Replace with a "Props" button
1560         that brings up a property editor.
1561
1562         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
1563         Split the property editor code out for reuse, improve.
1564
1565 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
1566
1567         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
1568         trap errors around calls to XSetInputFocus since we have
1569         no way of knowing reliably whether we are viewable or
1570         not. (#53947)
1571
1572 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
1573
1574         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1575         fix bug in dropping columns.  Moving columns now basically works
1576         modula some fine tuning.
1577
1578 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
1579
1580         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
1581         autoscroll support.  It mostly works, but could use some fine
1582         tuning.
1583         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1584         Actually move the column.
1585
1586 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
1587
1588         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
1589           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
1590           New default theme! A slighly improved version of the 2.0 Raleigh
1591           theme, with Windows-esque focus/drawing default. 
1592           (GtkWidget::interior_focus defaults to TRUE.)
1593
1594         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
1595
1596 2001-04-30  Havoc Pennington  <hp@pobox.com>
1597
1598         * tests/testtext.c (line_numbers_expose): fix to work with
1599         gtk_paint_layout change
1600
1601 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
1602
1603         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
1604           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
1605           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
1606           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
1607
1608         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
1609           with GtkWidget::interior_focus = TRUE better.
1610
1611         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
1612         ::default_outside_border for more flexibility.
1613
1614         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
1615         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
1616         change that had to be made with g_object_get.
1617
1618 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
1619
1620         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
1621         (gtk_tree_view_move_column_after): Clean up interface. 
1622
1623 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
1624
1625         * gtk/gtkpacker.h:
1626         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
1627          to gtkenum.h.
1628
1629         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
1630         handled in switch).
1631
1632         * gtk/Makefile.am:
1633         (gtk.defs): generate enum portions with  glib-mkenums.
1634         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
1635         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
1636         
1637         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
1638         addition.
1639
1640         * docs/Changes-2.0.txt: keep a note on signal handlers now
1641         not getting emitted during the emission they were connected within.
1642
1643 2001-04-28  Havoc Pennington  <hp@pobox.com>
1644
1645         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
1646
1647 2001-04-24  Havoc Pennington  <hp@redhat.com>
1648
1649         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
1650         (gtk_text_layout_move_iter_to_next_line): fix these two for
1651         invisible text, lots of other stuff still hosed.
1652
1653         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
1654         new function, replaces the get/set palette stuff. This function 
1655         is intended for use by libgnomeui which should set the hook to a
1656         thing which sets the palette in GConf, and we need the
1657         GConf-to-xsettings proxy which will result in the change being
1658         propagated back to the GTK app.
1659
1660         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
1661         about unusable signals that it may be because the signal has 
1662         parameters.
1663
1664         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
1665         style, otherwise gtkrc.c won't know to create a new GtkStyle for
1666         it.
1667         (gtk_widget_modify_color_component): call
1668         gtk_widget_modify_style() so the rc style will get copied.
1669         (gtk_widget_modify_font): ditto
1670
1671         * gtk/gtkrc.c: make a couple variables static
1672
1673         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
1674         help button by default, since it does nothing
1675
1676         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
1677         around with UI
1678
1679         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
1680         so we can have tooltips
1681
1682         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
1683         can have tooltips
1684
1685         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
1686         GDK_ENABLE_BROKEN, because its memory behavior is completely
1687         hosed.
1688
1689         * gtk/gtknotebook.c: remove key press handler, replace with
1690         binding set, add numeric keypad support
1691
1692         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
1693
1694         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
1695
1696         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
1697         addition to plain Delete
1698
1699         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
1700         GDK_KP_Enter in addition to GDK_Return
1701
1702         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
1703         activate on entry instead of key press
1704         (gtk_font_selection_on_clist_key_press): get
1705         rid of this signal handler, not needed with new font sel.
1706
1707         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
1708         no-longer-needed emit_stop_by_name(), just return TRUE
1709
1710         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
1711         cruft, this widget is no longer focusable.
1712
1713         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
1714         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
1715         move_slider action signal, add binding set for vscale/hscale, in
1716         the process support numeric keypad
1717
1718         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
1719         make GDK_Return and GDK_KP_Enter activate the entry via 
1720         binding set, instead of hardcoded.
1721
1722 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
1723
1724         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
1725         code.  Some documentation added.
1726
1727 2001-04-27  Havoc Pennington  <hp@redhat.com>
1728
1729         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
1730
1731         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
1732
1733         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
1734         line/para separators
1735         (gtk_entry_create_layout): set single paragraph mode on the layout
1736
1737         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
1738         spacing between the image and label; instead, inside a button box 
1739         the button will get extra space that will go there, but if people 
1740         configure button box for 0 chubbiness, then there's no spacing.
1741
1742         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
1743         and min/max size style properties, so people can tune their
1744         chubbiness.
1745
1746         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
1747         functions
1748
1749         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
1750         space_style, and button_relief into style properties, remove
1751         functions for setting them
1752         
1753         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
1754         it back down
1755
1756         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
1757         types from gtk_widget_style_get
1758
1759         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
1760         with a style property.
1761
1762         * gdk/x11/gdkevents-x11.c: namespace the settings
1763
1764         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
1765
1766         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
1767         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
1768         be used. Also, translate doc strings for settings. Also, namespace
1769         the double-click-time property. Also, remove bell properties crap.
1770
1771 2001-04-27  Sven Neumann  <sven@gimp.org>
1772
1773         * Makefile.am: before creating links, check if pkg-config files
1774         exist for the default target. Otherwise link to the pkg-config files
1775         that got installed with this build.
1776
1777 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
1778
1779         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
1780         dragging code.  Revealed some (potential) GdkWindow bugs.
1781
1782         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
1783         _gdk_window_init_position to the end of reparent to fix the case
1784         of reparenting when new_x != old_x and new_y != old_y.
1785
1786 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
1787
1788         * gtk/gtkentry.c (strstr_len): Fix optimization that
1789         was correct for the use here, but completely incorrect
1790         in general.
1791
1792 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
1793
1794         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
1795         until patch adding gtk_window_set_size() is recommitted. 
1796
1797         * **Makefile.am configure.in gdk/x11/gdkim-11.c
1798           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
1799           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
1800           (#10784)
1801
1802 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
1803
1804         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
1805         window == NULL in a number of cases.
1806
1807         * tests/testdnd.c: Set module path for gdk-pixbuf.
1808
1809 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
1810
1811         * gtk/Makefile.am xembed.h: File containing #defines
1812         for XEMBED protocol.
1813
1814         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
1815
1816         - Change protocol from old plug/socket specific protocol
1817           to XEMBED draft
1818         - Various fixes to work with GTK+-2.0
1819
1820         Still quite a bit of work to do here to handle initiation
1821         from the socket side (as specified by XEMBED), to handle
1822         the more advanced features of XEMBED, and to figure out
1823         a good way to handle same-app embedding with less overhead
1824         than using full XEMBED.
1825
1826 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
1827
1828         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
1829         track of whether the toplevel has the focus; only send
1830         focus-in events to the focus widget when the window
1831         actually has the focus.
1832
1833 2001-04-25  Havoc Pennington  <hp@pobox.com>
1834
1835         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
1836         were still in the header
1837
1838 2001-04-24  Alexander Larsson  <alexl@redhat.com>
1839
1840         * gtk/gtkclist.[ch]:
1841         * gtk/gtkctree.c:
1842         When there is a row highlighted for D'n'D it must alse
1843         be painted hightlighted on exposes. Otherwise exposes from
1844         the icon being dragged will mess up the hightlight.
1845
1846         * gtk/gtkfontsel.c:
1847         Don't recenter selected font when exposing the font family
1848         clist. This means you can now actually scroll the font family
1849         list.
1850
1851         * gtk/gtknotebook.c:
1852         Fix focus movement on scrolling tabs that are placed on the left
1853         and right.
1854
1855 2001-04-21  Havoc Pennington  <hp@pobox.com>
1856
1857         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
1858         empty/invisible lines.
1859
1860         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
1861         (gtk_text_iter_set_visible_line_index): new functions to set
1862         indexes excluding invisible text
1863
1864         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
1865         index
1866
1867         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
1868         (gtk_text_iter_get_visible_line_offset): new functions to 
1869         get indexes excluding invisible text
1870
1871         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
1872         bunch of extra padding that served no purpose
1873
1874         * gtk/gtkdialog.c: Make all the spacings configurable via style
1875         properties, for chubbiness configuration in themes
1876
1877         * tests/testtext.c: fix path to the immodules.
1878         
1879 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
1880
1881         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
1882         got munched by #endif.
1883
1884         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
1885
1886         * gtk/gtktreeview.c: Refactored code to clean up a number of
1887         events.
1888
1889         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
1890         values to make consistent with other functions.  Spotted by Jeff
1891         Franks <jcf@tpg.com.au>.
1892
1893         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
1894         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
1895
1896 2001-04-23  Sven Neumann  <sven@gimp.org>
1897
1898         * gtk/Makefile.am
1899         * gtk/gtkplug.c
1900         * gtk/gtksocket.c: on request of Owen, reverted my last change 
1901         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
1902
1903 2001-04-23  Sven Neumann  <sven@gimp.org>
1904
1905         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
1906         compile for non-X11 targets again
1907
1908 2001-04-20  Alexander Larsson  <alexl@redhat.com>
1909
1910         * gtk/gtkcolorsel.[ch]:
1911         API Change. Take GdkColor arguments instead of gdouble *.
1912         Leave the old gtk_color_selection_set_color for compatibility,
1913         but marked deprecated.
1914         Do correct rounding when converting RGB <-> HSV.
1915         
1916         * gtk/gtkcolorseldialog.c:
1917         * tests/testgtk.c:
1918         Use new GtkColorSelection API.
1919
1920         * gtk/gtkhsv.c:
1921         Fix problem selecting colors in triangle when Hue is 330.
1922         Fix some black dots around the HSB triangle.
1923         
1924         * gtk/gtkfilesel.c:
1925         return FALSE from the focus_in_event handler to fix focus problems.
1926
1927 2001-04-18  Havoc Pennington  <hp@redhat.com>
1928
1929         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
1930         set, so keybindings are configurable    
1931         (gtk_window_activate_default): Change to activate the focus widget
1932         instead if there's a focus widget, to be consistent with the
1933         behavior that previously existed in key_press_event
1934
1935 2001-04-18  Havoc Pennington  <hp@redhat.com>
1936
1937         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
1938
1939 2001-04-18  Havoc Pennington  <hp@redhat.com>
1940
1941         Close bug #50615:
1942         
1943         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
1944         the layout
1945
1946         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
1947
1948         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
1949
1950         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
1951         
1952         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
1953         to blue for base, in addition to bg
1954         
1955 2001-04-18  Havoc Pennington  <hp@redhat.com>
1956
1957         * tests/testgtk.c (create_image): allow shrinking the image window
1958         to test that we clip to allocation.
1959
1960         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
1961         #9845
1962
1963         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
1964
1965 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
1966
1967         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
1968         mode on shm segments to 0600. We'll see who complains.
1969
1970         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
1971         _gdk_windowing_window_destroy() AFTER recursing through
1972         children.
1973
1974         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
1975         testsocket_child on X.
1976
1977         * tests/testsocket[_child].c: Fix uses of
1978         gtk_window_get_default_accel_group().
1979
1980         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
1981
1982         * gdk/gdkimage.c: (gdk_image_get):
1983         Deal with the possibility that XGetImage() might return NULL.
1984         Allocate the GdkImagePrivate structure only after XGetImage()
1985         succeeds in order not to dereference a NULL ximage pointer.  This
1986         prevents a core dump when XGetImage() fails - which is unlikely,
1987         but can happen due to race conditions accessing the geometries of
1988         drawables.  An x error will still be triggered, but the gdk image
1989         wrapper at least wont seg fault.
1990         
1991 2001-04-18  Havoc Pennington  <hp@redhat.com>
1992
1993         * gtk/gtkimage.c: fix to properly queue resizes when the image is
1994         set
1995
1996         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
1997         if the insertion point isn't editable
1998
1999         * demos/gtk-demo/images.c: Added a GtkImage demo
2000
2001         * demos/gtk-demo/drawingarea.c: drawing area demo
2002         
2003         * demos/gtk-demo/menus.c (create_menu): cleanups
2004
2005 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
2006
2007         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
2008           gdk/x11/gdkevents-x11.c: Introduce an extra child
2009         of toplevel windows that serves to hold the focus to
2010         avoid events being delivered to embedded windows.
2011
2012         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
2013         some extra variables to clean up code and reduce the
2014         number of casts.
2015
2016         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
2017         guint for 1 bit bit fields, not gboolean.
2018
2019 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
2020
2021         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
2022         not TRUE. (Fixes #52925)
2023
2024 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
2025
2026         * Released 1.3.4
2027
2028         * NEWS: Updated
2029
2030         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
2031         use GTK_TYPE_ENUM.
2032
2033 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
2034
2035         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2036
2037         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
2038         names to compatibility #defines so docs work.
2039
2040         * gtk/gtkenums.h: Remove GtkMenuFactoryType
2041
2042         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
2043
2044         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2045
2046         * tests/testgtkrc: No magenta cursors, please.
2047
2048         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
2049
2050         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
2051         
2052 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
2053
2054         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
2055         grabs, since they are no longer necessary.
2056
2057         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
2058         by signal_connect() and call gtk_button_pressed() rather
2059         than signal_connect_after().
2060
2061         * tests/testgtk.c: Restore radio menu items to combos 
2062         since they'll look OK with Raleigh, and it is easier
2063         than finishing the process of removing them that was
2064         started earlier.
2065
2066 2001-04-16  Hans Breuer  <hans@breuer.org>
2067
2068         * gdk/gdk.def :
2069         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
2070
2071         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
2072         we are interested in the functions return value not the function address
2073         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
2074
2075         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
2076
2077 2001-04-14  Hans Breuer  <hans@breuer.org>
2078
2079         * gdk/gdk.def :
2080         * gdk/makefile.msc : updated
2081
2082         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
2083         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
2084         (the testgtk::text backgound pixmap is drawn again)
2085         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
2086         Win32 Pango change
2087         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
2088
2089         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
2090         Not sure if the returned settings have the right unit, because I couldn't
2091         find any docs for the X version ...
2092
2093         * gtk/gtk.def :
2094         * gtk/makefile.msc.in : updated
2095
2096 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
2097
2098         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
2099         wording problems. (Compared to version from Johannes Stezenbach to
2100         check correctness.)
2101
2102 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
2103
2104         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
2105         this to compile.
2106
2107 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
2108
2109         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
2110         not pixbufpos.
2111
2112         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
2113
2114         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
2115         are unsigned insts, therefore use g_value_set_uint.
2116         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
2117
2118 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
2119
2120         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
2121
2122         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
2123         GTK_TYPE_STRING.
2124
2125         * gtk/gtktreeview.c: New functions to allow initial column
2126         dragging work.
2127
2128         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
2129
2130         * tests/testtreefocus.c: give dave some love.
2131
2132         * tests/testtreesort.c: Modify test to check really long samples.
2133
2134 2001-04-11  Alexander Larsson  <alexl@redhat.com>
2135
2136         * gtk-2.0.m4: Pass pkg-config options
2137         before the other args so it works even if
2138         POSIXLY_CORRECT is set.
2139
2140 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
2141
2142         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
2143         0, interface 0).
2144
2145 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
2146
2147         * gtk/gtkcalendar.c (gtk_calendar_button_press):
2148         check for action_func != NULL
2149
2150 2001-04-04  Sven Neumann  <sven@gimp.org>
2151
2152         * tests/testgtk.c (test_init): corrected path to gtk.immodules
2153
2154 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
2155
2156         * Released Gtk+-1.3.3.
2157
2158 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
2159
2160         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
2161
2162 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
2163
2164         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
2165         files to/from source dir. (if we don't stay in builddir, we
2166         can't reach make-inline-pixbuf.
2167
2168         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
2169         deps.
2170
2171         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
2172         ages 0).
2173
2174 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
2175
2176         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
2177         moved to the GtkTreeSortable interface.
2178
2179         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2180         Make more efficient (fixes #50262).
2181
2182 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
2183
2184         * NEWS: Updated.
2185
2186         * configure.in: Remove support for uninstalled glib.
2187
2188         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
2189         so as not to stop emission.
2190
2191         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
2192         is no longer supported.
2193
2194         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
2195         into tests, change build order to build modules before
2196         gtk/.
2197
2198         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
2199         to here.
2200
2201 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
2202
2203         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
2204         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
2205         GPatternSpec. this is actually unlikely to cause breakage in
2206         third-party apps since except for gle, pretty much ever caller
2207         passes NULL here.
2208
2209         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
2210
2211         * *.c: use g_pattern_*() API.
2212
2213         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
2214
2215         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
2216         directions aren't passed in.
2217
2218         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
2219         functionality to be usable from gtkstyle.c as well, give precedence
2220         for conversion to user-supplied parsers.
2221         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
2222
2223         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
2224         _gtk_settings_parse_convert() for rcporperty value conversion.
2225
2226 2001-04-03  Alexander Larsson  <alexl@redhat.com>
2227
2228         * gdk/linux-fb/gdkevents-fb.c:
2229         Add empty gdk_setting_get().
2230
2231 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
2232
2233         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
2234         variable names.
2235         
2236         * gtk/makeenums.pl: touch this so enum files get remade.
2237
2238 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
2239
2240         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
2241         work again when not sorted.
2242
2243         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
2244         and "expand_row" signal, closing bug 52578.
2245
2246         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
2247         support.
2248
2249         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
2250         support.
2251
2252 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2253
2254         * gdk/gdkevents.h: Add GdkEventSetting event for notification
2255         of changes to system settings, gdk_setting_get() to retrieve
2256         a single system setting.
2257
2258         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
2259         to the draft XSETTINGS mechanism.
2260
2261         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
2262         XSETTINGS.
2263
2264         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
2265         of GDK settings changes to the GtkSettings object.
2266
2267         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
2268         double-click-timeout property to GDK.
2269
2270         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
2271         Define GDK boxed types here.
2272
2273         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
2274         gdk/gdkenumtypes.[ch] for enum definitions.
2275
2276         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
2277         * gtk/gtk-boxed.defs: Comment out GDK types
2278         * gtk/gtktypeutils.h: Remove GDK types
2279         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
2280
2281 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
2282
2283         * Applied patch from Ron Steinke to add signal accumulators
2284         so that signals with the convention 'TRUE return means
2285         handled' stop emission on a TRUE return.
2286
2287         * gtk/gtkmain.[ch]: Add private accumulator 
2288         _gtk_boolean_handled_accumulator, used throughout GTK+.
2289         
2290         * gtk/gtkspinbutton.c: Add accumulator for ::output.
2291
2292         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
2293         
2294         * gtk/gtkwidget.c: Add accumulators for event signals,
2295         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
2296         for ::mnemonic-activate.
2297
2298         * gtk/gtkwindow.c: Add accumulator for ::frame_event
2299
2300 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
2301
2302         * gtk/gtkwidget.c: Add missing include.
2303
2304 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
2305
2306         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
2307         marshaller.
2308
2309         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
2310         "changed" signal to "range_changed".
2311
2312         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
2313         removing a tree from one model would remove all trees from that
2314         model.
2315         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
2316         changed signal instead.
2317
2318 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
2319
2320         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
2321         chaining up to parent impl, since we have a INPUT_ONLY
2322         window.
2323
2324         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
2325         foreground color for the cursor.
2326
2327 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
2328
2329         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
2330         param spec when caching property values, since we unref it
2331         later when we free the style.
2332
2333         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
2334         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
2335
2336 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
2337
2338         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
2339         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
2340         stupidity.
2341
2342 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
2343
2344         [ First pass at adding style properties. Still needs some definite
2345         fine-tuning. ]
2346
2347         * gtk/gtkbutton.c: Add ::default_spacing style property.
2348          
2349         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
2350         ::indicator_spacing style properties.
2351
2352         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
2353         style properties.
2354
2355         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
2356         rather than a normal property.
2357
2358         * gtk/gtkwidget.c: Add an ::interior_focus style property to
2359         draw focus inside buttons, in the Windows/Java Metal/etc. style.
2360
2361         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
2362         Honor ::interior_focus.
2363         
2364         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
2365         TRUE.
2366
2367         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
2368         Add ::slider_width, ::trough_border, ::stepper_size,
2369         ::stepper_spacing style properties.
2370
2371         * gtk/gtkscale.[ch] Add ::slider-length style property.
2372
2373 2001-04-02 Alexander Larsson   <alexl@redhat.com>
2374
2375         * gdk/linux-fb/gdkwindow-fb.c:
2376         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
2377         warnings that were spewed on startup.
2378
2379         * gtk/gtkwindow-decorate.c:
2380         gtk_window_reposition -> _gtk_window_reposition
2381
2382 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
2383
2384         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2385         Add boxed type for GtkRequistion. Use it for ::size-request.
2386
2387         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2388         Add a new GtkBorder structure useful for geometry properties
2389         for widgets. Add corresponding GTK_TYPE_BORDER.
2390         
2391         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
2392         Support automatic parser selection like
2393         gtk_settings_install_property_parser().
2394
2395         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
2396         functionality for use by gtk_widget_class_install_style_property.
2397         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
2398
2399 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
2400
2401         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
2402         g_param_spec_unichar(). 
2403
2404 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
2405
2406         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
2407         _NET window managers.
2408
2409         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
2410
2411 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
2412
2413         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
2414         bad needs to be nuked, not just deprecated.
2415
2416         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
2417         gtk_widget_popup().
2418
2419         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
2420         
2421         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
2422         widget.
2423         
2424         * docs/Changes-2.0.txt: updates.
2425         
2426 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
2427
2428         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
2429         for (i = 0; i < 100; i ++)
2430           g_print ("I will confirm it compile before committing\n");
2431
2432 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
2433
2434         * gtk/gtktreestore.c: Initial work on implementing the
2435         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
2436
2437 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
2438
2439         * gtk/gtkwidget.c: fixed a bunch of notifications, added
2440         reference counts around emissions where the widget is used afterwards.
2441         added freeze/thaws around multiple properties being notified.
2442         (_gtk_widget_get_aux_info): cleanups.
2443         
2444         * gtk/gtksettings.c (gtk_settings_install_property): provide
2445         default parsing functions for gdkcolor, enums and flags.
2446
2447         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
2448         applied by owen.
2449         backed out gtk_window_get_location(), gtk_window_set_location(),
2450         gtk_window_get_size() and gtk_window_set_size(), these
2451         have to be sorted out wrg x/y/width/height/default_with/default_height
2452         properties.
2453         kept a flag in GtkWindowGeometryInfo to handle user
2454         resetting default sizes.
2455         cleaned up ZVT comments.
2456         bunch of assorted bug fixes, notification fixes.
2457         (_gtk_window_reposition): make this a really internal function.
2458         
2459         * gtk/testgtk.c: fixups.
2460         
2461 2001-03-31  Hans Breuer  <hans@breuer.org>
2462
2463         * config.h.win32.in : disable USE_MMX for msvc build cause
2464         the assembler doesn't fit and is out of my scope. Disable
2465         USE_GMODULE for msvc build as wel. The right way to share
2466         binaries on win32 would be to use libtiff.dll etc. To reduce
2467         installation hassles IMO it's better to include all fileformats
2468         builtin to gdk-pixbuf
2469
2470         * gdk-pixbuf/makefile.msc : new file
2471
2472         * gdk/gdk.def : updated
2473
2474         * gdk/win32/gdkevents-win32.c : don't erase the background if
2475         .no_bg is set. It improves the scrolling (e.g. of testgtk main
2476         buttons
2477         * gdk/win32/gdkgeometry-win32.c : added comment about the above
2478
2479         * gdk/win32/gdkwindow-win32.c : added three new functions like
2480         the X version. Only one is implemented, because the other two
2481         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
2482         be default behaviour on win32 anyway ...
2483
2484         * gtk/gtk.def : updated
2485
2486         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
2487         from where it was built and add an additional rule to automagically
2488         build gtkmarshal.[hc]
2489
2490         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
2491         before array access for the current entry isn't finished
2492
2493         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
2494         use g_return_val_if_fail
2495
2496         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
2497         for the static array, but let the compiler calculate it. It
2498         makes me wonder if gcc isn't capable to catch bugs like this ...
2499
2500 2001-03-31  James Henstridge  <james@daa.com.au>
2501
2502         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
2503         constant "-1" in the aux info structure.
2504
2505 2001-03-30  Alexander Larsson  <alexl@redhat.com>
2506
2507         * gtk/gtkbutton.c (gtk_button_get_property):
2508         * gtk/gtklabel.c:
2509         Remove leaks.
2510         
2511         * gtk/gtkcontainer.c:
2512         * gtk/gtkhscale.c:
2513         * gtk/gtkhscrollbar.c:
2514         * gtk/gtklayout.c:
2515         * gtk/gtkmisc.c:
2516         * gtk/gtkprogress.c:
2517         * gtk/gtkprogressbar.c:
2518         * gtk/gtkrange.c:
2519         * gtk/gtktable.c:
2520         * gtk/gtkviewport.c:
2521         * gtk/gtkvscale.c:
2522         * gtk/gtkvscrollbar.c:
2523         * gtk/gtkwidget.c:
2524         Property patches, based on patches from John Margaglione and Lee Mallabone.
2525
2526 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
2527
2528         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
2529         adjustment. Cleaned redundant preconditions (spin != NULL). Added
2530         inline API function docs.
2531         (gtk_spin_button_new_with_range): New convenience constructor.
2532         (gtk_spin_button_set_increments): New adjustment helper.
2533         (gtk_spin_button_set_range): New adjustment helper.
2534
2535         * gtk/testgtk.c : added test of the new convenince constructor and
2536         value_changed signals.
2537
2538 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
2539
2540         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
2541         listen to the reorder signal.
2542
2543 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
2544
2545         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
2546         to get the aux info structure fo the widget.
2547
2548         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
2549         above function.
2550
2551         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
2552
2553         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
2554         to get the size of the window manager frame, basically the same
2555         code that gdk_window_get_root_origin() had
2556         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
2557
2558         * gtk/gtkwindow.c (gtk_window_set_default_size): use
2559         gdk_window_resize() if the window is realized and resizeable
2560
2561         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
2562         typo so that setting gravity works
2563
2564         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
2565         allocation if auto_shrink is on, even if the default size
2566         has not changed.
2567
2568         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
2569         g_return_if_fail
2570
2571 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
2572
2573         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
2574         reordering/sorting work.  Now pretty much works.
2575
2576         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
2577         reorder mostly work.  Still need to get the parity correct.
2578
2579         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
2580         signal, so I can listen for the sort_column_changed signal so I
2581         can change my "sort_indicator" property.  Cool.
2582
2583 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
2584
2585         [ Patch from Havoc Pennington, hp@redhat.com ]
2586
2587         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
2588         Add functions gdk_window_begin_resize_drag/begin_move_drag
2589         to start resizing or moving a toplevel window. This
2590         is done either using the _NET_WM_MOVERESIZE protocol,
2591         or, if that isn't present, by emulation.
2592
2593         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
2594         to export the above to GTK+-land.
2595
2596         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
2597         
2598         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
2599         Move this function into gdkwindow, since we need it
2600         when implementing fallback resizing.
2601
2602         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
2603         Fix typo when setting gravity.
2604
2605         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
2606         Add an optional (but on by default) resize grip for resizing 
2607         the parent window.
2608
2609 01-03-29  Alexander Larsson  <alexl@redhat.com>
2610
2611         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
2612         Don't return TRUE from the event handler, that blocks all
2613         event signals on the tooltip widget. Now you can press buttons
2614         in toolbars again.
2615
2616 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
2617
2618         * gtk/testtext.c (create_buffer): Add missing NULL on
2619         valist.
2620
2621         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
2622         c-n-p problem with INCONSISTENT property.
2623
2624         [ Patch from Havoc Pennington  <hp@redhat.com> ]
2625
2626         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
2627         hook.
2628
2629         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
2630         signal as a hook for extending the default popup menu
2631
2632         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
2633         use radio menu items for the input method menuitems
2634
2635         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
2636         inserted unicode from Ctrl-Shift-hex input method
2637
2638         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
2639         validatation here, already done at GtkTextBuffer level.
2640
2641         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
2642         popup_menu run action signal and Shift+F10 and Menu keybindings.
2643
2644         * gtk/gtkentry.c: implement a default handler for popup_menu
2645
2646         * gtk/gtktextview.c: implement a default handler for popup_menu
2647
2648         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
2649         from a key event
2650         
2651         * gtk/gtklabel.c: remove "trailer" cruft
2652
2653 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
2654
2655         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
2656         handle reordering of trees.  Seems to mostly work w/ the exception
2657         of the parity flag.
2658
2659         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
2660         signal.
2661
2662 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
2663
2664         * gtk/gtkwidget.h: c++ fixes.
2665
2666 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
2667
2668         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
2669         memory.
2670
2671 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
2672
2673         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
2674         Nils Barth fixing event return values. (#51041)
2675
2676         * gtk/gtkwidget.c: Fix some return values for default
2677         functions.
2678
2679         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
2680         return values for trough_keys functions.
2681
2682         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
2683         value for add_accelerator (shoudl have been a void
2684         return.)
2685
2686         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
2687         Fix return type of EVENT.
2688
2689         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
2690         signal return a boolean.
2691
2692 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
2693
2694         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
2695         reordered signal.
2696
2697         * tests/testtreesort.c (main): fix spelling.
2698
2699 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
2700
2701         * gtk/gtkliststore.c: More work on implementing sortable
2702         interface.
2703
2704 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
2705
2706         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
2707         reference the widgets in the resulting list. (#11821)
2708         This makes this consistent with gtk_container_children.
2709
2710         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
2711         uses of gtk_window_list_toplevels.
2712
2713 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
2714
2715         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
2716         a virtual function to set whether the IM context should use 
2717         the preedit string. (#51922)
2718         
2719 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
2720
2721         * gdk/gdkpango.h: Remove stale FIXME comment.
2722
2723 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
2724
2725         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
2726         Fixed bug that returned NULL if a filename was selected.
2727
2728 2001-03-24  Havoc Pennington  <hp@pobox.com>
2729
2730         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
2731         to contain the word "theme"
2732
2733 2001-03-24  Havoc Pennington  <hp@pobox.com>
2734
2735         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
2736         slower but finer-grained
2737         (gtk_hsv_focus): get initial focus on the ring or triangle 
2738         according to tab direction
2739
2740         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
2741
2742 2001-03-23  Havoc Pennington  <hp@pobox.com>
2743
2744         * gtk/gtkhsv.c: make this somewhat key-navigable
2745
2746         * gtk/gtkfontsel.c: mnemonics
2747
2748         * gtk/gtkgamma.c: mnemonics
2749
2750         * gtk/gtkcolorsel.c: add mnemonics to labels
2751
2752 2001-03-22  Havoc Pennington  <hp@pobox.com>
2753
2754         Applied big patch from Seth Lytle to fix event handler return
2755         values, slightly modified.
2756
2757         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
2758         handled.
2759         (gtk_calendar_key_press): return TRUE for GDK_space triggers
2760         select_day
2761
2762         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
2763         (gtk_clist_button_release): return TRUE if handled
2764
2765         * gtk/gtkcolorsel.c (mouse_release):
2766         (palette_activate): 
2767         (palette_press): 
2768         (palette_new): 
2769         (mouse_press): 
2770         (get_screen_color): 
2771         fixed return type (void to gboolean), return TRUE,
2772         added GTK_SIGNAL_FUNC cast
2773
2774         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
2775         (void to gboolean), and return TRUE
2776         (gtk_combo_button_release): changed return value to TRUE after
2777         gtk_grab_add on combo->popwin
2778
2779         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
2780         collapse or expand
2781
2782         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
2783         button/motion
2784
2785         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
2786         press/release and motion that trigger act
2787
2788         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
2789
2790         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
2791         for GDK_Return
2792         
2793         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
2794         (gtk_list_button_release): return TRUE if selection
2795
2796         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
2797         press
2798
2799         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
2800         (gtk_menu_shell_button_release): chain parent_menu_shell retval
2801
2802         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
2803         nothing triggered
2804         (gtk_notebook_button_release): return TRUE if we do anything
2805
2806         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
2807         (gtk_spin_button_button_release): return TRUE or chained retval
2808
2809         * gtk/gtktext.c (gtk_text_button_press): 
2810         (gtk_text_button_release): return TRUE
2811         (gtk_text_key_press): remove redundant retval code
2812         
2813         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
2814         and sensitive
2815         (gtk_tree_item_subtree_button_click): changed type to gint, and return
2816         TRUE if sensitive
2817
2818         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
2819         return TRUE
2820
2821 2001-03-23  Havoc Pennington  <hp@redhat.com>
2822
2823         * gtk/testgtk.c: fix warnings
2824
2825         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
2826
2827         * gtk/gtktextview.c: fix warnings
2828
2829         * gtk/gtktext.c (find_cursor_at_line): fix warning
2830
2831         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
2832
2833         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
2834         of this function
2835
2836         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
2837         fix warning
2838
2839         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
2840
2841         * gtk/gtkfontsel.c: fix warning
2842
2843         * gtk/gtkcolorsel.c: fix warnings
2844
2845 2001-03-23  Havoc Pennington  <hp@redhat.com>
2846
2847         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
2848
2849         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
2850
2851         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
2852         and deprecated gtk_check_menu_item_set_show_toggle().
2853         
2854         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
2855
2856         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
2857
2858         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
2859
2860 2001-03-23  Havoc Pennington  <hp@redhat.com>
2861
2862         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
2863         some docs
2864
2865 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
2866
2867         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
2868         this.
2869
2870         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
2871         set_cell to set_value
2872
2873         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
2874         set_cell to set_value
2875
2876 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
2877
2878         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
2879         fix braino.
2880         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
2881         support.
2882
2883         * gtk/gtktreeview.c: Addition of initial sortable support.
2884
2885         * gtk/gtktreestore.c: Addition of initial sortable support.
2886
2887         * gtk/gtkliststore.c: Addition of initial sortable support.
2888
2889         * gtk/gtkmarshal.list: yet another marshaller.
2890
2891         * gtk/gtktreedatallist.[ch]: shared code between the store models
2892         for handling sorting headers.
2893
2894 2001-03-22  Havoc Pennington  <hp@redhat.com>
2895
2896         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
2897         (gtk_container_unset_focus_chain): Add ability to override the 
2898         focus chain for a container explicitly
2899
2900 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
2901
2902         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
2903         added PROP_MNEMONIC_WIDGET.
2904
2905         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
2906         (gtk_window_remove_mnemonic): 
2907         (gtk_window_add_mnemonic): fixed assertions.
2908         (gtk_window_activate_mnemonic): constrain modifier checks to those
2909         permitted by gtk_accelerator_get_default_mod_mask().
2910         got rid of gtk_window_get_default_accel_group().
2911
2912         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
2913         activatable widgets either by focussing or a warning.
2914         added a signal accumulator to ::activate_mnemonic which stops the
2915         emission once a handler returned TRUE.
2916
2917 2001-03-22  Havoc Pennington  <hp@pobox.com>
2918
2919         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
2920         the stock item label
2921
2922         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
2923
2924         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
2925
2926         * demos/gtk-demo/*.c: Add mnemonics all over the place
2927
2928         * gtk/gtklabel.h: mark parse_uline deprecated
2929
2930 2001-03-21  Alexander Larsson  <alexl@redhat.com>
2931
2932         * gtk/gtkitemfactory.[ch]:
2933         Add support for stock and normal imagemenuitems.
2934         
2935         * gtk/testgtk.c:
2936         Add some tests for mnemonics, stock toolbars, stock
2937         and image menuitems in itemfactory and gdk_window_scroll.
2938
2939 2001-03-21  Alexander Larsson  <alexl@redhat.com>
2940
2941         * gtk/gtkbutton.[ch]:
2942         * gtk/gtkdialog.c:
2943         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
2944         removed accel_group argument. Renamed gtk_button_new_accel() to
2945         gtk_button_new_with_mnemonic() and removed accel_group argument.
2946
2947         * gtk/gtkcheckbutton.[ch]:
2948         New function gtk_check_button_new_with_mnemonic().
2949
2950         * gtk/gtkentry.c:
2951         Override activate_mnemonic and just grab focus.
2952
2953         * gtk/gtkitemfactory.c:
2954         Don't add menu uline accel group, instead use mnemonics support.
2955
2956         * gtk/gtklabel.[ch]:
2957         New support for mnemonics.
2958
2959         * gtk/gtkmarshal.list:
2960         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
2961
2962         * gtk/gtkmenu.[c]:
2963         * gtkmenushell.c:
2964         Use mnemonics instead of accel groups for uline
2965         support in menu items.
2966         Removed gtk_menu_get_uline_accel_group() and
2967         gtk_menu_ensure_uline_accel_group().
2968
2969         * gtk/gtkmenuitem.c:
2970         Override activate_mnemonic to handle switching between
2971         menu items if there are collisions.
2972         
2973         * gtk/gtknotebook.c:
2974         Connect to activate_mnemonic on the tab_label, so that
2975         activating it switches to that notebook page.
2976
2977         * gtk/gtkwidget.[ch]:
2978         Add activate_mnemonic signal. New function
2979         gtk_widget_activate_mnemonic() to emit it.
2980         Default implementation does activate/grab_focus.
2981
2982         * gtk/gtkwindow.[ch]:
2983         Add support for mnemonics in windows.
2984         New functions:
2985         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
2986         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
2987
2988         * gtk/testgtk.c:
2989         Update to function name changes.
2990         
2991 2001-03-21  Alexander Larsson  <alexl@redhat.com>
2992
2993         * gtk/gtkimagemenuitem.[c]:
2994         Add gtk_image_menu_item_new_from_stock()
2995
2996 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
2997
2998         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
2999         Fix buglet in meeting.
3000
3001 2001-03-19  Havoc Pennington  <hp@redhat.com>
3002
3003         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
3004         add a bunch of accessor functions. This is because we have
3005         reasonable expectations of extending what fields it contains in
3006         the future.
3007
3008         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
3009         changes
3010
3011         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
3012         GtkIconSource   
3013
3014 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
3015
3016         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
3017         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
3018
3019         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
3020           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
3021           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
3022           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
3023         Change float to double everywhere with the exception of 0<->1.0 alignment
3024         and GtkCurve.
3025
3026 2001-03-19  Tor Lillqvist  <tml@iki.fi>
3027
3028         * gdk/win32/gdkdrawable-win32.c
3029         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
3030         output.
3031
3032         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
3033         gdkwin32.h.
3034
3035 2001-03-18  Tor Lillqvist  <tml@iki.fi>
3036
3037         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
3038         print_event_state, print_event): Use preprocessor macro to make
3039         code more compact. Print also GDK_WINDOW_STATE events.
3040         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
3041         
3042         * gtk/gtk.def
3043         * gtk/makefile.mingw.in: Update.
3044
3045         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
3046         to catch also Cygwin.
3047
3048 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
3049
3050         * gtk/gtkspinbutton.[hc]: added rc-style argument
3051         GtkSpinButton::shadow_type.
3052         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
3053         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
3054         rc-style settings.
3055
3056         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
3057
3058         * gtk/gtkwidget.c: quark cleanups.
3059
3060         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
3061         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
3062         to create_rc_style() (we don't do cloning in standard OO sense).
3063         added per rc style properties.
3064         
3065         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
3066         property values and for caching those. some cleanups.
3067         
3068         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
3069         
3070         * gtk/gtksettings.[hc]: new file for global rc-file properties
3071         (at least currently, should get extended to support X properties
3072         and other communication mechanisms).
3073         
3074         * gtk/gtkwidget.[hc]: added style property support:
3075         (gtk_widget_class_install_style_property_parser): install style
3076         property pspec with parser function for rc-file values other
3077         than LONG, DOUBLE or STRING.
3078         (gtk_widget_class_install_style_property): same as above without
3079         parser (parsers are going to be needed quite infrequently).
3080         (gtk_widget_style_get_property): retrive style property value.
3081         (gtk_widget_style_get_valist): same as above with varargs support,
3082         has NOCOPY semantics.
3083         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
3084
3085 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
3086
3087         * demos/gtk-demo/main.c (row_activated_cb): modified to use
3088         "row_activated" signal.
3089
3090         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
3091         stupidity.  Lets actually pass in the row with this signal...
3092
3093 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
3094
3095         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
3096
3097         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
3098
3099         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
3100         everything into the ::destroy function, and freed a lot more.
3101
3102 2001-03-16  Havoc Pennington  <hp@redhat.com>
3103
3104         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
3105         instead of gint16, to avoid overflow issues, since sizes > 16-bit
3106         are now allowed.
3107
3108 2001-03-16  Havoc Pennington  <hp@redhat.com>
3109
3110         * Applied patch from Nils Barth (bug # 51041) to 
3111         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
3112         in various places.
3113
3114 2001-03-15  Havoc Pennington  <hp@redhat.com>
3115         
3116         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
3117         for properties to set on the tag.
3118
3119         * gtk/testtext.c: fixups to reflect create_tag change
3120         
3121         * gtk/gtktexttag.c (gtk_text_tag_set_property):
3122         background/foreground stipple are objects, not boxed.
3123
3124         * demos/gtk-demo/textview.c: intellihancing
3125
3126 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
3127
3128         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
3129         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
3130
3131 2001-03-16  Alexander Larsson  <alexl@redhat.com>
3132
3133         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
3134         Fix sign error with queued region translations.
3135
3136 2001-03-15  HideToshi Tajima  <tajima@happy>
3137
3138         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
3139         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
3140         * gtk/gtkentry.c (update_im_cursor_location): 
3141         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
3142         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
3143         set_cursor_pos to set_cursor_location in GtkInputContext class
3144
3145 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
3146
3147         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
3148         the location of the cell relative to its area.
3149         * gtk/gtkcell*: modified for above change
3150         * gtk/gtktreeview.c: modified for above change.
3151
3152 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
3153
3154         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
3155          (gtk_tree_view_finalize): actually unref the model.  Thanks to
3156         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
3157
3158 2001-03-14  Havoc Pennington  <hp@redhat.com>
3159
3160         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
3161         
3162         * gtk/gtk.h: remove gtkdata.h
3163
3164         * gtk/Makefile.am: remove gtkdata
3165         
3166         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
3167         not "disconnect" on the adjustments.
3168         
3169         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
3170         GtkData
3171
3172         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
3173         not GtkData
3174
3175         * configure.in: handle case where X render exists, but Pango lacks
3176         Xft support.
3177
3178 2001-03-15 Alexander Larsson  <alexl@redhat.com>
3179
3180         * gtk/gtktoolbar.[ch]:
3181         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
3182         to add stock items to toolbars.
3183
3184         * gtk/Makefile.am:
3185         Remove ../gdk/gdkim.h from gdk_headers.
3186
3187 2001-03-15  Sven Neumann  <sven@gimp.org>
3188
3189         * gdk/gdkim.h: removed
3190         
3191         * gdk/gdkprivate.h
3192         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
3193
3194 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
3195
3196         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
3197         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
3198         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
3199         set_cursor_pos() virtual method
3200
3201         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
3202         (gtk_im_context_xim_set_cursor_pos): add implementation for
3203         set_cursor_pos() method
3204
3205         * gtk/gtkentry.c (recompute_idle_func): set current cursor
3206         position to input methods
3207
3208 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
3209
3210         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
3211         code a lot.
3212
3213         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
3214         g_mem_chunk.
3215         (_gtk_tree_data_list_alloc): use g_mem_chunk.
3216         (_gtk_tree_data_list_node_to_value): Fix to switch on
3217         G_TYPE_FUNDAMENTAL.
3218         (_gtk_tree_data_list_value_to_node): Fix to switch on
3219         G_TYPE_FUNDAMENTAL.
3220         (_gtk_tree_data_list_node_copy): Fix to switch on
3221         G_TYPE_FUNDAMENTAL.
3222
3223 2001-03-12  Havoc Pennington  <hp@redhat.com>
3224
3225         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
3226         to convert to new property API. Also, change default_width and
3227         default_height get_property to return 0 as the flag value for
3228         "unset"; -1 is not a valid value for these fields.
3229
3230 2001-03-12  Havoc Pennington  <hp@redhat.com>
3231
3232         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
3233         enum with registration for icon sizes, instead of strings.
3234
3235         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
3236         gtkwidget.c: Fix to reflect GtkIconSize
3237         
3238 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3239
3240         Make GtkFB compile and link.
3241         
3242         * gdk/linux-fb/gdkdrawable-fb2.c:
3243         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3244         
3245         * gdk/linux-fb/gdkwindow-fb.c:
3246         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3247         Added gdk_window_shape_combine_region.
3248         Added assorted placeholders for unimplemented new GdkWindow API calls.
3249
3250 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3251
3252         * gtk/gtkfilesel.c:
3253         Add more test when converting filenames from/to utf-8.
3254         Don't allow entering text in the filename entry which isn't allowed in
3255         a filename. Just beep instead.
3256
3257 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3258
3259         * gtk/gtkclist.c:
3260         Scroll using gdk_window_scroll(). Don't wait for exposes.
3261         Move the column headers in an order that makes them flash less.
3262
3263 2001-03-10  Hans Breuer  <hans@breuer.org>
3264
3265         * gdk/gdk.def : updated
3266
3267         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
3268         to offseting the clip_mask at the right place
3269
3270         * gdk/win32/gdkwindow-win32.c : don't create background brushes
3271         for all the gdkClasses, especially not for the input_only case.
3272         Otherwise flickering wont be avoidable, because we don't get
3273         WM_ERASEBKGND message for these windows.
3274
3275         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
3276         and fixed massive redraw problems apparently triggered by Alexanders 
3277         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
3278         but it seems to work quite well :-)
3279
3280         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
3281         prototype
3282
3283 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
3284
3285         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
3286         (gtk_list_store_set_cell): Fix a stupid typo.
3287
3288 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
3289
3290         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
3291         select_all not work if you're in SINGLE mode (it doesn't make that
3292         much sense, anyway.)
3293
3294         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3295         handle types more sanely.
3296         (_gtk_tree_data_list_value_to_node): handle types more sanely.
3297         (_gtk_tree_data_list_node_copy): handle types more sanely.
3298
3299         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
3300         GValue better. Converts the type as well.
3301
3302         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
3303         GValue better. Converts the type as well.
3304
3305 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
3306
3307         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
3308         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
3309         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
3310         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
3311
3312         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
3313         gdk_im/gdk_ic.
3314
3315 2001-03-09  Hans Breuer  <hans@breuer.org>
3316
3317         * gdk/gdk.def : updated
3318
3319         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
3320         for their palette
3321
3322         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
3323         removing
3324
3325         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
3326         removing and implemented Havoc's GdkWindow state functions; 
3327         stick/unstick only as no-op, cause I don't know how to emulate 
3328         on win32 ...
3329
3330         * gtk/gtk.def : updated
3331
3332         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
3333
3334         * gtk/gtktypeutils.c : #include <string.h>
3335
3336         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
3337
3338 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
3339
3340         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
3341         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
3342         not a boxed.
3343
3344 2001-03-09  Alexander Larsson  <alexl@redhat.com>
3345
3346         * docs/Changes-2.0.txt:
3347         Document expose event->region change and that gtk_widget_event
3348         doesn't allow passing expose events.
3349
3350         * gdk/gdkevents.h:
3351         Add region to expose event.
3352         
3353         * gdk/gdkevents.c:
3354         Handle event->region in gdk_event_copy() and gdk_event_free().
3355
3356         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
3357         Generate expose_event->region when creating expose events.
3358
3359         * gdk/x11/gdkevents-x11.c:
3360         Generate expose events with regions when translating X events.
3361
3362         * gtk/gtkcontainer.[ch]:
3363         Default expose handler that propagates expose events to NO_WINDOW
3364         children. New function gtk_container_propagate_expose()
3365
3366         * gtk/gtkwidget.[ch]:
3367         Moved gtk_widget_event implementation to gtk_widget_event_internal.
3368         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
3369         expose events. New function gtk_widget_send_expose() to send expose
3370         events. New function gtk_widget_region_intersect() to calculate
3371         window/region intersections.
3372         
3373         * gtk/gtkmain.c (gtk_main_do_event):
3374         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
3375         Use gtk_widget_send_expose() to send expose events.
3376         
3377         * gtk/gtkbin.c:
3378         * gtk/gtkbox.c:
3379         * gtk/gtkfixed.c:
3380         * gtk/gtkimagemenuitem.c:
3381         * gtk/gtklist.c:
3382         * gtk/gtkpacker.c:
3383         * gtk/gtktable.c:
3384         * gtk/gtktree.c:
3385         Remove expose handler, using the default container implementation
3386         instead.
3387         
3388         * gtk/gtkbutton.c:
3389         * gtk/gtkcheckbutton.c:
3390         * gtk/gtkeventbox.c:
3391         * gtk/gtkfixed.c:
3392         * gtk/gtkhandlebox.c:
3393         * gtk/gtklayout.c:
3394         * gtk/gtklistitem.c:
3395         * gtk/gtkmenu.c:
3396         * gtk/gtkmenubar.c:
3397         * gtk/gtkmenuitem.c:
3398         * gtk/gtknotebook.c:
3399         * gtk/gtkoptionmenu.c:
3400         * gtk/gtkpaned.c:
3401         * gtk/gtkscrolledwindow.c:
3402         * gtk/gtktogglebutton.c:
3403         * gtk/gtktoolbar.c:
3404         * gtk/gtktreeitem.c:
3405         * gtk/gtkviewport.c:
3406         Chain expose handler to parent class handler. Use
3407         gtk_container_propagate_expose() to propagate exposes.
3408
3409         * gtk/gtkclist.c (check_exposures):
3410         * gtk/gtktext.c (process_exposes):
3411         Use gtk_widget_send_expose instead of gtk_widget_event.
3412
3413 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
3414
3415         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
3416
3417 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
3418
3419         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
3420         unref the nodes.   Fixes bug #50058.
3421
3422         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
3423         "::ref_iter" to "::ref_node".
3424         (gtk_tree_model_unref_node): change "::unref_iter" to
3425         "::unref_node". Fixes bug #50064.
3426
3427 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
3428
3429         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
3430         support for invisible cells.
3431          (gtk_tree_view_bin_expose): ditto
3432
3433 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
3434
3435         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
3436         on gobjects.
3437
3438         * tests/testtreefocus.c (main): New test file.
3439
3440         * tests/testtreeview.c: update to latest glib changes.
3441
3442         * tests/testtreecolumns.c: update to latest glib changes.
3443
3444 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
3445
3446         * gtk/testgtk.c: re-enabled event watcher emission hooks.
3447
3448 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
3449
3450         * *.c: added accumulator data argument to g_signal_newc()
3451         functions.
3452
3453         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
3454         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
3455         * gtk/treestoretest.c (make_window):
3456         s/g_signal_connect/g_signal_connectc/.
3457
3458         * gtk/gtktextbuffer.c: completed signal arg fixups,
3459         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
3460
3461 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
3462
3463         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
3464         G_CONST_RETURN.
3465
3466         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
3467         ::hierarchy-changed signal when a widget changes
3468         from anchored to unanchored or vice versa.
3469         (anchored means 
3470          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
3471         Use a private flag to keep track of this efficiently.
3472
3473 2001-03-07  Havoc Pennington  <hp@redhat.com>
3474
3475         * gtk/testgtk.c (create_spins): uglify so that size request gets
3476         tested.
3477
3478         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
3479         request on values for upper/lower, completes #6152
3480
3481 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
3482
3483         * Makefile.am: Remove gtk-config-2.0 again.
3484         (Grrrr, pkg-config. And stops make loops.)
3485
3486 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
3487
3488         * gtk/gtksignal.[hc]: removed old emission hook API.
3489         
3490         * docs/Changes-2.0.txt: fixed sections.
3491         
3492         * gtk/gtktextbuffer.c: signal arg fixups.
3493
3494 2001-03-07  Havoc Pennington  <hp@redhat.com>
3495
3496         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
3497
3498         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
3499         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
3500         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
3501         validation and the redraw which is higher priority than the
3502         validation.
3503
3504 2001-03-07  Havoc Pennington  <hp@redhat.com>
3505
3506         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
3507         (gtk_entry_set_property): remove trailer
3508
3509         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
3510         (gtk_entry_get_width_chars): new functions, to set size request to 
3511         a given number of characters
3512
3513         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
3514
3515         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
3516         (gtk_dialog_get_has_separator): new function
3517         (run_delete_handler): fix to not emit "response" signal
3518         because we already did in the delete event handler installed
3519         at dialog creation time.
3520         
3521         * gtk/gtkdialog.h: add a has_separator property,
3522         add GTK_DIALOG_NO_SEPARATOR flag
3523
3524 2001-03-07  Havoc Pennington  <hp@redhat.com>
3525
3526         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
3527         off decorations for a window.
3528
3529         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
3530         changes
3531
3532         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
3533         to get location of PangoLayout inside the label, closes #51198
3534
3535         * gtk/testgtk.c (create_bbox): fix up button box usage
3536
3537         * gtk/testcalendar.c (create_calendar): fix up button box usage
3538
3539         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
3540
3541         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
3542
3543         * gtk/gtkhbbox.h: deprecations
3544
3545         * gtk/gtkvbbox.h: deprecations
3546
3547         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
3548         emulate deprecated gtk_button_box_get_spacing
3549
3550         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
3551         the "set global default" functions
3552         (struct _GtkButtonBox): remove "spacing" field, use the one from 
3553         GtkBox base class
3554
3555         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
3556
3557         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
3558         render the icon, return the missing image icon.
3559
3560         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
3561         image icon if the load fails.   
3562
3563         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
3564         when no image is found; should be the Netscape "missing image"
3565         icon eventually but for now is a random image
3566
3567         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
3568         role for the session manager
3569
3570         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
3571
3572         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
3573         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
3574
3575         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
3576
3577 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
3578
3579         * gtk/*.c: marshaller fixes.
3580         
3581         * gtk/gtkmarshal.list: extreme cleanup.
3582
3583         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
3584         param spec for now.
3585
3586         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
3587         where appliable.
3588
3589         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
3590         special cased autogenerated boxed types from gtktypebuiltins_ids.c
3591         which are not reference counted:
3592         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
3593         PangoFontDescription, GtkTreeIter and GtkTreePath.
3594
3595 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
3596
3597         * gtk/gtktreeselection.h: 
3598         * gtk/gtktreemodel.c:
3599         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
3600         file should be included directly, and gobject/gmarshal.h
3601         as well as gtk/gtkmarshal.h even can't be included directly.
3602
3603         * Makefile.am: grr, install gtk-config-2.0.
3604
3605         * gtk/testgtk.c:
3606         * gtk/simple.c:
3607         * gtk/gtkmenu.c:
3608         * gtk/gtkitemfactory.c: use g_object_connect() instead of
3609         passing "*signal*::*" args to gtk_widget_set().
3610         
3611         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
3612         
3613         * gtk/*.c: removed trailer arg from property setters and getters.
3614         macro fixups.
3615
3616 2001-03-07  Alexander Larsson  <alexl@redhat.com>
3617
3618         * gtk/gtklabel.c (set_markup): Removed warning
3619
3620 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
3621
3622         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
3623         field to allow you to hide cell renderers.
3624
3625         * gtk/gtkcellrenderer.c: Add support for invisible cells.
3626
3627         * gtk/gtktreeview.c: Add support for invisible cells.
3628
3629 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
3630
3631         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
3632         Add "clicked" signal back to columns.
3633
3634         * ChangeLog: remove conflict markers.
3635
3636 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
3637
3638         * gtk/gtkbutton.c: Add animation of activation by, on 
3639         activate, pressing the button, and adding a timeout that 
3640         releases the button after 250ms or on key release and
3641         emits ::clicked. (#51501)
3642
3643         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
3644         action area, we connect to ::clicked instead of ::activate
3645         so the dialog stays up through the animation.
3646
3647 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
3648
3649         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
3650         check the ignore_enter flag for the menu shell that
3651         the item is actually a child of, not for attached
3652         submenus. (#51536)
3653
3654 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
3655
3656         * gtk/gtkmain.c (gtk_propagate_event): Only do special
3657         special key-press grab handling for widgets within
3658         GtkWindows. Otherwise, fall through to normal case.
3659
3660         This prevents key events being sent twice to GtkInvisible
3661         widgets, which can cause all sorts of mischief.
3662
3663 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
3664
3665         * gtk/gtkmain.c (gtk_propagate_event): When a grab
3666         widget is in effect, give the grab widget a first
3667         crack at KEY_PRESS/RELEASE events. (#424)
3668
3669 2001-03-06  James Henstridge  <james@daa.com.au>
3670
3671         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
3672         offset for the window_state_event to point at window_state_event
3673         rather than no_expose_event.
3674
3675 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
3676
3677         * gtk/gtkimmodule.h: fix busted /* comment */
3678
3679 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
3680
3681         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
3682         object properties.
3683
3684 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
3685
3686         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
3687         add object properties.
3688
3689         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
3690         to add object properties.
3691
3692         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
3693         object properties.
3694
3695         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
3696         add object properties.
3697
3698         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
3699         object properties.
3700
3701 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
3702
3703         * gtk/gtktreemodel.c: renamed "child_toggled" to
3704         "has_child_toggled".
3705
3706         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
3707         handle new signal name.
3708
3709         * gtk/gtktreestore.c: Updated to handle new signal name.
3710         * gtk/gtklisttore.c: Updated to handle new signal name.
3711         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
3712
3713 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3714
3715         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
3716         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
3717
3718 2001-03-05  Michael Natterer  <mitch@gimp.org>
3719
3720         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
3721         pixbuf-engine coincidentially also failed to make one of it's
3722         parent_class pointers static, causing overwriting of GtkLabel's
3723         parent_class pointer in pixbuf_style_class_init().
3724         (Will commit the fix to the pixbuf-engine too).
3725
3726 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3727
3728         * gdk/gdkwindow.h:
3729         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
3730         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
3731         gdk_window_set_icon_list for net wmspec functionality.
3732
3733         * gdk/x11/gdkwindow-x11.c:
3734         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
3735         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
3736         gdk_window_set_icon_list.
3737         Added gdk_wmspec_change_state helper function and used it in the code.
3738         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
3739
3740         * gtk/gtkdialog.c (gtk_dialog_init):
3741         Set GDK_WINDOW_TYPE_HINT_DIALOG.
3742
3743         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
3744         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
3745
3746         * gtk/gtkwindow.c:
3747         new function gtk_window_set_type_hint.
3748         On realize, set type hint and modal hint.
3749
3750         * gtk/gtkwindow.h:
3751         Added type_hint field and gtk_window_set_type_hint.
3752
3753 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3754
3755         * gtk/gtklabel.[ch]:
3756         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
3757         New function gtk_label_get_accel_keyval () to get the underline accelerator
3758         of the label. Setting the label pattern overrides other attributes.
3759
3760 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
3761
3762         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
3763         Added missing initializers to gtk_rc_style_init().
3764
3765 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
3766
3767         * gtk/gtktextview.c: fixed bug #51097 about setting 
3768         gtk_text_view_set_border_window_size() if the widget is 
3769         already realized.
3770
3771 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
3772
3773         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
3774
3775         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
3776         comment. Won't do to have duplicated doc comments between
3777         the platform subdirs.
3778
3779 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
3780
3781         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
3782           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
3783
3784         Detectable auto-repeat - make a repeating key generate
3785         press/press/press/release instead of press/release pairs.
3786
3787         If we have Xkb and XkbSetDectableAutoRepeat supports
3788         that, we do it that way. Otherwise, when we get
3789         a release event, we check ahead with XPending to see
3790         if the next key is a KeyPress with the same keycode
3791         and timestamp. (Not 100% reliable, but pretty close.)
3792           
3793 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
3794         
3795         * gtk/gtkmain.c (gtk_propagate_event): Only do special
3796         special key-press grab handling for widgets within
3797         GtkWindows. Otherwise, fall through to normal case.
3798  
3799         This prevents key events being sent twice to GtkInvisible
3800         widgets, which can cause all sorts of mischief.
3801  
3802 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
3803  
3804         * gtk/gtkmain.c (gtk_propagate_event): When a grab
3805         widget is in effect, give the grab widget a first
3806         crack at KEY_PRESS/RELEASE events. (#424)
3807  
3808 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
3809
3810         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
3811         to extend the selection. (Roughly based on patch
3812         from Jay Cox, #50939)
3813
3814         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
3815         to properly handle previous GDK_BUTTON_PRESS. 
3816         (Patch from Jay Cox, #50938)
3817
3818         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
3819         '\0' back along with the deleted text. (#51148)
3820
3821 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
3822
3823         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
3824         the group when extracting it from the X keyboard event.
3825
3826         * modules/input/Makefile.am modules/input/imipa.c: 
3827         Simple module for entering IPA. (Do we need a 
3828         gtk-stupid-input-tricks CVS module?)
3829
3830 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
3831
3832         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
3833         const.
3834
3835         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
3836
3837         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
3838         is no focus widget for the dialog currently, grab the focus as well
3839         as the default.
3840
3841         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
3842         the action area's children to iterate through, not the
3843         dialog's children.
3844
3845 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
3846
3847         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
3848         Add plug-socket tests. (Won't work worth a darn until I commit
3849         the rest of the plug-socket changes, but no reason these
3850         can't go into CVS now.)
3851
3852 2001-03-02  Havoc Pennington  <hp@redhat.com>
3853
3854         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
3855         _gdk_region_get_xrectangles()
3856
3857         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
3858
3859         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
3860
3861         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
3862         function, contributed by Ron Steinke    
3863
3864         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
3865         gdk_net_wm_supports
3866
3867         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
3868         New function, contributed by Ron Steinke
3869
3870         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
3871         used to line up the text in the entry when using the entry for
3872         editable sheet cell hacks
3873
3874         * gtk/testgtk.c (create_entry): test the activate_default setting
3875         on GtkEntry
3876
3877         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
3878         cause the entry to activate the default button for a dialog when 
3879         activated
3880         (gtk_entry_get_activates_default): new function
3881
3882 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
3883
3884         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
3885         Hwang to move call to sync_selection() up a few lines
3886         to before the row list is modified, to fix crash when
3887         removing rows in the undo_selection list.
3888
3889         (Test case provided by Daniel Elstner:
3890
3891         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
3892
3893 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
3894
3895         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
3896         of tree->root_tree in parent_set rather than _map(), 
3897         fixing #50892 in a bit better manner.
3898
3899 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
3900
3901         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
3902
3903 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
3904
3905         * gtk/gtkstyle.c : Remove duplicate fwd decl for
3906         gtk_default_draw_shadow.
3907
3908 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
3909
3910         * gdk/gdkimage.c (gdk_image_new): Remove excess 
3911         warning, make warnings more verbose, treat a error
3912         in shmat as permanent, and don't try again.
3913         (#51163, Ed Randall.)
3914
3915 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
3916
3917         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
3918         delay for the first click before starting to scroll.
3919         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
3920
3921         * gtk/gtktext.c: GtkText should have I-beam cursor. 
3922         (based on gtk-enf-990513-1.patch, Eric Fisher.)
3923
3924 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
3925
3926         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
3927         cleanup to remove some references to unused
3928         ->xoffset, ->yoffset.
3929
3930 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
3931
3932         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
3933         mask. (#51039, fix from Martin Maierhofer)
3934
3935 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
3936
3937         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
3938         for unshifted + and shifted = for non-us keyboards.
3939         Make <Control>+ and <Control>- work as well as 
3940         <Control>KP_Plus, <Control>KP_Minus for recursive
3941         open/close.  (#2682, René Seindal)
3942
3943 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
3944
3945         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
3946         the active menu item before deactivating the menu,
3947         so gtk_menu_popdown doesn't change the history. (#50964)
3948         
3949 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
3950
3951         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
3952         draw lines with text_gc rather than black_gc.
3953         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
3954
3955 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
3956
3957         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
3958         Move handling of buttons fully in gtktreeviewcolumn.  This code is
3959         less interrelated then it was, but it still requires the
3960         GtkTreeView to map it.
3961
3962         * test/testtreecolumn.c: Now I can add a column to one view,
3963         remove it, add it to the another view, remove it, then re-add it
3964         to the first.  Nifty.
3965
3966 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
3967
3968         * docs/tutorial/gtk-tut.sgml: Minor corrections
3969
3970 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
3971
3972         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
3973         GtkRowReference.
3974
3975 2001-02-28  Havoc Pennington  <hp@redhat.com>
3976
3977         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
3978         draw_default
3979         (gtk_widget_draw_focus): remove this function; we could instead
3980         make it just gtk_widget_draw(), but in most cases I think the
3981         result would be broken user code, so think it's better to have
3982         that code not compile and get fixed
3983         (gtk_widget_draw_default): ditto
3984
3985         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
3986         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
3987         
3988         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
3989         widgets lose/get the default, instead of calling draw_default
3990         
3991         * docs/Changes-2.0.txt: note about all this
3992
3993         Then fixed every widget in GTK, I won't list all the filenames.
3994
3995 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
3996
3997         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
3998         _gtk_tree_row_reference_deleted.
3999         (inserted_callback): Proxy out to
4000         _gtk_tree_row_reference_inserted.
4001         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
4002         get around signal emission ordering problem.
4003
4004         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4005         fix to work with SINGLE 
4006         (_gtk_tree_selection_internal_select_node): Major sanitization on
4007         selections.  SINGLE now seems to work.
4008
4009         * tests/Makefile.am: add testtreecolumn.c:
4010
4011         * tests/testtreecolumn.c: New test.  Mostly points out selection
4012         bugs currently, but will test columns later.
4013
4014         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
4015         selection bug.  I hate touching this code -- it's scary.
4016
4017 2001-02-26  Havoc Pennington  <hp@redhat.com>
4018
4019         * gtk/testgtk.c: test the window state stuff
4020
4021         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
4022         window come to the user's attention as if it were just created
4023         (gtk_window_iconify): new function
4024         (gtk_window_deiconify): new function
4025         (gtk_window_stick): new function
4026         (gtk_window_unstick): new function
4027         (gtk_window_maximize): new function
4028         (gtk_window_unmaximize): new function
4029
4030         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
4031
4032         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
4033
4034         * gdk/x11/gdkevents-x11.c: create window state events when
4035         appropriate
4036         (gdk_wmspec_supported): new function
4037
4038         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
4039         iconification before showing the window
4040         (gdk_window_deiconify): new function
4041         (gdk_window_stick): new function
4042         (gdk_window_unstick): new function
4043         (gdk_window_maximize): new function
4044         (gdk_window_unmaximize): new function
4045
4046         * gdk/gdkwindow.c: store the window state in the window; 
4047         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
4048         window->mapped.
4049         (gdk_window_get_state): return the current window state
4050
4051         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
4052         (gdk_event_get_state): handle GDK_WINDOW_STATE
4053         (gdk_synthesize_window_state): function to create the window state
4054         events
4055
4056         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
4057         event, for changes to "window state" such as maximized, sticky, 
4058         etc.
4059         
4060         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
4061         focuses a window
4062
4063         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
4064         finds out if we support a given WM spec hint
4065
4066 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
4067
4068         * docs/faq/gtk-faq.sgml: New question re memory leaks.
4069
4070 2001-02-25  Hans Breuer  <hans@breuer.org>
4071
4072         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
4073         cause we want to loose those prototypes only in the latter case
4074
4075         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
4076         GdkPixmapImplWin32 because it itsn't derived from it. Use the
4077         impl member variable instead
4078
4079         * gtk/gtk.def : updated
4080
4081         * gtk/gtklist.c : 
4082         * gtk/gtkmenus.c : include <string.h> for memset ()
4083
4084         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
4085         for everthing built here, but for gtk-x.x.dll only. This solves
4086         problem of indifferent gtk type definitions
4087
4088 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
4089
4090         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
4091
4092 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
4093
4094         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
4095         column that is exposed.
4096
4097         (_gtk_tree_view_update_size): Changed name from set_size, and
4098         changed function to do more work, and not force people calling it
4099         to figure out the size.  Simplifies a lot of code elsewhere.
4100
4101 2001-02-23  Alexander Larsson  <alexl@redhat.com>
4102
4103         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
4104         return solid masks for xpms that have no transparent color.
4105         This makes the ..._create_from_xpm... API backwards
4106         compatible.
4107
4108 2001-02-23  Tor Lillqvist  <tml@iki.fi>
4109
4110         * README.win32: Update. Mention the gtk-1-3-win32-production
4111         branch.
4112
4113         * gdk/win32/bdfcursor.c: New file. A program that generates
4114         xcursors.h. Thanks to Stefan Ondrejicka.
4115
4116         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
4117         compact format.
4118
4119         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
4120
4121         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
4122         function, uses xcursors.h.
4123         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
4124         cursor from inline data instead of using LoadCursor() to generate
4125         it from a resource.
4126
4127         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
4128         event, must check the Windows message for mouse button state, as
4129         the GDK event state might not have been built if it is
4130         undelivered. Remove one goto.
4131
4132         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
4133         SetCursor() if the current cursor as returned by GetCursor() is
4134         the window's previous cursor. The ChildWindowFromPoint() test
4135         apparently didn't work correctly.
4136
4137         * gdk/win32/rc/*.cur: Remove.
4138
4139         * gdk/win32/rc/gdk.rc.in: Remove cursors.
4140
4141         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
4142
4143         * gtk/makefile.{mingw,msc}.in: Updates.
4144
4145 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
4146
4147         * gtk/gtktreemodel.h: add functions for signal emission.
4148
4149         * gtk/gtktreestore.c: move to use above functions instead of
4150         g_signal_emit.
4151
4152         * gtk/gtkliststore.c: ditto
4153
4154 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
4155
4156         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
4157         GObject instead of GtkObject.
4158
4159         * gtk/gtkliststore.c: ditto.
4160
4161         * gtk/gtktreemodelsort.c: ditto.
4162
4163         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
4164         GtkTreeModelIface, instead of in each model.
4165
4166 2001-02-21  Havoc Pennington  <hp@redhat.com>
4167
4168         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
4169         unbreak this function
4170
4171         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
4172         properties
4173
4174         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
4175         properties
4176
4177         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
4178         properties
4179
4180         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
4181         mean unset the max length
4182
4183 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
4184
4185         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
4186         Changed name to be set_cell_data_func to make it clear what
4187         the functino does.  Close bug #51069.
4188
4189 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
4190
4191         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
4192         have memory actually freed.  Keeps box running longer.
4193
4194 2001-02-21  Alexander Larsson  <alexl@redhat.com>
4195         
4196         * gtk/gtkseparatormenuitem.[ch]:
4197         Added new menu separator item. The drawing and size handling
4198         is still done in GtkMenuItem, but the API is a bit more sane.
4199         
4200         * gtk/Makefile.am:
4201         Add gtkseparatormenuitem.[ch].
4202
4203         * gtk/gtk.h:
4204         Add gtkseparatormenuitem.h.
4205         
4206         * gtk/gtkentry.c:
4207         * gtk/gtkmenufactory.c:
4208         * gtk/gtktextview.c:
4209         Use the new API for menu separators.
4210         
4211         * demos/gtk-demo/menus.c (create_menu):
4212         Add some GtkSeparatorMenuItem demo code.
4213
4214 2001-02-20  Havoc Pennington  <hp@redhat.com>
4215
4216         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
4217         Lee Mallabone
4218
4219         * gtk/gtkarrow.c: Convert to new property API, patch from 
4220         Lee Mallabone
4221
4222 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
4223
4224         * tests/testtreeview.c (toggled_callback): fix to reflect change
4225         in GtkTreeModelStore.
4226
4227 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
4228
4229         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
4230         function to create an icon set from a pixbuf.
4231
4232 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4233
4234         * gtk/gtkcellrenderertext.[ch]:
4235         Add a "markup" property.
4236
4237         * gtk/treestoretest.c:
4238         Use the markup property, remove some leftover stuff from
4239         GtkTreeModelMapping.
4240
4241 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4242
4243         * gtk/gtklabel.c (gtk_label_set_selectable):
4244         Queue a redraw if the selectable setting was changed.
4245
4246 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4247
4248         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
4249         Actually copy the whole gc, not just the public parts.
4250         
4251         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4252         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
4253         labels.
4254
4255 2001-02-19  Havoc Pennington  <hp@pobox.com>
4256
4257         * gdk/gdkwindow.c: docs
4258
4259         * gdk/gdkrgb.c: docs
4260
4261         * gdk/gdkregion-generic.c: docs
4262
4263         * gdk/gdkgc.c (gdk_gc_set_values): docs
4264
4265         * gdk/gdkdraw.c: docs
4266
4267         * gdk/gdkdrawable.h: deprecate drawable get/set data
4268
4269 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
4270
4271         * demos/gtk-demo/dialog.c: Add simple new demo.
4272
4273 2001-02-19  Havoc Pennington  <hp@redhat.com>
4274
4275         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
4276         insert_child_anchor signal, bug #50245
4277
4278         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
4279         from create_child_anchor, so the anchor is passed in
4280
4281         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
4282         (_gtk_widget_segment_new): have the child anchor object passed in, 
4283         instead of creating it.
4284
4285         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
4286         to gtk_text_buffer_get_modified
4287
4288 2001-02-19  Havoc Pennington  <hp@redhat.com>
4289
4290         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
4291         changed GLib without fixing GTK
4292
4293         * gtk/gtkrange.h: Rename all the stupid implementation detail 
4294         functions to have an underscore in front. Most of them should 
4295         probably just go away, but for starters don't export them.
4296         Bug #50482
4297
4298 2001-02-19  Havoc Pennington  <hp@redhat.com>
4299
4300         * gdk/gdkcolor.h: test was backward, so deprecated functions were
4301         excluded by default
4302
4303         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
4304         clean up the old code a bit
4305
4306         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
4307         inconsistent state
4308
4309         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
4310         draw inconsistent state
4311
4312         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
4313         (create_menu): add inconsistent test
4314
4315         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
4316         new function
4317         (gtk_check_menu_item_get_inconsistent): new function
4318         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
4319         state (using etched in for now)
4320
4321         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
4322         draw inconsistent state
4323
4324         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
4325         function, used when the user has selected a range of stuff in
4326         different states
4327         (gtk_toggle_button_get_inconsistent): accessor for that
4328         (gtk_toggle_button_paint): draw inconsistent state (etched in?
4329         don't know what else to do)
4330
4331 2001-02-19  Hans Breuer <hans@breuer.org>
4332
4333         * gtk/gtk.def : updated exported symbols
4334
4335         * gtk/makefile.msc.in : updated
4336
4337         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
4338         a colormap, when invoked from testgtk::entry. I'm not sure where
4339         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
4340         avoids immediate crashing ...
4341
4342         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
4343         any objections ?
4344
4345         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
4346         0 parameter. At least msvc doesn't like macros with var args. 
4347         I simply removed the extra 0, was it a feature or a typo ?
4348
4349         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
4350         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
4351         because the value assignment to the internal struct wasn't working.
4352         I'm not absolutely sure. The problem could have been resolved by
4353         changing the "func" declartion in the struct, but was the pointer
4354         to the function pointer intended ?
4355
4356         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
4357
4358         * gdk/gdk.def : updated exported symbols
4359
4360         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
4361         only use SetDIBitsToDevice if there is a palette at the drawable
4362         and the image is GDK_VISUAL_PSEUDO_COLOR
4363
4364         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
4365
4366         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
4367
4368         * gdk/*/makefile.msc : updated
4369
4370 2001-02-19  Havoc Pennington  <hp@redhat.com>
4371
4372         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
4373         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
4374
4375         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
4376         (gdk_key_repeat_restore): nuke
4377
4378         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
4379         (gdk_init_check): no atexit func
4380
4381         * gdk/gdkrgb.h: mark some stuff deprecated
4382
4383         * gdk/gdkcolor.h: mark some stuff deprecated
4384         
4385         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
4386
4387         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
4388
4389 2001-02-16  Havoc Pennington  <hp@redhat.com>
4390
4391         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
4392         scroll steps.
4393
4394         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
4395         steps, and add Ctrl-arrow shortcuts for paging visually as with
4396         HScale, since Page Up and Page Down move logically.
4397
4398         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
4399         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
4400         
4401         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
4402         steps
4403         (gtk_range_scroll): handle the visual steps
4404
4405         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
4406         scroll steps
4407
4408         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
4409         steps, not the logical ones.
4410
4411         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
4412         (scroll_vertical): handle up/down steps
4413
4414 2001-02-19 Alexander Larsson  <alexl@redhat.com>
4415
4416         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
4417         Copy data and free data with free().
4418
4419         * gdk-pixbuf/gdk-pixbuf.c:
4420         * gdk-pixbuf/io-jpeg.c:
4421         * gdk-pixbuf/io-png.c:
4422         Use g_try_malloc/g_free instead malloc/free.
4423         
4424         * gdk-pixbuf/test-gdk-pixbuf.c:
4425         Must... initialize... gobject...
4426         
4427         * gdk-pixbuf/pixops/timescale.c:
4428         * gtk/gtkcalendar.c:
4429         Use g_malloc instead of malloc.
4430         
4431 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
4432
4433         * gtk/testgtkrc:
4434         Comment out property assignments, these don't work yet.
4435
4436 2001-02-17  Havoc Pennington  <hp@pobox.com>
4437
4438         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
4439         bit.
4440
4441 2001-02-17  Havoc Pennington  <hp@pobox.com>
4442
4443         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
4444         shadowed variables that had broken size request in some cases,
4445         leading to bogus tooltips (#50996)
4446
4447 2001-02-06  Jon K Hellan  <hellan@acm.org>
4448
4449         Implement fast browsing of tooltips, bug #50619
4450         
4451         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
4452         and last_popdown
4453         
4454         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
4455         use_sticky_delay and last_popdown.
4456         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
4457         time of popdown.
4458         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
4459         is NULL.
4460         (gtk_tooltips_recently_shown): New static function.  Return true
4461         if < sticky_delay has elapsed since last popdown.
4462         (gtk_tooltips_event_handler): Display window after sticky_delay
4463         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
4464         since last popdown.
4465         
4466 2001-02-17  Havoc Pennington  <hp@pobox.com>
4467
4468         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
4469         instead of (). #6394
4470
4471         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
4472         G_CONST_RETURN, make it return by reference, #50473
4473         
4474 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
4475
4476         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
4477         generated ENTER_NOTIFY event with 0, otherwise not explicitely
4478         setup fields contain garbage (e.g. subwindow, breaking
4479         gdk_drawable_ref() upon event copy).
4480         (gtk_menu_stop_navigating_submenu_cb): same here.
4481
4482         * gtk/gtklist.c (gtk_list_vertical_timeout): 
4483         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
4484         * gtk/gtkclist.c (vertical_timeout): 
4485         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
4486         default-zero-intialization for unions to memset(,0,), as unions are
4487         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
4488         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
4489
4490         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
4491         g_closure_sink() warning.
4492
4493         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
4494         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
4495         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
4496         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
4497         
4498 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
4499
4500         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
4501         gtk_*_store_get, and moved to GtkTreeModel.
4502
4503         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
4504
4505         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
4506
4507         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
4508
4509         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
4510         set the func.
4511
4512         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4513         freeze/thaw notify between setting all the properties for a cell.
4514
4515         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
4516
4517 2001-02-15  Havoc Pennington  <hp@redhat.com>
4518
4519         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
4520         the X coordinates so they're with respect to the line, rather than 
4521         with respect to the layout.
4522
4523         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
4524         Mallabone
4525
4526         * gtk/testgtk.c (create_range_controls): add vscale tests, 
4527         and inverted test
4528
4529         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
4530         #50806
4531
4532         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
4533
4534         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
4535         gtk_text_iter_is_end
4536
4537         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
4538         rename gtk_text_buffer_get_end_iter
4539
4540         * gtk/testgtk.c (create_labels): Add test for selectable
4541
4542         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
4543         the selection stuff. This code is kind of broken since it doesn't 
4544         use the theme engine.
4545
4546         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
4547         fix infinite loop and y offset problem
4548         (gdk_draw_layout_line_with_colors): fix foreground color handling
4549
4550         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
4551         that makes the label selectable.
4552         
4553         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
4554         layout when the style is set, since fonts etc. could have changed.      
4555
4556 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
4557
4558         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
4559
4560         * gtk/gtktreemodelsimple.[ch]: removed.
4561
4562 2001-02-16  Alexander Larsson  <alexl@redhat.com>
4563
4564         * gtk/gtktreemodelmapping.[ch]:
4565         New files. Implement GtkTreeModelMapping.
4566         
4567         * gtk/Makefile.am:
4568         Add gtktreemodelmapping.[ch].
4569         
4570         * gtk/gtk.h:
4571         Add gtktreemodelmapping.h
4572
4573         * gtk/treestoretest.c:
4574         Test the GtkTreeModelMapping
4575
4576 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
4577
4578         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
4579         have a demo, we might as well pass in real values.  Thanks to
4580         clahey for pointing this out.
4581
4582 2001-02-14  Havoc Pennington  <hp@pobox.com>
4583
4584         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
4585         "static" to a private function
4586         (gtk_image_menu_item_class_init): remove destroy handler,
4587         add "image" object property
4588
4589 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
4590
4591         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
4592         Add a shortcut if the window and the current clip_region doesn't
4593         overlap. This is needed when there are a lot of windows in a
4594         window. The layout test in testgtk is a good test.
4595
4596         * gdk/linux-fb/gdkwindow-fb.c:
4597         Whitespace fix.
4598
4599 2001-02-13  Sven Neumann  <sven@convergence.de>
4600
4601         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
4602
4603 2001-02-13  Alexander Larsson  <alexl@redhat.com>
4604
4605         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
4606         Don't reference last_cursor if it is null. Fixes crash when rotating
4607         the screen before having moved the mouse.
4608
4609         * gdk/linux-fb/gdkcc-fb.c: Zapp!
4610
4611         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
4612
4613         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
4614         when using 90 or 270 degrees rotation.
4615
4616 2001-02-12  Havoc Pennington  <hp@pobox.com>
4617
4618         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
4619         it always set the foreground, even if we were only using
4620         a stipple.
4621         (gdk_draw_layout_line_with_colors): new function, allow
4622         override colors
4623         (gdk_draw_layout_with_colors): new function, allow override
4624         colors
4625         (gdk_pango_layout_line_get_clip_region): function to get the clip
4626         region for a logical text range
4627         (gdk_pango_layout_get_clip_region): get the clip region for a
4628         logical text range
4629
4630         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
4631         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
4632         the right number of arguments.
4633
4634         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
4635         enhance the function to check that node data corresponds to a 
4636         view still belonging to the tree.
4637
4638         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
4639         GtkTreePath
4640         (gtk_tree_view_inserted): ditto
4641         (gtk_tree_view_child_toggled): ditto
4642
4643         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
4644         simplify this code.
4645
4646         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
4647         a PangoAttrList
4648
4649         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
4650
4651         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
4652
4653         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
4654         size in the size request 
4655         (gtk_menu_bar_size_allocate): consider toggle size here
4656
4657         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
4658         that displays a widget in the toggle slot
4659
4660         * gtk/testgtk.c: test GtkImageMenuItem
4661
4662         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
4663         
4664         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
4665         request and allocation
4666
4667         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
4668
4669         * gtk/gtkcheckmenuitem.c
4670         (gtk_check_menu_item_toggle_size_request): ditto
4671         
4672 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
4673
4674         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
4675         reference.
4676
4677         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
4678         and refuse to initialize GTK+ if they fail.
4679
4680 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
4681
4682         * configure.in: Add check for gtk-doc version.
4683
4684 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
4685
4686         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
4687         where the xpad/ypad was only being used on one side!
4688
4689 2001-02-11  Tor Lillqvist  <tml@iki.fi>
4690
4691         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
4692         function, copied from X11 version.
4693
4694         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
4695         DestroyCursor failures. The reason for the problem (despite the
4696         inconsistent messages from GetLastError()) was that
4697         DestroyCursor() cannot be called while a cursor is set in a
4698         window. Set the new cursor first and then destroy the old one.
4699         Thanks to jpe@archaeopteryx.com.
4700
4701         * gdk/win32/gdkcc-win32.c: Remove.
4702
4703         * gdk/win32/Makefile.am: Remove from here, too.
4704         
4705         * gdk/gdk.def
4706         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
4707
4708         * gtk/gtk.def
4709         * gtk/makefile.mingw.in: Updates.
4710
4711 2001-02-08  Havoc Pennington  <hp@redhat.com>
4712
4713         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
4714         add a widget to a bin that already has a child.
4715
4716         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
4717
4718         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
4719         
4720         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
4721
4722         * gdk/gdk.h: remove gdkcc.h
4723
4724         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
4725
4726         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
4727         GdkPixbuf, since the previous implementation was GdkColorContext
4728         dependent.
4729
4730         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
4731         
4732 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
4733
4734         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
4735         a sane value!
4736
4737 2001-02-08  Havoc Pennington  <hp@redhat.com>
4738
4739         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
4740         lighten them.
4741
4742 2001-02-08  Havoc Pennington  <hp@redhat.com>
4743
4744         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
4745         validation idle
4746
4747         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
4748         cell renderer
4749
4750         * demos/pixbuf-demo.c (timeout): remove deprecated
4751         gtk_widget_draw
4752
4753         * demos/testpixbuf-save.c (main): remove deprecated
4754         gtk_drawing_area_size
4755
4756         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
4757         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
4758         at the start of the allocation.
4759         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
4760         unsetup or NULL model.
4761
4762         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
4763         even/odd/sorted cells in the tree view.
4764
4765         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4766         bugfixes
4767
4768         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
4769         backgrounds with draw_flat_box using different detail for even/odd
4770         rows.
4771
4772         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
4773         row, so we can draw the alternating colors thing
4774
4775         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
4776         property from a synonym property, notify for the synonym.
4777         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
4778         (gtk_text_tag_get_property): Always return the font, even if
4779         all its fields aren't set
4780
4781         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
4782         store the attr list; it leaves us with no way to change attributes
4783         in _render according to the render flags, and no way to implement
4784         get_property. Instead store all the specific text attributes. 
4785         Separate whether an attribute is enabled from its value. Sync all
4786         properties with GtkTextTag, make them all consistent, etc.
4787
4788         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
4789         renderers can highlight the sort row/column     
4790
4791         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
4792         accessor functions to get values; this has the side effect of
4793         showing up which accessor functions were missing. Added those.
4794
4795         * gtk/gtktreeviewcolumn.h: Replace set_justification with
4796         set_alignment, to be consistent with GtkLabel, GtkMisc
4797
4798         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
4799         arrow.
4800
4801         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
4802
4803         * gtk/gtktreesortable.h: updates in here
4804
4805 2001-02-07  Sven Neumann  <sven@convergence.de>
4806
4807         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
4808         pango dimensions after painting the background. We used to draw
4809         gigantic flat boxes here.
4810
4811 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
4812
4813         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
4814         error introduced with earlier commit) (pointed out by
4815         Ollie Lho)
4816
4817 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
4818
4819         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
4820         which are no longer necessary.
4821
4822 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
4823
4824         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
4825
4826 2001-02-04  Tor Lillqvist  <tml@iki.fi>
4827
4828         * gdk/gdk.def
4829         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
4830         Provide dummy implementations.
4831
4832 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
4833
4834         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
4835
4836         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
4837         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
4838         deprecated this function.
4839
4840         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
4841         argument.
4842
4843 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
4844
4845         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
4846
4847 2001-02-03  Havoc Pennington  <hp@pobox.com>
4848
4849         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
4850         Mikael Hermansson with patch from Mikael (if there was a toggle
4851         start one after the first character in the range, this function
4852         was broken). Bug #50380
4853
4854 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
4855
4856         * configure.in: Remove confusing comment about X11.
4857
4858 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
4859
4860         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
4861         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
4862         
4863 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
4864
4865         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
4866         it breaks things on BSD. If you want to compile GTK+ with
4867         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
4868         when configuring, since GTK+ simply can't be "pure ANSI" 
4869         in the header files it uses. (#8170, Greg Hudson)
4870
4871 2001-02-02  Havoc Pennington  <hp@redhat.com>
4872
4873         * gtk/gtkwindow.c: docs
4874
4875         * gtk/gtkwidget.c: docs
4876         (gtk_widget_set_colormap): add a reference to the colormap
4877         (gtk_widget_get_default_colormap): add a reference to the colormap
4878
4879         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
4880
4881         * gtk/gtktextiter.c: docs
4882
4883         * gtk/gtkmain.c (gtk_propagate_event): docs
4884
4885         * gtk/gtkpaned.c (gtk_paned_get_position): docs
4886         (gtk_paned_set_position): docs
4887
4888         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
4889         sort interface, no implementation yet.
4890
4891         * demos/testpixbuf.c (new_testrgb_window): replace
4892         gtk_drawing_area_size() with gtk_widget_set_usize()
4893
4894         * demos/testpixbuf-drawable.c (main): ditto
4895         
4896         * gtk/testgtk.c: remove use of GtkStatusbarMsg
4897
4898         * gtk/gtktextbuffer.c: docs
4899
4900         * gtk/gtkstock.c: docs
4901
4902         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
4903
4904         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
4905
4906         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
4907         
4908         * gtk/gtkimage.c: add some docs in here
4909         (gtk_image_size_request): change name of
4910         gtk_widget_render_stock_icon
4911         (gtk_image_get_icon_set): don't dup returned string
4912         (gtk_image_get_icon_set): don't dup returned string
4913
4914         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
4915         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
4916         and gtkiconfactory.h functions
4917
4918         * gtk/gtkiconfactory.c: add some docs in here
4919
4920         * gtk/gtkmain.c (gtk_get_default_language): document
4921         (gtk_get_current_event): document
4922         (gtk_get_current_event_state): document
4923         (gtk_get_event_widget): document
4924
4925         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
4926
4927         * gtk/gtkcontainer.c: Add some documentation
4928         (gtk_container_add): give a more explanatory warning on adding an
4929         already-parented widget, this is kind of a FAQ and also a common
4930         typo that's easier to debug with a nice warning 
4931
4932         * gtk/gtkcellrenderertoggle.c
4933         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
4934         adding this, it's useless
4935         (gtk_cell_renderer_toggle_set_active): remove
4936         (gtk_cell_renderer_toggle_get_radio): add
4937
4938         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
4939         the NULL cell renderer, that doesn't make any sense to me. 
4940
4941         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
4942         demo code should never use deprecated features.
4943
4944         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
4945         code should never use deprecated features.
4946
4947         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
4948         gtk_widget_queue_clear_area deprecated
4949
4950         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
4951         deprecated
4952
4953         * gtk/gtklabel.h: mark gtk_label_get() deprecated
4954
4955         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
4956         a GdkImage deprecated, replaced by new consistently-named
4957         functions       
4958
4959         * gtk/gtkmain.h: Mark gtk_exit() deprecated
4960
4961         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
4962
4963         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
4964         deprecated
4965
4966         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
4967         so it won't appear in docs and confuse people.
4968
4969         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
4970
4971         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
4972         macros deprecated. (can't mark the type itself deprecated, since
4973         GtkProgressBar is not deprecated and we need the type decl to use
4974         GtkProgressBar)
4975
4976         * gtk/gtkpixmap.h: Mark deprecated
4977
4978         * gtk/gtkoldeditable.h: Mark deprecated
4979
4980         * gtk/gtklist.h: Mark deprecated
4981
4982         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
4983         for anything anymore.
4984
4985         * gtk/gtkctree.h: Mark deprecated
4986
4987         * gtk/gtkclist.h: Mark deprecated
4988
4989         * gtk/gtkpreview.h: Mark deprecated
4990
4991         * gtk/gtkpacker.h: Mark deprecated
4992
4993         * gtk/gtktipsquery.h: Mark deprecated
4994
4995         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
4996
4997         * gtk/gtkvruler.h: Add comment that it will move out of GTK
4998
4999         * gtk/gtkhruler.h: Add comment that it will move out of GTK
5000
5001         * gtk/gtkruler.h: Add comment that it will move out of GTK
5002
5003         * gtk/gtkgamma.h: Add comment that it will move out of GTK
5004
5005         * gtk/gtkcurve.h: Add comment that it will move out of GTK
5006
5007 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
5008
5009         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
5010         gdk_colormap_sync private since it was never exported
5011         in a header file.
5012
5013         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
5014         colormap->colors[] for StaticGray, StaticColor colormaps.
5015
5016         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
5017         was being used as if it was image->bits_per_pixel.
5018
5019         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
5020         for the image in the GdkImage structure since it isn't
5021         reconstructable, and we need it to handle packed types
5022
5023         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
5024         the assumption that on Win32 image->bits_per_pixel == image->depth,
5025         always.
5026
5027         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
5028
5029         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
5030         warning message if no converter can be found. 
5031
5032 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
5033
5034         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
5035         chars to isupper() / tolower(). (#567)
5036
5037         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
5038         to clear up 64-bit warnings. (#567)
5039
5040 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
5041
5042         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
5043         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
5044
5045         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
5046         since some people set $(libdir) separately. (#1290, David Kaelbling)
5047
5048 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
5049
5050         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
5051         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
5052         MAXPATHLEN, but the code here depends on a fixed value.)
5053         (#4524)
5054
5055 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
5056
5057         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
5058         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
5059
5060 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
5061
5062         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
5063         viewable there is no way that moving the node will cause the 
5064         focus row to become not viewable, so omit check on the visibility
5065         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
5066
5067 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
5068
5069         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
5070         selection before inserting new text.
5071
5072 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
5073
5074         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
5075         Make the sensitivity of the reparented child track that of
5076         the original parent menu item. (#34218, David Hodson)
5077
5078         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
5079         the case where the current item is destroyed properly.
5080
5081         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
5082         some edge cases with child-less menuitems.
5083         
5084 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
5085
5086         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
5087         key pop down window. (#12074, Jon K Hellan)
5088
5089 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
5090
5091         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
5092         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
5093         The solution here isn't perfect - you get an extraneous
5094         emission of "toggle", which could conceivably confuse an app,
5095         but better than the current situation. LXR search seems to
5096         indicate that no apps in GNOME CVS connect to "toggle".
5097
5098 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
5099
5100         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
5101         gtk_public_h_sources to directly here to avoid warning when
5102         building srcdir != builddir. (#9656)
5103
5104 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
5105
5106         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
5107         handlers in gtkrange.c return the proper values (TRUE == handled)
5108         (#10316).
5109
5110         This is just the tip of the iceberg, but gtkrange.c is the
5111         most common place where the propagation is problematical,
5112         and also a place where it is almost certainly safe to change
5113         this in the stable branch.
5114
5115         (You don't want right click popups on a range control or anything...)
5116
5117 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
5118
5119         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
5120         area on focus out, even if a background pixmap isn't set.
5121         (#13941)
5122         
5123 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
5124
5125         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
5126         to deal with setting the shape properly when scrolling arrows are
5127         turned on, but not visible because there is sufficient space.
5128         (#13432)
5129
5130 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
5131
5132         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
5133         items with submenus, destroy the item along with the submenu.
5134         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
5135         properly.
5136
5137         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
5138         later.
5139
5140 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
5141
5142         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
5143         the focus widget sometimes wasn't drawn with the default if there
5144         was no default widget.
5145
5146         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
5147         unreference pixmaps. 
5148
5149         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
5150         for some extra safety.
5151
5152 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
5153
5154         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
5155         the text of a cell to the old pointer value better, by
5156         copying the new text before freeing the old text. Some code
5157         cleanup. (#8079, Karl Nelson)
5158
5159 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
5160
5161         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
5162         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
5163
5164 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
5165
5166         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
5167         item from a menu, check to see if it matches 
5168         menu->old_active_menu_item, and if so, unref and clear
5169         old_active_menu_item (Patch from Pavel Cisler)
5170
5171         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
5172         menu_shell->active_menu_item, if it is the child being
5173         removed. (Patch based on that of Gene Ragan, #50337)
5174
5175 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
5176
5177         * gdk/linux-fb/gdkselection-fb.c: 
5178         * gdk/linux-fb/gdkcolor-fb.c: 
5179         * gdk/linux-fb/gdkdrawable-fb2.c: 
5180         * gdk/linux-fb/gdkfont-fb.c: 
5181         * gdk/linux-fb/gdkim-fb.c: 
5182         * gdk/linux-fb/gdkinput.c: 
5183         * gdk/linux-fb/gdkkeyboard-fb.c: 
5184         * gdk/linux-fb/gdkmain-fb.c: 
5185         * gdk/linux-fb/gdkrender-fb.c: 
5186         A bunch of whitespace cleanup.
5187         
5188 2001-01-30  Havoc Pennington  <hp@pobox.com>
5189
5190         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
5191         #ifdef GTK_ENABLE_BROKEN.
5192
5193         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
5194         GTK_ENABLE_BROKEN just before including the broken headers.
5195         
5196         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
5197         deprecated types registered.
5198
5199         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
5200         we have to test the broken stuff.
5201
5202         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
5203         
5204 2001-01-30  Havoc Pennington  <hp@redhat.com>
5205
5206         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
5207         here where prev pointer was set to the wrong thing
5208
5209         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
5210         (gtk_tree_path_is_descendant): new function
5211
5212         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
5213         cached length
5214         (gtk_list_store_get_iter): don't modify iter if we can't get the
5215         path.
5216
5217         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
5218         
5219         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
5220         GtkTreeDragDest
5221
5222         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
5223         was causing segfault
5224
5225         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
5226         pointer to NULL
5227
5228         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
5229
5230         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
5231         on returning FALSE
5232         (gtk_list_store_iter_children): ditto
5233         (gtk_list_store_iter_nth_child): ditto
5234         (gtk_list_store_iter_nth_child): ditto
5235         (gtk_list_store_iter_parent): ditto
5236
5237         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
5238         on iter->user_data != NULL instead of silently accepting it.
5239         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
5240         we are returning TRUE.
5241         (gtk_tree_store_iter_children): ditto
5242         (gtk_tree_store_iter_nth_child): ditto
5243         (gtk_tree_store_iter_parent): ditto
5244         (gtk_tree_store_insert): remove handling of parent->user_data ==
5245         NULL, replace with parent == NULL       
5246
5247         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
5248         and a comment explaining things
5249
5250         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
5251         interface support to GtkTreeStore.
5252
5253         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
5254         FALSE if no prev, fix
5255
5256         * gtk/gtktreeview.c (set_source_row): use a row reference
5257         (set_dest_row): use a row reference
5258
5259 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
5260
5261         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
5262         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
5263         (gtk_tree_selection_select_iter): The same as above.
5264
5265 2001-01-26  Havoc Pennington  <hp@redhat.com>
5266
5267         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
5268         which holds a handle to a specific row (particular set of values
5269         in the model, i.e. pointer-identity row).
5270
5271         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
5272         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
5273         Still need to use it for the src/dest row saved on the drag context.
5274
5275 2001-01-26  Havoc Pennington  <hp@redhat.com>
5276
5277         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
5278
5279         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
5280         not offset by TREE_VIEW_HEADER_HEIGHT
5281         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
5282         TREE_VIEW_HEADER_HEIGHT
5283
5284         * configure.in (included_loaders): for me, --with-included-loaders
5285         generates the error "the specified loader yes does not exist",
5286         i.e. the arg defaults to "yes", so change test for value ""
5287         to test for value "yes", and include all loaders in that case.
5288
5289         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
5290
5291         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
5292         handle TREE_VIEW_VERTICAL_SEPARATOR
5293         (gtk_tree_view_bin_expose): fix to consider the row offset as
5294         pointing halfway into vertical separator.       
5295         (gtk_tree_view_draw_node_focus_rect): ditto
5296
5297         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
5298         --gtk-debug=updates, which causes gdk_window_set_debug_updates
5299         (TRUE) to be called.
5300
5301         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
5302         debug mode where the invalid region is colored in on invalidate,
5303         so you can see the flicker and know whether your redraw code is 
5304         doing a good job.
5305
5306         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
5307         tree window coordinates (clip rect is in tree window coords)
5308
5309         * gtk/Makefile.am: add gtktreednd.[hc]
5310
5311         * gtk/gtkliststore.c: implement gtktreednd interfaces.
5312
5313         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
5314         drag-and-drop data operations on a model (so we can set up tree
5315         drag-and-drop automatically)
5316
5317         * gtk/testgtk.c: Add a window to change sensitivity in the
5318         GtkLabel test; add a way to change the entry frame in GtkEntry
5319         test
5320
5321         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
5322         (gtk_entry_get_has_frame): new functions to remove the frame
5323         around an entry
5324         (gtk_entry_size_request): shrink requisition if no frame
5325         (gtk_entry_draw_focus): don't draw frame if no frame
5326
5327         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
5328         checks inside a cell renderer
5329         (gtk_default_draw_option): ditto for options
5330
5331         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
5332         children from the alignment, not the button
5333         (gtk_tree_view_column_init): ref/sink the column, to emulate
5334         GObject refcounting.
5335
5336         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
5337         
5338         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5339         Use theme functions to draw the toggles 
5340
5341         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
5342
5343         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
5344         GdkPangoAttrEmbossed to use in rendering insensitive text
5345
5346         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
5347
5348         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
5349         using new GDK features
5350         
5351 2001-01-24  Alexander Larsson  <alexl@redhat.com>
5352
5353         * gtk/gtkimage.c:
5354         Splitted gtk_image_clear into gtk_image_clear() and
5355         gtk_image_reset(). Call gtk_image_clear() in ::destroy
5356         to avoid leaks.
5357
5358         * gtk/gtklabel.c (set_markup):
5359         Don't leak text.
5360
5361         * gtk/gtktextlayout.c:
5362         Always free display->shaped_objects.
5363
5364         * gtk/testgtk.c (create_clist):
5365         Don't leak custom style.
5366
5367 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5368
5369         * gtk/gtkcolorsel.c (grab_color_at_mouse):
5370         Don't leak image. Simplify using gdk_colormap_query_color().
5371         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
5372
5373         * linux-fb/gdkcolor-fb.c:
5374         Implemented gdk_colormap_query_color.
5375
5376 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5377
5378         * linux-fb/gdkcursor-fb.c:
5379         Don't leak built-in cursors.
5380
5381         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
5382         Don't leak tmp_points.
5383
5384         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
5385         Don't modify desc. Don't leak font if the PangoFont
5386         isn't found.
5387         
5388         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
5389         Free dash_list.
5390
5391         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
5392         Don't leak string.
5393         
5394 2001-01-20  Havoc Pennington  <hp@pobox.com>
5395
5396         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
5397         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
5398         me, matches Pango
5399
5400 2001-01-22  Havoc Pennington  <hp@redhat.com>
5401
5402         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
5403
5404         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
5405
5406         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
5407         Remove, move back to gdk-pixbuf
5408
5409         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
5410         to all the word functions
5411
5412         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
5413         before doing anything on NULL layout or if we don't have the focus
5414
5415         * gtk/testtext.c (fill_example_buffer): "justification"
5416
5417         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
5418         to be called "justification" not "justify"
5419
5420         * demos/gtk-demo/textview.c (create_tags): "justification"
5421         
5422         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
5423
5424 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5425
5426         * gdk/gdkwindow.c (gdk_window_invalidate_region):
5427         Don't leak visible_region. Use visible_region instead of region.
5428         
5429         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
5430         Don't do extra gdk_drawable_ref(). This is not X.
5431         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
5432         gdk_fb_focused_window is ref:ed.
5433         (gdk_fb_window_send_crossing_events): Watch out for destroyed
5434         windows.
5435
5436 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5437
5438         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
5439         Don't leak the PangoFontDescriptor.
5440
5441 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
5442
5443         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
5444         when not realized.
5445         (gtk_tree_view_scroll_to_cell): Make work when not realized.
5446         (gtk_tree_view_realize): add scroll_to support
5447         (gtk_tree_view_finalize): add a finalize method.  Populate.
5448         (gtk_tree_view_insert_column): ref and sink the column.
5449         (gtk_tree_view_append_column): ref and sink the column.
5450         (gtk_tree_view_queue_draw_node): New function to handle redrawing
5451         individual nodes.  Should make the code much more efficient, if
5452         actually used.
5453
5454 2001-01-19  Havoc Pennington  <hp@redhat.com>
5455
5456         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
5457         byte_offset variable was being used to mean both "offset into
5458         layout" and "offset into buffer line" which was no longer true
5459         with addition of preedit string; fix
5460
5461 2001-01-19  Havoc Pennington  <hp@redhat.com>
5462
5463         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
5464
5465         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
5466         function
5467
5468         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
5469         implement
5470
5471         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
5472         scroll_to_cell, matches TextView scroll functions better
5473         (gtk_tree_view_tree_to_widget_coords): new function
5474         (gtk_tree_view_widget_to_tree_coords): new function
5475         (gtk_tree_view_get_visible_rect): new function
5476         (gtk_tree_view_get_path_at_pos): accept negative coordinates
5477         (gtk_tree_view_draw_node_focus_rect): new function moved from
5478         draw_focus, also, use width of bin_window as width of the focus
5479         rect
5480         (gtk_tree_view_expand_row): fix bug where it didn't recognize
5481         already-expanded rows
5482         (gtk_tree_view_get_cell_rect): new function
5483         (gtk_tree_view_get_path_at_pos): return the click position
5484         relative to the passed-in cell
5485         (gtk_tree_view_set_expander_column): new function
5486
5487         * configure.in: remove gtk-config-2.0 chmod
5488
5489         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
5490         and properly handle drags with targets we don't understand
5491         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
5492         scrolling anyway
5493         (gtk_text_view_drag_drop): stop scrolling here though, and set the
5494         mark invisible
5495
5496         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
5497         function
5498         (gtk_drag_dest_get_target_list): new function
5499         (gtk_drag_dest_set_target_list): new function
5500         
5501         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
5502
5503         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
5504         related to drag-and-drop
5505
5506 2001-01-19  Alexander Larsson  <alexl@redhat.com>
5507
5508         * gdk/linux-fb/gdkprivate-fb.h:
5509         Define EMULATE_GDKFONT.
5510         Add extra pango_font stuff to GfkFontPrivate.
5511         
5512         * gdk/linux-fb/gdkdrawable-fb2.c:
5513         * gdk/linux-fb/gdkfont-fb.c:
5514         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
5515         emulation using PangoFont.
5516
5517 2001-01-17  Havoc Pennington  <hp@pobox.com>
5518
5519         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
5520         all the non-deprecated set_foo functions. Added missing object
5521         properties, and added g_object_notify() to setters. 
5522         Wrote docs.
5523         
5524 2001-01-18  Tor Lillqvist  <tml@iki.fi>
5525
5526         * gtk/gtkmain.c
5527         * gtk/gtkrc.c: (Win32) Use the new
5528         g_win32_get_package_installation_(sub)directory() functions.
5529
5530         * config.h.win32.in: New file.
5531         
5532         * config.h.win32: Removed.
5533
5534         * configure.in: Output config.h.win32.
5535
5536         * Makefile.am: Add it to EXTRA_DIST.
5537
5538         * gtk/gtk.def: Update.
5539
5540 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
5541
5542         * gtk/gtklabel.c (gtk_label_size_request): Set the
5543         attributes onto the PangoLayout even if they are newly
5544         created from label->pattern.
5545
5546 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
5547
5548         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
5549
5550         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
5551         structures in functions. Fixes bug where gtk_dataset_*
5552         was accidentally still being used in one place, causing
5553         every dest side event to be treated independently.
5554
5555         * gtk/gtkdnd.c: Remove last vestages of handling
5556         ::draw (fixes warning)
5557         
5558         * gtk/gtkentry.[ch]: Add drag and drop support.
5559
5560         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
5561         new function gtk_check_drag_threshhold() for checking
5562         to check if (dx,dy) has exceeded the threshhold for starting
5563         a drag and use it everywhere.
5564
5565 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
5566
5567         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
5568         add -I{includedir}/gtk-2.0.
5569
5570         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
5571         gdk/gdk-pixbuf.h: Doc fixups.
5572         
5573         * gtk/gtkobject.h: Remove trailing , from enum
5574
5575 2001-01-17 Alexander Larsson <alexl@redhat.com> 
5576
5577         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
5578         Doh! Mixed up x and y.
5579
5580         * gdk/linux-fb/gdkglobals-fb.c:
5581         Removed gdk_fb_pointer_grab_window_events,
5582         added _gdk_fb_pointer_grab_owner_events and
5583         _gdk_fb_keyboard_grab_owner_events.
5584
5585         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
5586         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
5587         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
5588         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
5589         Send crossing events after ungrab finished.
5590         (gdk_keyboard_grab): Set ..._owner_events
5591         (type_masks): Move out of function.
5592         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
5593         gdk_fb_keyboard_event_window): New functions, return the
5594         window an event should be targeted at. Handles grabs and
5595         event propagation. Can return NULL.
5596         (gdk_event_make): Remove event_mask checking. Now always
5597         returns an event.
5598                 
5599         * gdk/linux-fb/gdkkeyboard-fb.c:
5600         * gdk/linux-fb/gdkproperty-fb.c:
5601         * gdk/linux-fb/gdkselection-fb.c:
5602         Use new event_window/gdk_event_make() behaviour.
5603         
5604         * gdk/linux-fb/gdkmouse-fb.c:
5605         Use new event_window/gdk_event_make() behaviour.
5606         Only send motion events if in the same window.
5607         If grabbed, use cursor from window if sibling of grabbed
5608         window, and cursor from grabbed window otherwise.
5609
5610         * gdk/linux-fb/gdkprivate-fb.h:
5611         Update gdk_fb_window_send_crossing_events, gdk_event_make
5612         and grab varaible declarations. Add gdk_fb_*_event_window().
5613
5614         * gdk/linux-fb/gdkwindow-fb.c:
5615         Use new event_window/gdk_event_make() behaviour.
5616         Keep correct track of focus window.
5617         (gdk_window_set_events): Set all specific button motion masks
5618         if GDK_BUTTON_MOTION_MASK set.
5619
5620         * gtk/gtkdnd.c (gtk_drag_update):
5621         Free info->last_event if gdk_drag_motion returned FALSE.
5622
5623 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5624
5625         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
5626         Eliminate redraws when input-only windows are shown or
5627         hidden. Thanks to jpe@archaeopteryx.com.
5628
5629 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
5630
5631         * docs/faq/gtk-faq.sgml: FAQ update:
5632           - Update to bugzilla
5633           - Add GTK+ and security/SUID/SGID
5634           - Add DnD question
5635
5636 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
5637
5638         * gdk/linux-fb/gdkdnd-fb.c:
5639         Some cleanups.
5640         
5641 2001-01-15  Havoc Pennington  <hp@pobox.com>
5642
5643         * tests/testtreeview.c: add test stuff for CellRendererToggle
5644
5645         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
5646         accessor
5647
5648         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
5649         only toggle on button press (would do release like GtkButton, but
5650         we'd need implicit grab code for treeview cells)
5651
5652 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5653
5654         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
5655
5656         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
5657         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
5658
5659         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
5660         to g_{locale,filename}_{to,from}_utf8 to match current API.
5661
5662         * gtk/makefile.msc.in (gtk_OBJECTS)
5663         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
5664
5665         * gtk/gtk.def: Update.
5666
5667 2001-01-15  Tor Lillqvist  <tml@iki.fi>
5668
5669         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
5670         implementaion that more closely mimics the events that an X server
5671         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
5672         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
5673         with nested preview widgets, for instance, more responsive when
5674         you move the mouse quickly into them.
5675         (find_window_for_pointer_event): Make it actually compile.
5676         (gdk_event_translate): Set send_event to the value of
5677         InSendMessage (). This doesn't really mean the same as X11's
5678         send_event flag, but is close enough, says jpe@archaeopteryx.com
5679
5680 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5681
5682         * gdk/linux-fb/gdkdnd-fb.c:
5683         Implemented drag and drop.
5684         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
5685         when it tries to free and then copy the same event (info->last_event).
5686         I am not sure about why this happens, but will continue looking.
5687
5688 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5689
5690         * gdk/linux-fb/gdkwindow-fb.c:
5691         Use gdk_window_invalidate_rect instead of
5692         gdk_window_invalidate_rect_clear to minimise flashing.
5693         When hiding windows you need to clear the root window though.
5694
5695 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5696
5697         * gdk/linux-fb/gdkdrawable-fb2.c:
5698         For optization, add an full_shapes argument to gdk_fb_clip_region.
5699         If this is false, only the cliprects of the shapes are used.
5700
5701         * gdk/linux-fb/gdkprivate-fb.h:
5702         Export gdk_fb_window_peek_shape.
5703         Add full_shapes to gdk_fb_clip_region.
5704
5705         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
5706         When moving a window, don't clear everything under the it, just the
5707         root window. Makes stuff faster and flash less.
5708         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
5709         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
5710         offset of the shape.
5711         
5712
5713 2001-01-12  Havoc Pennington  <hp@redhat.com>
5714
5715         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
5716         current invalid region, fixes redraw bug while scrolling the 
5717         text widget
5718
5719         * gtk/gtktextview.c, gtk/gtktextview.h:
5720         Rearrange the scrolling/validation/etc. code in a major way, 
5721         so it seems to make sense to me. Probably isn't genuinely that
5722         much better, but...
5723
5724         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
5725         notifies
5726
5727         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
5728
5729 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
5730
5731         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
5732         Hide mouse pointer while rotation. Show it afterwards.
5733
5734 2001-01-12  Alexander Larsson  <alexl@redhat.com>
5735
5736         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
5737         windows in consideration when generating clip region.
5738
5739         * gdk/linux-fb/gdkfb.h:
5740         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
5741
5742         * gdk/linux-fb/gdkprivate-fb.h:
5743         Add shape to GdkWindowFBDatat.
5744         exported gdk_fb_window_get_abs_shape().
5745         removed gdk_fb_draw_lines declaration.
5746
5747         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
5748         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
5749         send focus changes when there is a grabbed window.
5750         (gdk_window_get_pointer): Handle shaped windows.
5751         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
5752         (gdk_fb_window_peek_shape): Returns the shape for a window,
5753         handles GDK_FB_USE_CHILD_SHAPE.
5754         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
5755         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
5756         (gdk_window_shape_combine_mask): Implement.
5757
5758         * gtk/gtkwindow-decorate.c:
5759         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
5760         setting the shape of a window makes the window transparent.
5761
5762 2001-01-11  Havoc Pennington  <hp@redhat.com>
5763
5764         * gtk/gtktreemodelsimple.h: Oops, broke some macros
5765
5766 2001-01-10  Havoc Pennington  <hp@redhat.com>
5767
5768         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
5769         add this function, bug 40251
5770
5771         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
5772         of type macro   
5773
5774 2001-01-11  Alexander Larsson  <alexl@redhat.com>
5775
5776         * acconfig.h:
5777         Added ENABLE_SHADOW_FB
5778
5779         * configure.in:
5780         Added --disable-shadowfb
5781
5782         * gdk/linux-fb/gdkcursor-fb.c:
5783         Update shadowfb when updating cursor
5784
5785         * gdk/linux-fb/gdkdrawable-fb2.c:
5786         Added wrappers for shadowfb that calls  the normal drawable
5787         methods, but calls gdk_shadow_fb_update(bounding box) when
5788         GdkWindows are drawed to.
5789         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
5790         which also returns the bounding box.
5791
5792         * gdk/linux-fb/gdkfb.h:
5793         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
5794
5795         * gdk/linux-fb/gdkgeometry-fb.c:
5796         Update shadowfb when scrolling window.
5797
5798         * gdk/linux-fb/gdkglobals-fb.c:
5799         Add _gdk_fb_screen_angle.
5800         
5801         * gdk/linux-fb/gdkkeyboard-fb.c:
5802         Test code for screen rotation. Shift-F2 in the xlate driver
5803         rotates the screen.
5804
5805         * gdk/linux-fb/gdkmain-fb.c:
5806         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
5807
5808         * gdk/linux-fb/gdkmouse-fb.c:
5809         Use fb_width/height instead of modeinfo.xres/yres.
5810
5811         * gdk/linux-fb/gdkprivate-fb.h:
5812         Added fb_men, fb_width, fb_height & fb_stride. When using
5813         shadow fb these can differ from the framebuffer stuff.
5814         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
5815         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
5816         _gdk_fb_screen_angle. Removed CM, RP.
5817
5818         * gdk/linux-fb/gdkrender-fb.c:
5819         Added code for shadowfb handling and screen rotation using
5820         shadowfb.
5821
5822         * gdk/linux-fb/gdkwindow-fb.c:
5823         Use fb_mem, fb_stride, fb_width, fb_height.
5824         Added recompute_rowstride to reset the rowstride of all windows.
5825         Added gdk_fb_recompute_all() which recomputes rootwindow size,
5826         window abs positions and window rowstrides. Usefull when the
5827         rotation has changed.
5828
5829 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
5830
5831         * docs/faq/gtk-faq.sgml: update to make web site updating easier
5832
5833 2001-01-10  Havoc Pennington  <hp@redhat.com>
5834
5835         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
5836         where sibling == iter
5837         (gtk_tree_store_insert_after): handle sibling == iter
5838         (gtk_tree_store_prepend): remove stamp checks
5839         (gtk_tree_store_insert_before): ditto
5840         (gtk_tree_store_append): ditto
5841         (gtk_tree_store_get_path): ditto
5842         (gtk_tree_store_get_value): ditto
5843         (gtk_tree_store_iter_has_child): ditto
5844         (gtk_tree_store_iter_n_children): ditto
5845         (gtk_tree_store_iter_nth_child): ditto
5846         (gtk_tree_store_insert_after): ditto
5847         (gtk_tree_store_is_ancestor): ditto
5848         (gtk_tree_store_iter_depth): ditto
5849         (gtk_tree_store_insert_before): assert that sibling's parent is
5850         the same as the passed-in parent
5851         (gtk_tree_store_insert_after): assert that sibling's parent is
5852         the same as the passed-in parent
5853
5854         
5855         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
5856         function to get the first iterator in a model
5857         
5858         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
5859         conventionally the "root" in this sense is just NULL afaict.
5860
5861         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
5862         where sibling == iter
5863         (gtk_list_store_insert_after): handle case where sibling == iter
5864
5865         * tests/testtreeview.c (run_automated_tests): fairly lame basic
5866         automated tests for ListStore, TreeStore
5867
5868         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
5869         (gtk_list_store_insert): update tail pointer, and fix it to work
5870         (gtk_list_store_insert_before): update tail pointer, and fix it to work
5871         (gtk_list_store_append): use tail to be faster
5872         (gtk_list_store_prepend): fix it, update tail pointer
5873         (gtk_list_store_insert_after): fix it, update tail pointer
5874
5875         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
5876         the list
5877
5878 2001-01-09  Havoc Pennington  <hp@redhat.com>
5879
5880         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
5881         is NULL due to a pending resize
5882
5883         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
5884         column width to values less than 1
5885
5886         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
5887         width to be between min/max width, and still set the width 
5888         even if autosize is turned on, so the tree view can use this 
5889         function in order to autosize.
5890         (gtk_tree_view_column_init): set initial width to 1 not 0
5891
5892         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
5893         setter function to modify column width, so we get notification
5894         (gtk_tree_view_insert_iter_height): ditto
5895         (gtk_tree_view_calc_size): ditto
5896         (gtk_tree_view_check_dirty): ditto
5897
5898         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
5899         properties to change all the interesting attributes of the tree
5900         view column.
5901         (gtk_tree_view_column_set_header_clickable): rename set_clickable
5902         (gtk_tree_view_column_get_clickable): add
5903         (gtk_tree_view_column_set_cell_renderer): don't unset the current
5904         attributes; assume a cell renderer with equivalent object
5905         properties has been swapped in. Do g_object_notify().
5906         (gtk_tree_view_column_set_visible): g_object_notify
5907         (gtk_tree_view_column_get_sizing): rename from get_col_type
5908         (gtk_tree_view_column_set_sizing): g_object_notify
5909         (gtk_tree_view_column_set_width): add g_object_notify
5910         (gtk_tree_view_column_set_min_width): ditto
5911         (gtk_tree_view_column_set_max_width): ditto
5912         (gtk_tree_view_column_set_title): ditto
5913         (gtk_tree_view_column_set_clickable): ditto
5914         (gtk_tree_view_column_set_widget): ditto
5915         (gtk_tree_view_column_set_justification): ditto
5916
5917 2001-01-09  Havoc Pennington  <hp@redhat.com>
5918
5919         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
5920         there are no rows in the model
5921
5922         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
5923         NULL, then return the start of the list
5924
5925         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
5926         if we can't get any rows from an empty model 
5927
5928         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
5929         extraneous * after function pointer typedef usage
5930
5931         * Makefile.am: don't specify full path to cp and rm
5932
5933         * gtk/gtkcellrenderertextpixbuf.c
5934         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
5935         NULL before dereferencing, fixes a segfault that happened from
5936         time to time
5937
5938         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
5939         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
5940         and reindent the function
5941         (gtk_cell_renderer_pixbuf_get_size): indentation
5942
5943         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
5944         we quit it
5945         (gtk_dialog_add_buttons_valist): add g_return_if_fail
5946         (gtk_dialog_set_default_response): New function, to set default
5947         button
5948         (gtk_dialog_set_response_sensitive): New function, to set 
5949         sensitivity of buttons
5950
5951         * gtk/gtkcellrendererpixbuf.c
5952         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
5953         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
5954
5955         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
5956         handle any G_TYPE_OBJECT subclass, not just the base class, and 
5957         also boxed types.
5958         (_gtk_tree_data_list_value_to_node): ditto
5959
5960         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
5961         --gtk-debug=tree
5962
5963         * gtk/gtkmain.c: add GTK_DEBUG_TREE
5964
5965         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
5966
5967 2001-01-09  Tor Lillqvist  <tml@iki.fi>
5968
5969         * gdk/win32/gdkevents-win32.c: Implement better mouse
5970         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
5971         (find_window_for_pointer_event): New function.
5972         (gdk_event_translate): Use it when handling mouse events.
5973
5974 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
5975
5976         * configure.in:
5977         Added --with-included-loaders option
5978
5979         * gdk-pixbuf/Makefile.am:
5980         * gdk-pixbuf/gdk-pixbuf-io.c:
5981         Add support for including selected gdk-pixbuf loaders only.
5982
5983         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
5984         gtk_window_set_has_frame):
5985         Added inline documentation.
5986
5987         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
5988         * docs/reference/gdk/tmpl/windows.sgml:
5989         Added inline documentation.
5990
5991 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
5992
5993         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
5994         realizing buttons that have already been realized.
5995
5996 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
5997
5998         * tests/testtreeview.c (main): Show menu items before adding to
5999         option menu.
6000
6001         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
6002         around if we kill them.
6003
6004         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6005         Return if we pass in a NULL model.
6006
6007 2001-01-08  Havoc Pennington  <hp@redhat.com>
6008
6009         * tests/testtreeview.c: hack on this some
6010
6011         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
6012         gtk_tree_store_set_valist, v is for arrays, valist for varargs
6013         list
6014         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
6015
6016         * gtk/gtkliststore.h: Add varargs set() and get() convenience
6017         functions
6018
6019 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6020
6021         * gtk/gtkwindow-decorate.[hc]:
6022         * gtk/Makefile.am:
6023         New files. Contains an implementation of a minimal WM for
6024         linux-fb.
6025
6026         * gtk/gtkwindow.h:
6027         Add the possibility for GtkWindows to specify a frame. This
6028         is used for the window decoration code, but could concievably
6029         be used for X programs too (xmms style windows).
6030         GtkWindow->frame is the toplevel window if the window is framed.
6031         The signal frame_event gets all events that are targeted to
6032         GtkWindow->frame.
6033         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
6034         
6035         * gtk/gtkwindow.c:
6036         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
6037         Call out to gtkwindow-decorate.c for WM support in linx-fb.
6038
6039 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6040
6041         * docs/README.linux-fb:
6042         Correct filename ~/.pangoft2_aliases
6043
6044         * gdk/gdkwindow.h:
6045         Added new function gdk_window_get_decorations.
6046
6047         * gdk/linux-fb/gdkfb.h:
6048         Removed _gdk_window_get_decorations declaration.
6049         Renamed _gdk_window_set_child_handler to
6050         gdk_fb_window_set_child_handler.
6051
6052         * gdk/linux-fb/gdkwindow-fb.c:
6053         Renamed _gdk_window_set_child_handler to
6054         gdk_fb_window_set_child_handler.
6055
6056         * gdk/x11/gdkwindow-x11.c:
6057         New function gdk_window_get_mwm_hints().
6058         Implemented gdk_window_get_decorations.
6059
6060         * docs/reference/gdk/tmpl/windows.sgml:
6061         * docs/reference/gdk/gdk-sections.txt:
6062         Added gdk_window_get_decorations docs.
6063         
6064 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
6065
6066         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
6067         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
6068         gdk_fb_window_send_crossing_events):
6069         Possibly send focus events when the mouse moves from one
6070         window to another.
6071
6072 2001-01-07  Tor Lillqvist  <tml@iki.fi>
6073
6074         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
6075         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
6076         to match current API.
6077
6078         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
6079         environment variable is set, don't call g_error when on a
6080         palettized (PseudoColor) display. Some people want to use GTK+ 
6081         in 256-colour mode even though works only partially.
6082
6083         * gdk/gdk.def
6084         * gtk/gtk.def
6085         * gtk/makefile.mingw.in: Update.
6086
6087 2001-01-05  Havoc Pennington  <hp@redhat.com>
6088
6089         * tests/testtreeview.c: hack on this a bit
6090
6091         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
6092         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
6093
6094         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
6095         was spelled incorrectly
6096         (GTK_IS_TREE_MODEL_SIMPLE): ditto
6097
6098         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
6099         from gtk_tree_view_set_headers_active   
6100
6101         * gtk/gtktexttag.c:
6102         (gtk_text_tag_get_property): handle PROP_DIRECTION
6103         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
6104         properties, bug 40235
6105
6106         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
6107         forward_to_line_end
6108
6109 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
6110
6111         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
6112         modules/input/gtkimcontextxim.c: Adapt to new prototypes
6113         for unicode,locale,filename conversion functions.
6114
6115 2001-01-05  Havoc Pennington  <hp@redhat.com>
6116
6117         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
6118         broken if called on the first position in the buffer.
6119
6120         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
6121         forward_to_delimiters to be called only if we aren't already at
6122         the delimiters.
6123
6124 2001-01-05  Havoc Pennington  <hp@redhat.com>
6125
6126         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
6127
6128 2001-01-05  Alexander Larsson  <alexl@redhat.com>
6129
6130         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
6131         colormap in here. Sync from X port.
6132         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
6133         Sync from X port.
6134         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
6135         This happens now and then, and i don't think it is a bug.
6136         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
6137         != endpoint.
6138         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
6139         GDK_LINE_SOLID.
6140
6141         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
6142         some of the fields filled in at least.
6143
6144         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
6145         miLineArcD is no more, remove it from the function definition.
6146
6147 2001-01-04  Havoc Pennington  <hp@redhat.com>
6148
6149         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
6150         this
6151
6152         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
6153         user_data instead of tree_node
6154
6155         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
6156         TREE_VIEW_COLUMN_SIZE
6157
6158         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
6159         "size" field to "width" finishes bug 40061
6160
6161         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
6162         for bitfields, bug 40268
6163
6164 2001-01-04  Havoc Pennington  <hp@redhat.com>
6165
6166         Rename some stuff:
6167         
6168         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
6169
6170         s/GtkModelSimple/GtkTreeModelSimple/g;
6171         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
6172         s/gtk_model_simple/gtk_tree_model_simple/g;
6173         s/gtkmodelsimple/gtktreemodelsimple/g;
6174
6175         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
6176
6177         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
6178         s/column_set_col_type/column_set_sizing/g;
6179
6180         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
6181         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
6182
6183         s/GtkCellRendererType/GtkCellRendererState/g;
6184         
6185         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
6186         (gtk_cell_renderer_toggle_class_init): change "state" property to
6187         "active", to match GtkToggleButton
6188         (gtk_cell_renderer_toggle_get_active): new function, bug
6189         40269
6190         (gtk_cell_renderer_toggle_set_active): new function
6191         (gtk_cell_renderer_toggle_set_property): route changes to toggle
6192         state through gtk_cell_renderer_set_active
6193
6194 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
6195
6196         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
6197         temporarily until they work again.  Brought up to date with
6198         changes in the model.
6199         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
6200         model.
6201
6202 2001-01-04  Havoc Pennington  <hp@redhat.com>
6203
6204         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
6205         equal to the line length, then position iterator before paragraph 
6206         separators. Fixes crash reported by Mikael Hermansson when
6207         pressing left arrow from the start of a line.   
6208
6209         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
6210         about byte indexes off the end
6211         (iter_set_from_char_offset): add g_error about char offsets
6212         off the end
6213
6214 2001-01-03  Havoc Pennington  <hp@redhat.com>
6215
6216         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
6217
6218         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
6219         of private functions; remove inclusion of private headers.
6220
6221         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
6222         function, so we don't need private functions in gtktextdisplay.c
6223
6224         * gtk/gtktextiterprivate.h: underscore-ification
6225
6226         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
6227         to instead say "only useful to implement widgets"
6228
6229         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
6230         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
6231         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
6232
6233         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
6234         This function was completely broken
6235
6236         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
6237
6238         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
6239
6240         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
6241
6242         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
6243
6244         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
6245
6246         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
6247
6248         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
6249         gtk_paint_layout
6250
6251         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
6252         gtk_paint_layout
6253
6254         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
6255         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
6256         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
6257         which were not implemented.     
6258
6259         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
6260         insert_pixbuf signal. Rename delete_text to delete_range since it
6261         also deletes pixbufs and child anchors. This almost closes bug
6262         40245 (still need to deal with child anchors)
6263
6264         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
6265         insert_pixbuf, change signal names as appropriate, change types of
6266         signals taking marks/tags to have the specific type, not just
6267         G_TYPE_OBJECT
6268         
6269         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
6270         closes bug 40051
6271
6272         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
6273         unnecessary remove_contents() call
6274         (gtk_option_menu_class_init): add a "changed" signal, closes
6275         bug 40039
6276         (gtk_option_menu_update_contents): emit "changed" if the 
6277         active menu item changes
6278
6279         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
6280         cast to GtkObject, reported by Jonas Borgstrom
6281         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
6282         we can't do stuff with side effects in finalize. Instead, spew a
6283         warning if the loader isn't closed.
6284
6285         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
6286         colormap in here, non-X ports probably need to sync to this change
6287
6288         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
6289         assertion that colormap != NULL, you can set the colormap to NULL
6290         if you like.
6291         
6292         * Makefile.am: remove gtk-config-2.0
6293
6294         * configure.in: Use pkg-config to locate GLib. Remove
6295         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
6296         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
6297         Use pkg-config to locate Pango. Output correct Pango libs to
6298         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
6299
6300         * Makefile.am (pkgconfig_DATA): install only target-specific pc
6301         files
6302         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
6303         X11 pc files
6304
6305         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
6306         unref from here
6307
6308 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
6309
6310         * configure.in:
6311         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
6312
6313 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
6314
6315         * gtk/gtktextlayout.c
6316         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
6317         variable when moving back onto a single line.
6318
6319 2001-01-01  Havoc Pennington  <hp@redhat.com>
6320
6321         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6322
6323         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6324
6325         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
6326         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
6327
6328 2001-01-01  Havoc Pennington  <hp@redhat.com>
6329
6330         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
6331
6332         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
6333         GtkTextAttributes
6334
6335         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
6336         #40246
6337         (gtk_text_attributes_copy_values): rename from 
6338         gtk_text_attributes_copy
6339         (gtk_text_attributes_copy): a more standard GTK copy function, 
6340         which returns a new object
6341
6342 2001-01-01  Havoc Pennington  <hp@redhat.com>
6343
6344         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
6345         
6346         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
6347         don't fill in tree_view->priv->selection, kind of an unexpected
6348         side effect
6349
6350         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
6351         gtkintl.h
6352         
6353         * gtk/gtkcellrenderer.c: Remove definition of _ and include
6354         gtkintl.h
6355         (gtk_cell_renderer_get_property): remove calls to g_value_init
6356
6357         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
6358         gtkintl.h
6359
6360         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
6361         and include gtkintl.h
6362         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
6363         property names
6364
6365         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
6366         GtkTreeSelection
6367         (_gtk_tree_selection_new_from_with_view): rename, return
6368         GtkTreeSelection
6369         (_gtk_tree_selection_set_tree_view): rename with uscore
6370         (gtk_tree_selection_get_selected): fill in the "model" out param
6371         first, so it gets filled in even if we return at the top of the 
6372         function
6373         (gtk_tree_selection_real_select_all): add a comment and an else{}
6374         to clarify this a bit
6375         (gtk_tree_selection_real_unselect_all): add the same else{}
6376
6377         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
6378         set_tree_view to have underscore prefixes, move them to the
6379         private header, fix return type of new_with_tree_view
6380         (struct _GtkTreeSelection): mark struct
6381         fields private  
6382
6383         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
6384         GtkTreeModelFlags, not a guint
6385         (gtk_tree_path_prev): return gboolean not gint
6386         (gtk_tree_path_up): return gboolean not gint
6387
6388         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
6389         return GtkTreeModelFlags, not a guint
6390
6391         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
6392         that child model is non-null before unrefing it
6393         (g_value_int_compare_func): make this a qsort compare func, not 
6394         a boolean predicate
6395
6396         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
6397         (add -umn to the end), and mark it unimplemented
6398         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
6399         I don't see what it's for - doesn't the model always sort itself?
6400         (gtk_tree_model_sort_set_compare): this had the wrong signature
6401
6402         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
6403         Fix the docs to say that it destructively replaces existing
6404         attributes (previously said that it added attributes).
6405         (gtk_tree_view_column_set_visible): canonicalize bool before
6406         equality testing. Also, check for realization before
6407         hiding/showing the tree_column->window; if this window could exist
6408         before realization, then it's busted and needs fixing, we can't 
6409         create GDK resources pre-realization. Also, remove
6410         superfluous queue_resize(), since set_size() does that for us.
6411         (gtk_tree_view_column_set_col_type): check realization before 
6412         using tree_column->window
6413
6414         * gtk/gtktreedatalist.c: fix filename in copyright notice
6415
6416 2000-12-31  Havoc Pennington  <hp@pobox.com>
6417
6418         * gtk/gtktextview.c: Rearrange all the
6419         scroll-while-dragging-or-selecting code to be different, not
6420         necessarily better. ;-)
6421         (gtk_text_view_scroll_to_mark): Change this
6422         function to take within_margin as a fraction instead of a pixel
6423         value, and to take alignment arguments (indicating where to align 
6424         the mark inside the visible area)
6425         
6426         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
6427         to GtkObject
6428
6429         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
6430         behavior so that offsets past the end of the line are not 
6431         allowed, and an offset equal to the line length moves the iterator
6432         to the next line
6433         (gtk_text_iter_set_line_index): make parallel change
6434         (gtk_text_iter_get_bytes_in_line): add this function
6435         
6436         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
6437         of byte indexes off the end of the line; byte index at the end of
6438         the line now returns FALSE and doesn't fill in the requested
6439         values, byte index past the end of the line is an error.  Also,
6440         don't allow -1 offset anymore, since its meaning is unclear.
6441
6442         This change exposes some bug in visual cursor motion, where we
6443         end up with a huge invalid byte index; needs fixing. Symptom of 
6444         bug is a crash when you hit up arrow.
6445         
6446         (_gtk_text_line_char_locate): match the change to byte_locate
6447
6448         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
6449         from start of line properly. fixes bug reported by Mikael
6450         Hermansson where backspace would delete all text before the
6451         cursor.
6452
6453 2000-12-30  Tor Lillqvist  <tml@iki.fi>
6454
6455         * gdk/win32/gdkwindow-win32.c
6456         (gdk_window_impl_win32_get_visible_region): New function, as in
6457         the X11 backend.
6458         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
6459         instead of duplicating the same code here.
6460
6461         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
6462         GDK_COLORMAP macro.
6463
6464         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
6465         destroy function.
6466         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
6467         access that.
6468
6469         * gtk/gtk.def: Update.
6470
6471         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
6472
6473 2000-12-30  Havoc Pennington  <hp@pobox.com>
6474
6475         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
6476         colormap on input only windows, to avoid special cases all over
6477         the code for these windows.
6478
6479 2000-12-26  Tor Lillqvist  <tml@iki.fi>
6480
6481         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
6482         we are on a palettized display ("PseudoColor" in X11), as the code
6483         for that doesn't work anyway, and never has.
6484
6485 2000-12-22  Alexander Larsson  <alexl@redhat.com>
6486
6487         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
6488         Don't use isprint() for chars > 255.
6489
6490 2000-12-21  Havoc Pennington  <hp@redhat.com>
6491
6492         * tests/testtreeview.c: more work
6493
6494 2000-12-21  Alexander Larsson  <alexl@redhat.com>
6495
6496         * docs/README.linux-fb:
6497         Update the docs to the new pangoft2 way.
6498
6499 2000-12-21  Alexander Larsson  <alexl@redhat.com>
6500
6501         * configure.in:
6502         For linux-fb get the pangoft2 cflags and libs. This needs a recent
6503         pango version.
6504         Remove modules/linux-fb/Makefile.
6505
6506         * gdk/linux-fb/gdkdrawable-fb2.c:
6507         Render glyphs using freetype.
6508
6509         * gdk/linux-fb/gdkfb.h:
6510         Add new fb-specific functions needed for managing windows.
6511
6512         * gdk/linux-fb/gdkmain-fb.c:
6513         Remove gdk_font_init/fini() calls.
6514
6515         * gdk/linux-fb/gdkpango-fb.c:
6516         Remove old implementation. Use pangoft2 instead.
6517
6518         * gdk/linux-fb/gdkprivate-fb.h:
6519         Remove PangoFBFont and related stuff.
6520
6521         * gdk/linux-fb/gdkwindow-fb.c:
6522         Implement drawable->get_visible_region.
6523         Implement support for _gdk_window_set_child_handler () and
6524         _gdk_window_get_decorations().
6525
6526         * modules/Makefile.am:
6527         Remove linux-fb subdir.
6528
6529         * modules/linux-fb/*:
6530         Removed all.
6531         
6532 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
6533
6534         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
6535         calls, as they are no longer needed.
6536
6537         * gtk/gtktreemodelsort.c: Fix up the comparison code.
6538         
6539         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
6540         figure out how to emit a signal on an interface.
6541
6542 2000-12-20  Havoc Pennington  <hp@redhat.com>
6543
6544         * tests: new directory to contain tests, gtk/test* should move
6545         here sometime (with appropriate on-cvs-server hackery)
6546
6547         * tests/testtreeview.c, tests/Makefile.am: a test
6548         
6549         * configure.in (AC_OUTPUT): add tests/Makefile
6550
6551         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
6552         and "invisible_set" which were missing
6553
6554         * gtk/gtkrbtree.h: some cheesy indentation fix
6555         
6556 2000-12-20  Alexander Larsson  <alexl@redhat.com>
6557
6558         * gtk/gtkinvisible.c (gtk_invisible_realize):
6559         Attach the style to the window so that the style it is not
6560         leaked when unrealizing the window.
6561
6562 2000-12-18  Havoc Pennington  <hp@redhat.com>
6563
6564         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
6565         begin/end user action where appropriate
6566         (gtk_text_view_commit_handler): add begin/end user action
6567
6568         * gtk/gtktextbuffer.c: add begin/end user action signals, and
6569         bracket interactive operations with begin/end user action pair.
6570         
6571         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
6572         "interactive" arg from insert_text and delete_text signals.
6573         Add begin_user_action, end_user_action signals
6574         (gtk_text_buffer_begin_user_action): 
6575         (gtk_text_buffer_end_user_action): New functions to delimit 
6576         a user-visible action
6577
6578         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
6579         signals.
6580         
6581 2000-12-18  Havoc Pennington  <hp@redhat.com>
6582
6583         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
6584         was pretty non-working.
6585
6586         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
6587         by passing the length to g_utf8_validate().
6588
6589 2000-12-16  Havoc Pennington  <hp@pobox.com>
6590
6591         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
6592         Port to GObject, can go back in gdk-pixbuf after setting up 
6593         a gdk-pixbuf-marshal.h header over there.
6594
6595         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
6596         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
6597         args
6598         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
6599         set
6600         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
6601         here, do it when we create the buttons later
6602         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
6603         (gtk_tree_view_map): paranoia checks that column->button is shown 
6604         and unmapped
6605         (gtk_tree_view_size_request): only request visible children.
6606         Move header size calculation in here, for cleanliness, and 
6607         to maintain invariants for child widgets if we eventually 
6608         let users set different children inside the buttons
6609         (gtk_tree_view_map_buttons): factor out code to map buttons,
6610         since it was being called several times
6611         (gtk_tree_view_size_allocate_buttons): move_resize the drag
6612         windows instead of just moving them; their height may change 
6613         if we allow random widgets in there, or the theme changes.
6614         (gtk_tree_view_size_allocate): move button size allocation 
6615         above emitting the scroll signals, to ensure a sane state when we
6616         hit user code
6617         (gtk_tree_view_button_release): remove queue_resize after
6618         tree_view_set_size(), set_size() will handle any resize queuing
6619         that's needed
6620         (gtk_tree_view_focus_in): just queue a draw, don't fool with
6621         draw_focus goo
6622         (gtk_tree_view_focus): use gtk_get_current_event() and
6623         gdk_event_get_state()
6624         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
6625         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
6626         semicolon
6627         (gtk_tree_view_create_button): show the button here
6628         (gtk_tree_view_button_clicked): actually emit the clicked signal
6629         on the column
6630         (_gtk_tree_view_set_size): return right away if the size is
6631         unchanged, as a cheesy optimization
6632         (gtk_tree_view_setup_model): rename set_model_realized to 
6633         setup_model to match the flag that indicates whether we've 
6634         called it
6635         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
6636         exist, because set_scroll_adjustment does that and it shouldn't
6637         matter what order you call these in
6638         (gtk_tree_view_get_vadjustment): ditto
6639         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
6640         for paranoia
6641         (gtk_tree_view_set_headers_visible): call
6642         gtk_tree_view_map_buttons() instead of using cut-and-paste code
6643         (gtk_tree_view_append_column): clarify whether the return value
6644         is the count of columns before or after, and do the increment 
6645         separately from the return statement so you can tell from the code.
6646         (gtk_tree_view_remove_column): ditto
6647         (gtk_tree_view_insert_column): ditto
6648         (gtk_tree_view_get_column): remove g_return_if_fail for columns
6649         outside the existing range, the docs say that outside-range
6650         columns are allowed, so we handle them as documented. (Presumably
6651         this allows a nice loop with column != NULL as test.)
6652         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
6653         mean (left/right/center etc.).
6654         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
6655         (gtk_tree_view_expand_row): add docs
6656         (gtk_tree_view_collapse_row): add docs
6657
6658         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
6659         function to emit the clicked signal on a column
6660         
6661         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
6662         state of an event
6663         (gdk_event_get_time): don't treat GDK_SCROLL 
6664         as a button event, remove default case from switch so gcc 
6665         will whine if we don't explicitly handle all event types
6666
6667         * gtk/gtktreeselection.h: added some FIXME 
6668         
6669         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
6670         "columns" to "n_columns" and "column" to "columns" for clarity
6671
6672 2000-12-16  Havoc Pennington  <hp@pobox.com>
6673         
6674         * gtk/gtktextiter.c: General cleanup of the log attr iteration
6675         stuff. This should make e.g. the delete key work again in the
6676         text widget...
6677         (gtk_text_iter_forward_cursor_positions): handle negative count
6678         (gtk_text_iter_backward_cursor_positions): handle negative count
6679         (gtk_text_iter_forward_word_ends): handle negative count
6680         (gtk_text_iter_backward_word_starts): handle negative count
6681
6682         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
6683         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
6684         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
6685         GObject. No doubt will cause breakage.
6686
6687         * demos/gtk-demo/textview.c: remove hacks around
6688         non-GObject-ification of the text objects
6689
6690         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
6691         the text tag
6692         
6693 2000-12-14  Havoc Pennington  <hp@pobox.com>
6694
6695         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
6696         that we have Xrender
6697
6698 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
6699
6700         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
6701         Add two virtualized functions gdk_drawable_get_clip_region - to
6702         get the clip region when drawing.
6703         
6704         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
6705         use invalidate_region.
6706
6707         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
6708         region.
6709
6710         * acconfig.h configure.in: Check for Xft. For now, assume
6711         that if Xft is found, Pango was compiled with Xft support
6712         as well.
6713
6714         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
6715         gdk_colormap_query_color().
6716         
6717         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
6718         with Xft if appropriate.
6719
6720         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
6721         a pangoxft context if we have XFT and the environment
6722         variable GD_USE_XFT is set.
6723         
6724         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
6725         and also possibly an XftDraw structure.
6726
6727         * gtk/gtkfontsel.c: Handle the case where the font from the
6728         style doesn't match any of the fonts a bit better.
6729         
6730         * gtk/testgtk.c: Add tabs between directional segments for
6731         hebrew/arabic test. (Not really necessary, just a little
6732         prettier.)
6733
6734 2000-12-14  Havoc Pennington  <hp@redhat.com>
6735
6736         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
6737         reading a file
6738
6739 2000-12-14  Havoc Pennington  <hp@redhat.com>
6740
6741         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
6742         unused call to get_last_line()
6743
6744         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
6745         here until boxed is working (and maybe after that - we should
6746         really not gratuitously break old code)
6747
6748         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
6749         specific types for font_desc and tabs args, move them to
6750         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
6751         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
6752
6753         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
6754         use GTK_TYPE_POINTER for signal signatures as a hack-around
6755
6756         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
6757         PangoTabArray
6758
6759         * gtk/gtktextlayout.c (line_display_iter_to_index): 
6760         make static
6761         (line_display_index_to_iter): make static
6762
6763         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
6764         to marshal a string not a boxed
6765
6766         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
6767
6768         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
6769         since the UTF-8 isn't validated yet
6770
6771         * gtk/gtktextsegment.c (char_segment_check_func): don't require
6772         lines to end in '\n'
6773         
6774         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
6775         forward_to_delimiters, and grapheme boundaries
6776         (gtk_text_view_delete_from_cursor): properly handle non-newline
6777         delimiters, and grapheme boundaries
6778
6779         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
6780         to gtk_text_iter_forward_to_delimiters, and make it work properly
6781         if empty lines end with a character other than '\n'
6782
6783         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
6784         position
6785
6786 2000-12-15  Tor Lillqvist  <tml@iki.fi>
6787
6788         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
6789
6790         * gtk/gtk.def
6791         * gdk/gdk.def: Update.
6792
6793         * gdk/win32/gdkmain-win32.c
6794         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
6795         gdkmain-win32.c here.
6796
6797         * gdk/win32/makefile.mingw.in (all): No need to make
6798         gdk-win32res.o here, the makefile one step up will call us to make
6799         it.
6800
6801         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
6802         gdkkeys-win32.
6803
6804         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
6805
6806         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
6807         call to g_source_add().
6808
6809         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
6810         leak. Thanks to Andreas Kemnade.
6811
6812 2000-12-13  Havoc Pennington  <hp@pobox.com>
6813
6814         * gtk/gtktextbtree.h: Remove double _ in front of some functions
6815
6816         * gtk/gtktext*.[hc]: update accordingly
6817         
6818 2000-12-13  Havoc Pennington  <hp@pobox.com>
6819
6820         * gtk/gtktextbtree.h: Put _ in front of every function in this 
6821         header file
6822
6823         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
6824
6825 2000-12-13  Alex Larsson  <alexl@redhat.com>
6826
6827         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
6828         Add support for ps2 intellimouse.
6829
6830         * gdkkeyboard-fb.c:
6831         Move shift-F1 repaint handling to xlate handler only.
6832         
6833         * docs/README.linux-fb:
6834         Add imps2 to docs.
6835         Document the new refresh keys.
6836         
6837 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
6838
6839         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
6840
6841         * gtk/gtkbox.c: change property types from (u)long to (u)int for
6842         ::position and ::padding.
6843
6844         * gtk/gtkcontainer.c: make ::border_width an INT property.
6845
6846         * gtk/gtkpacker.c: make ::position an INT property.
6847
6848         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
6849         guard against NULL h/v scrollbars, since this is used at construction
6850         time.
6851
6852         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
6853         internal gtk_clist_constructor().
6854
6855         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
6856         gtk_ctree_constructor().
6857
6858         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
6859         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
6860
6861         * docs/reference/Makefile.am: fun stuff, disabled docs generation
6862         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
6863
6864         * gtk/gtkwidget.[hc]:
6865         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
6866         and gtk_widget_get().
6867         (gtk_widget_new): use g_object_new_valist().
6868         (gtk_widget_set): use g_object_set_valist().
6869
6870         * gtk/gtkobject.[hc]:
6871         removed gtk_object_arg_get_info(), gtk_object_getv(),
6872         gtk_object_query_args(), gtk_object_newv(),
6873         gtk_object_class_add_signals(),
6874         gtk_object_class_user_signal_new(),
6875         gtk_object_class_user_signal_newv(),
6876         gtk_object_arg_set(), gtk_object_arg_get(),
6877         gtk_object_args_collect(),
6878         gtk_object_default_construct(),
6879         gtk_object_constructed(),
6880         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
6881         removed nsignals, signals and n_args members from GtkObjectClass.
6882         (gtk_object_new): use g_object_new_valist().
6883         (gtk_object_set): use g_object_set_valist().
6884         (gtk_object_get): use g_object_get_valist().
6885         
6886         * gtk/gtkcompat.h: define gtk_object_default_construct().
6887         
6888         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
6889         g_object_new().
6890
6891         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
6892         fucntions, cleaned up method assignments (make sure your structures
6893         are setup properly before calling out). removed all GTK_CONSTRUCTED
6894         hacks ;)
6895
6896 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
6897
6898         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
6899         off-by-one error in checks. (Dave Lambert)
6900
6901 2000-12-12  Alexander Larsson  <alexl@redhat.com>
6902
6903         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
6904         Don't free gdk_fb_keyboard twice.
6905
6906 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
6907
6908         * gtk/testgtk.c:
6909         (create_tooltips): 
6910         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
6911         use GObject swapped_signal:: properties instead.
6912
6913         * gtk/gtkcellrenderertoggle.c: 
6914         * gtk/gtkcellrenderertextpixbuf.c: 
6915         * gtk/gtkcellrenderertext.c: 
6916         * gtk/gtkcellrendererpixbuf.c: 
6917         * gtk/gtkcellrenderer.c:
6918         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
6919         missing warnings for invalid property ids, install properties
6920         with g_object_class_install_property() now.
6921         
6922         * gtk/gtksignal.c:
6923         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
6924         
6925 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
6926         
6927         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
6928         to determine if a window is the focus widget within
6929         its toplevel.
6930
6931         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
6932         to be boolean.
6933
6934         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
6935         of the case where the container CAN_FOCUS to here instead
6936         of having it in each individual move-the-focus place.
6937
6938         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
6939         focusing to be geometric in a much more obvious sense. Arrowing
6940         around is still non-intuitive because it isn't perfect and
6941         because entries, etc, grab the arrow keys, but it at least
6942         usually will do what you expect now.
6943         
6944         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
6945         file.
6946
6947         * gtk/gtknotebook.c: Change tabs to be a single item in
6948         the focus chain. Make movement of focus on tabs with arrow
6949         keys wrap around.
6950         
6951         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
6952         CHECK_FIND_CHILD macro to give informative error messages
6953         instead of silent returns.
6954
6955         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
6956         flag since we handle GdkReturn on the tabs.
6957
6958         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
6959         windows rather than sending expose events directly.
6960
6961         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
6962         definition for GtkNotebookPage into .c file, since it is private.
6963
6964         * gtk/testgtk.c (create_notebook): Add option for 
6965         testing borderless notebook.
6966
6967         * gtk/testgtk.c (page_switch): Removed egregious poking
6968         around in GTK+ internals.
6969
6970         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
6971
6972         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
6973         properly through gtk_clist_focus. Make the title headers a
6974         single item in the tab-focus chain, and make left-right wrap
6975         around.
6976
6977         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
6978         focus method so that wrapping around works properly.
6979
6980         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
6981         that is handled for the widget now. 
6982
6983 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
6984
6985         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
6986         widgets as TOPLEVEL.
6987
6988         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
6989         TOPLEVEL widgets are containers.
6990
6991         * gtk/gtkinvisible.h: Remove useless include.
6992
6993 2000-12-11  Havoc Pennington  <hp@redhat.com>
6994
6995         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
6996         Handle chopping off \r\n and 0x2029 in addition to \n before
6997         passing to PangoLayout
6998
6999         * gtk/gtkimcontextsimple.c
7000         (gtk_im_context_simple_get_preedit_string): 
7001         return an empty string if no match is pending
7002
7003         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
7004         assertion that the returned preedit string was sane
7005
7006         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
7007         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
7008         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
7009
7010 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
7011
7012         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
7013         Fix up finalizer to chain to its parent.
7014
7015 2000-12-11  Alexander Larsson  <alexl@redhat.com>
7016
7017         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
7018         Clearified the difference between the keyboard types. Wrote a note
7019         about the magic sysrq key to get out of raw mode.
7020
7021 2000-12-09  James Henstridge  <james@daa.com.au>
7022
7023         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
7024         member to hold masks for detecting the start of a protocol packet.
7025         (mouse_devs): add packet start masks for ps2 and ms device types.
7026         Left the mask for fidmour blank, as I have no idea what it should
7027         be.
7028         (handle_mouse_io): skip bytes until we get to the start of a
7029         packet.  My Logitech mouse seems to be passing an extra NULL pad
7030         byte, and GPM does a similar thing here.
7031         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
7032         this is the ms mouse driver.
7033         (gdk_fb_mouse_ms_packet): fix up button handling, which was
7034         completely broken except for button1.  It was checking the wrong
7035         bit in the packet for the status of the right mouse button, and
7036         wrongly assuming right == button2 rather than 3.  I fixed that and
7037         also added support for middle button (button2).
7038
7039 2000-12-08  Havoc Pennington  <hp@redhat.com>
7040
7041         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
7042         that cause a segfault on text insertion
7043
7044         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
7045         warning
7046
7047         * gtk/gtktextiter.c (test_log_attrs): use
7048         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
7049
7050         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
7051         Get log attrs for a line, using a cache stored on the buffer
7052         
7053         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
7054         reported by Jeff Franks
7055
7056 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7057
7058         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
7059         /dev/ttyS0 -> /dev/mouse
7060
7061 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7062
7063         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
7064         Added dummy gdk_fontset_load.
7065
7066 2000-12-08  Alexander Larsson  <alexl@redhat.com>
7067
7068         * docs/README.linux-fb:
7069         * docs/Makefile.am:
7070         Initial GtkFB docs.
7071         
7072         * gdk/linux-fb/Makefile.am:
7073         Define GDK_DATA_PREFIX.
7074
7075         * gdk/linux-fb/gdkmain-fb.c:
7076         Fix typo.
7077         Change default display to /dev/fb0.
7078
7079         * gdk/linux-fb/gdkpango-fb.c:
7080         Add $(prefix)/share/fonts/ to font path.
7081         
7082 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7083
7084         * gdk/linux-fb/gdkkeyboard-fb.c:
7085         New file containing the abstracted keyboard driver. Most code
7086         taken from gdkinput-ps2.c
7087
7088         * gdk/linux-fb/gdkinput-ps2.c:
7089         Removed file.
7090         
7091         * gdk/linux-fb/Makefile.am:
7092         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
7093
7094         * gdk/linux-fb/gdkcolor-fb.c:
7095         display->fb was renamed to display->fb_fd.
7096
7097         * gdk/linux-fb/gdkcursor-fb.c:
7098         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7099
7100         * gdk/linux-fb/gdkinput.c:
7101         Moved gdk_input_init here from gdkinput-ps2.c
7102
7103         * gdk/linux-fb/gdkmain-fb.c:
7104         display->fb was renamed to display->fb_fd.
7105         Now the tty and the console is opened here instead
7106         of in the keyboard driver. Also check GDK_VT to see what
7107         tty to open.
7108         Move gdk_beep () here from gdkinput-ps2.c
7109         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7110
7111         * gdk/linux-fb/gdkmouse-fb.c:
7112         Add header.
7113         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7114         Return correct keyboard modifiers.
7115         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
7116
7117         * gdk/linux-fb/gdkprivate-fb.h:
7118         Add tty and vt info to display.
7119         Add orignal modeinfo storage to display
7120         Update global functions
7121
7122         * gdk/linux-fb/gdkwindow-fb.c:
7123         Added gdk_fb_window_find_focus().
7124         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7125
7126 2000-12-07  Havoc Pennington  <hp@pobox.com>
7127
7128         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
7129         function, noticed by Alex
7130
7131 2000-12-06  Elliot Lee  <sopwith@redhat.com>
7132
7133         * configure.in: Detect freetype properly
7134
7135         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
7136         above.
7137
7138 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7139
7140         * gdk/linux-fb/Makefile.am:
7141         Add gdkmouse-fb.c
7142         
7143         * gdk/linux-fb/gdkmouse-fb.c:
7144         New file. Abstracted the mouse drivers a bit.
7145
7146         * gdk/linux-fb/gdkcursor-fb.c:
7147         The cursor hide/show functions was moved here from gdkinput-ps2.c.
7148
7149         * gdk/linux-fb/gdkinput-ps2.c:
7150         Removed old mouse handling code. Moved cursor handling code
7151         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
7152         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
7153         gdk_mouse_get_info.
7154
7155         * gdk/linux-fb/gdkmain-fb.c:
7156         Pass NULL pointers for x,y in gdk_mouse_get_info call.
7157
7158         * gdk/linux-fb/gdkprivate-fb.h:
7159         Removed public gdk_fb_find_common_ancestor, added and renamed
7160         functions for the new mouse handling code.
7161
7162         * gdk/linux-fb/gdkwindow-fb.c:
7163         Moved gdk_fb_window_send_crossing_events here. added global
7164         variable gdk_fb_window_containing_pointer. made
7165         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
7166         renamed to gdk_mouse_get_info.
7167
7168 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7169
7170         * gdk/linux-fb/gdkevents-fb.c:
7171         Update to match latest gmain/gsource changes.
7172
7173         * gdk/linux-fb/gdkinput-ps2.c:
7174         Bogus gdk_keymap_get_entries_for_keycode implementation so that
7175         it links. Will be implemented later.
7176
7177 2000-12-03  Havoc Pennington  <hp@pobox.com>
7178
7179         * gdk/Makefile.am: add gdkkeys.[hc]
7180
7181         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
7182         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
7183
7184         * acconfig.h, configure.in: add checks and command line options
7185         for XKB
7186
7187         * gdk/x11/gdkkeys-x11.c: Implement the above functions
7188         
7189         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
7190         and group in the key event
7191
7192         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
7193         field with the low-level hardware key code, and a group
7194         field with the keyboard group
7195
7196         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
7197         and declare a couple globals used for keymap handling
7198         
7199         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
7200         hold down Shift-Control and type a hex number to get a Unicode 
7201         character corresponding to the hex number
7202         (gtk_im_context_simple_get_preedit_string): Fix cursor position
7203         (return bytes not chars)
7204
7205 2000-12-05  Elliot Lee  <sopwith@redhat.com>
7206
7207         * gdk/gdkcolor.h: Make GdkColor specify element sizes
7208         to avoid waste on 64-bit platforms.
7209
7210 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
7211
7212         * INSTALL: Fix link to PNG home, remove reference
7213         to fribidi.
7214
7215         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
7216         
7217         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
7218         tested.)
7219
7220         * gtk/gtkcheckmenuitem.c: Permanently turn on
7221         always_show_toggle.
7222
7223         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
7224         be NULL. (Vladimir Klebanov, #26545)
7225
7226         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
7227         some signed/unsigned comparison problems. (#6510,
7228         David Kaelbling)
7229
7230         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
7231         return type to boolean (Oskar Liljeblad, #18648)
7232
7233 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7234
7235         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
7236         Remove bogus colormap setting.
7237
7238 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7239
7240         * gdk/linux-fb/gdkcolor-fb.c:
7241         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
7242
7243         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
7244         Must set colormap.
7245         
7246 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
7247
7248         * docs/tutorial/gtk-tut.sgml: DND updates
7249
7250 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
7251
7252         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7253         Remove old debug g_warning().
7254         (gdk_fb_draw_drawable): The src argument can be either a wrapper
7255         or an implementation, just pass the implementation to draw_drawable_2.
7256         
7257         * gdk/linux-fb/gdkprivate-fb.h:
7258         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
7259
7260         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7261         clear and invalidate area when window is destroyed.
7262         (send_map_events): Remove old commented out code.
7263
7264 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7265
7266         * gdk/linux-fb/gdkpango-fb.c:
7267         Use italic instead of oblique in font aliases.
7268         
7269         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
7270         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
7271         other unsupported functions.
7272
7273 2000-12-04  Havoc Pennington  <hp@redhat.com>
7274
7275         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
7276
7277         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
7278
7279         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
7280
7281         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
7282         hack to avoid infinite loops (synthetic expose event) - 
7283         Owen has more appropriate fixes in a branch he'll check in later.
7284
7285         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
7286         separator, CR, and CRLF as line ends
7287
7288         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
7289         into lines using pango_find_paragraph_boundary(); other bits of
7290         the widget are still going to be broken if the boundary isn't '\n'
7291         though
7292
7293 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7294
7295         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
7296         multiply.
7297
7298         * gdk/linux-fb/gdkpango-fb.c:
7299         Copied some 26.6 scaling macros from pango to clean up the rounding.
7300         (pango_fb_font_get_glyph_info): Correct sign on x value.
7301
7302         * gdk/linux-fb/gdkprivate-fb.h:
7303         Removed unreferenced external functions.
7304
7305         * modules/linux-fb/Makefile.am: Use ` instead of '.
7306
7307         * modules/linux-fb/basic.c:
7308         Remove dead code. In particular the dummy lang engine which broke all
7309         pango layouts in GtkFB. Don't include tables-big.i anymore.
7310
7311         * modules/linux-fb/tables-big.i:
7312         Upgrade to latest version from pango. Left for reference, basic_ranges
7313         moved to basic.c.
7314         
7315 2000-12-04  Havoc Pennington  <hp@redhat.com>
7316
7317         Fix bugs Alex found:
7318         
7319         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
7320         to "draw"
7321
7322         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
7323
7324         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
7325
7326         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
7327         implementation in here, apparently the expose() implementation was
7328         dead code.
7329
7330 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7331
7332         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7333         Return positive descent.
7334
7335 2000-12-02  Havoc Pennington  <hp@pobox.com>
7336
7337         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
7338         method and signal
7339         
7340         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
7341         calls gdk_window_process_updates() to push the exposes through
7342         (gtk_widget_class_init): No more draw signal, no
7343         gtk_widget_real_draw()  
7344         
7345         * gtk/gtkbin.c (gtk_bin_draw): remove
7346
7347         * gtk/gtkbox.c (gtk_box_draw): remove
7348
7349         * gtk/gtkbutton.c (gtk_button_draw): remove
7350
7351         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
7352
7353         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
7354
7355         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
7356
7357         * gtk/gtkclist.c (gtk_clist_draw): remove
7358
7359         * gtk/gtkentry.c (gtk_entry_draw): remove
7360
7361         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
7362
7363         * gtk/gtkfixed.c (gtk_fixed_draw): remove
7364
7365         * gtk/gtkframe.c (gtk_frame_draw): remove
7366
7367         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
7368
7369         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
7370
7371         * gtk/gtklayout.c (gtk_layout_draw): remove
7372
7373         * gtk/gtklist.c (gtk_list_draw): remove
7374
7375         * gtk/gtklistitem.c (gtk_list_item_draw): remove
7376
7377         * gtk/gtkmenu.c (gtk_menu_draw): remove
7378
7379         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
7380
7381         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
7382
7383         * gtk/gtknotebook.c (gtk_notebook_draw): remove
7384
7385         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
7386
7387         * gtk/gtkpacker.c (gtk_packer_draw): remove
7388
7389         * gtk/gtkrange.c (gtk_range_draw): remove
7390
7391         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
7392
7393         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
7394
7395         * gtk/gtktable.c (gtk_table_draw): remove
7396
7397         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
7398
7399         * gtk/gtktext.c (gtk_text_draw): remove
7400
7401         * gtk/gtktextview.c (gtk_text_view_draw): remove
7402
7403         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
7404
7405         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
7406
7407         * gtk/gtktree.c (gtk_tree_draw): remove
7408
7409         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
7410
7411         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
7412
7413         * gtk/gtkviewport.c (gtk_viewport_draw): remove
7414
7415         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
7416
7417         * gtk/gtkvscale.c (gtk_vscale_draw): remove
7418
7419         * gtk/gtkwindow.c (gtk_window_draw): remove
7420
7421 2000-20-01  Anders Carlsson  <andersca@gnu.org>
7422
7423         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
7424         a GtkToggleButton is both insensitive and active, it was being
7425         drawn by the GtkButton draw handler which doesn't check the
7426         state. Now it's calling gtk_toggle_button_paint instead.
7427         
7428 2000-12-01  Havoc Pennington  <hp@redhat.com>
7429
7430         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
7431         dangling pointers to the appearance attributes from the 
7432         line display
7433
7434         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
7435         width/height to mean "full width/height of drawable"
7436
7437         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
7438         click to select word/line
7439         
7440         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
7441         when getting log attrs. Get a slice, so that pixmaps and stuff
7442         are properly handled.
7443
7444         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
7445         paste into the selection (replaces selection now, previously
7446         crashed or added to selection). Reveals longstanding btree bug -
7447         select multiple lines, middle-click on the selection, boom. This
7448         isn't related to my changes though.
7449
7450         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
7451         PangoLogAttrs changes
7452         (gtk_entry_move_backward_word): ditto
7453
7454         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
7455         functions return bool whether the iter moved onto a
7456         dereferenceable position.
7457  
7458         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
7459         functions for motion in terms of display lines.
7460
7461         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
7462         get the buffer a mark is inside
7463         
7464 2000-12-01  Alexander Larsson  <alexl@redhat.com>
7465
7466         * gdk/linux-fb/Makefile.am:
7467         * modules/linux-fb/Makefile.am:
7468         Freetype 2 final uses freetype-config
7469
7470         * gdk/linux-fb/gdkpango-fb.c:
7471         Upgrade to use Freetype 2 final.
7472         More flexible support for font aliases, this also fixes a bug with
7473         GtkFontSelector, as the aliases must be visible in the font/family list,
7474         or GtkFontSelector reads uninitialized memory.
7475
7476 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
7477
7478         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
7479         XGetIMValues to properly terminate variable argument list, and do
7480         NULL return check for ic_values and xim_styles.
7481
7482         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
7483         Restore preedit state after XmbResetIC().
7484         
7485         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
7486         XvaCreateNestedList() should take XvaNestedList, but not
7487         XvaNestedList*.
7488
7489         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
7490         preedit_draw_callback, preedit_caret_callback): Match
7491         "preedit-changed" signal name to "preedit_changed" to be
7492         consistent to the spec.
7493
7494         * gtk/gtkimcontextsimple.c (check_table):
7495         Match "preedit-changed" to "preedit_changed" to be consistent
7496         to the spec.
7497
7498 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
7499
7500         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
7501         gc->clip_region == NULL>
7502
7503 2000-11-30  Tor Lillqvist  <tml@iki.fi>
7504
7505         Changes by Hans Breuer:
7506         
7507         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
7508         Dont't use negative width and height as max_hints. This fixes
7509         Owen's recent testgtk changes for win32.
7510
7511         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
7512         gdk_win32_hdc_release): These are exported and may be called with
7513         other drawable types than our GdkDrawableImplWin32 (?).
7514
7515         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
7516         so always #define USE_BACKING_STORE.
7517
7518         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
7519         of printf for debugging output.
7520
7521         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
7522         
7523         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
7524
7525         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
7526         declaration.
7527
7528         * gtk/gtktexttypes.h: Ditto.
7529
7530         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
7531         (GDK_VoidSymbol) also if in case of arg check failure.
7532
7533         * gtk/gtkimcontextsimple.c
7534         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
7535         position to the pointer, but to the variable it points to.
7536
7537         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
7538
7539         * gtk/gtk.def: Updates.
7540
7541 2000-11-29  Elliot Lee  <sopwith@redhat.com>
7542
7543         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
7544         GTK_TYPE_TREE_MODEL.
7545
7546 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7547
7548         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
7549         Set the size of the font from the description.
7550         (gdk_text_width): Gross hack that calculates the width
7551         of text by text_length * size/2. This is necessary because
7552         GtkLabel does some ugly gtk_string_width call to calculate
7553         an good size.
7554         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
7555
7556 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
7557
7558         * docs/tutorial/gtk-tut.sgml: DND updates
7559
7560 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7561
7562         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
7563         If you pass width or height == 0 to gdk_window_clear_area they
7564         should be calculated from the window size.
7565
7566 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7567
7568         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
7569         a grab, but no grab-cursor, use the cursor from the grabbed
7570         window. (gdk_fb_window_send_crossing_events): Send normal
7571         enter/leave notifications if grab and owner_events == TRUE.
7572
7573 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7574
7575         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7576         Do implicit button grabs, even if the window doesn't
7577         want the event.
7578         (gdk_fb_window_send_crossing_events): If there is a
7579         grab, only the grabbed window gets normal enter/leave
7580         notifications. On ungrab go from grabbed window to current.
7581         Don't send any notification to b when propagating from c -> b.
7582         If setting a grab on window, don't set prev_window.
7583         (handle_mouse_input): Send enter/leave events to the window the
7584         mouse is over, not the grabbed one.
7585         
7586 2000-11-28  Elliot Lee  <sopwith@redhat.com>
7587
7588         * gdk/gdkregion-generic.c: Zap warning.
7589         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
7590         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
7591
7592 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
7593
7594         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
7595         The cursor should be hidden if it is part of either the
7596         source or destination region. Not only if it is in both.
7597         (gdk_window_set_transient_for): Silence warnings.
7598
7599 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7600
7601         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
7602         The default mode in X is Pie Arcs, therefore that is
7603         what Gtk+ uses.
7604
7605 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7606
7607         * gdk/linux-fb/gdkinput-ps2.c:
7608         Implement correct EnterNotify/LeaveNotify:
7609         (gdk_fb_window_send_crossing_events): New function that sends
7610         all GdkCrossingEvents from the last mouse-window to the specified
7611         destination.
7612         (gdk_fb_window_visibility_crossing): Removed function.
7613         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
7614         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
7615         instead of gdk_window_get_pointer() for better readability.
7616
7617         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
7618         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
7619
7620         * gdk/linux-fb/gdkprivate-fb.h:
7621         removed gdk_fb_window_visibility_crossing, added
7622         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
7623
7624         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
7625         New function that finds the least common ancestor of two windows.
7626         (gdk_window_show, gdk_window_hide):
7627         Use gdk_fb_window_send_crossing_events.
7628         (gdk_fb_window_move_resize): Send configure events to toplevel
7629         windows. Use gdk_fb_window_send_crossing_events.
7630
7631 2000-11-27  Havoc Pennington  <hp@redhat.com>
7632
7633         * gtk/gtkprivate.h (enum): Remove a trailing comma
7634
7635 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
7636
7637         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
7638         the "changed" callback of the adjustment.  We need to redraw the
7639         spin button's arrows when the adjustment's range changes.
7640         (adjustment_changed_cb): Draw the arrows.
7641         (gtk_spin_button_value_changed): Draw the arrows.
7642
7643 2000-11-23  Alexander Larsson  <alexl@redhat.com>
7644
7645         * gdk/linux-fb/gdkselection-fb.c:
7646         Initial selection implementation.
7647
7648         * gtk/gtkselection.c:
7649         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
7650         requestor in gtk_selection_request.
7651         
7652         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
7653         Added gdk_selection_property atom.
7654
7655         * gdk/linux-fb/gdkprivate-fb.h:
7656         Export _gdk_selection_window_destroyed.
7657         Removed mask_off_x/y from GdkCursorPrivateFB.
7658         Removed hbearing, added top, left to PangoFBGlyphInfo.
7659
7660         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7661         Call _gdk_selection_window_destroyed
7662         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
7663         the root window has been created.
7664         (static_dx_hack, static_dy_hack, compare_draw_rects,
7665         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
7666         in region. They are already sorted. Instead just traverse them in
7667         reverse if draw_direction < 0.
7668         
7669         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7670         Double-clicks must be sent after the normal button_press.
7671         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
7672         
7673         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
7674         Pass _gdk_fb_screen_gc instead of NULL.
7675
7676         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
7677         Initialize gdk_selection_property.
7678         (gdk_event_make): Remove unused code.
7679
7680         * gdk/linux-fb/gdkcursor-fb.c:
7681         Make the pixmap for the cursor the same size as the mask. Also remove
7682         the mask_off_x/y fields in GdkCursorPrivateFB and combine
7683         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
7684         Now the whole cursor is visible.
7685
7686         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7687         Fix bug where xdest+height instead of ydest+height was used
7688         to calculate if the source and dest overlapped. This fixes the
7689         redraw bug when the main window in testgtk was scrolled when
7690         partially covered by a tall window.
7691         Copy rectangles in region in order depending on draw_direction.
7692         Also moved the draw_direction flipping of start_y and end_y into
7693         the gc functions, as this might not be what all of them want.
7694         (gdk_fb_draw_lines): Support dashed lines.
7695         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
7696         so that the text is positioned correctly (was 1 pixel high).
7697
7698         gdk/linux-fb/gdkgc-fb.c:
7699         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
7700         all lines were drawn a pixel to short. Also checked the default of
7701         the rest of the values, and they're the same as X now.
7702
7703         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
7704         Clean up pixel positioning of the glyphs. Just use bgy->top and
7705         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
7706         to all divisions to get correct rounding behaviour.
7707
7708         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
7709         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
7710         Moved start_y/end_y flip into draw_drawable implementations.
7711         Flip also x rendering when draw_direction < 0.
7712         Remove unneccesary multiply with draw_direction.
7713
7714 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
7715
7716         * docs/tutorial/gtk-tut.sgml:
7717           - get rid of gtk_toggle_button_toggled FUD
7718           - start DND section - needs work - based on:
7719                 http://wolfpack.twu.net/docs/gtkdnd/
7720
7721 2000-11-22  Alexander Larsson  <alexl@redhat.com>
7722
7723         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7724         Correct calculation of font metrics. Now GtkEntrys have sane
7725         size.
7726
7727 2000-11-22  Alexander Larsson  <alexl@redhat.com>
7728
7729         * gdk/gdktypes.h:
7730         Add new type GdkSpan
7731         
7732         * docs/reference/gdk/gdk-sections.txt,
7733         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
7734         gdk/gdkregion.h:
7735         Implement and document gdk_region_spans_intersect_foreach.
7736
7737         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
7738         Add new file gdkrender-fb.c which contains all core
7739         rendering code.
7740         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
7741         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
7742         (optimized rectangle fillers).
7743
7744         * gdk/linux-fb/gdkdrawable-fb2.c:
7745         Move all rendering code to gdkrender-fb.c.
7746         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
7747         Use the new span intersection functions in gdk_fb_fill_spans.
7748         gdk_fb_draw_rectangle() clips filled rectangles and calls
7749         gc->fill_rectangle with the result.
7750         gdk_fb_fill_spans() gets extra argument "sorted".
7751
7752         * gdk/linux-fb/gdkevents-fb.c:
7753         Remove unused includes and defines.
7754         New function gdk_fb_get_time() to get correct time for events.
7755
7756         * gdk/linux-fb/gdkinput-ps2.c:
7757         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
7758         Make sure to set the time of all events.
7759
7760         * gdk/linux-fb/gdkmain-fb.c:
7761         Use gdk_fb_get_time ().
7762
7763         * gdk/linux-fb/gdkprivate-fb.h:
7764         New virtual GC calls: fill_span & fill_rectangle.
7765         Export gdk_fb_get_time().
7766         gdk_fb_fill_spans() gets extra argument "sorted".
7767
7768         * gdk/linux-fb/mi*.c:
7769         Use GdkSpan instead of GdkRectangle.
7770         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
7771         from XFree 4 source)
7772         
7773 2000-11-22    <jrb@redhat.com>
7774
7775         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
7776         reversing the order in an if statement will do.  Doing so managed
7777         to make the treemodelsort half work.  Other half will follow after
7778         I get the insert function fully fixed.
7779
7780 2000-11-21  Elliot Lee  <sopwith@redhat.com>
7781         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
7782         more than 2 bits. Besides, I need to implement an evil hack. :)
7783
7784 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
7785
7786         * docs/tutorial/gtk-tut.sgml: minor corrections
7787
7788 2000-11-20  Jonathan Blandford <jrb@redhat.com>
7789         * gtk/gtktreemodelsort.h: Add convertion functions to let you
7790           convert to and from relative path's and iters.
7791
7792         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
7793           testing sorting functions a bit better.  Currently broken -- will
7794           fix in morning.
7795
7796 2000-11-20  Havoc Pennington  <hp@redhat.com>
7797
7798         * gtk/gtkwidget.c: Documented a bunch of functions in here
7799         (gtk_widget_realize): Warn if you try to realize
7800         a widget with no parent that isn't a toplevel
7801         (gtk_widget_intersect): return a gboolean
7802
7803 2000-11-20  Havoc Pennington  <hp@redhat.com>
7804
7805         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
7806         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
7807         scrolling to be implemented in GDK to finish. Also, right now
7808         we just size_allocate all children on every layout change,
7809         which is pretty lame. Test commented out of testtext.c, 
7810         until it works better.
7811
7812 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
7813
7814         * gdk/linux-fb/gdkdrawable-fb2.c:
7815         Removed unused arguments from gdk_fb_drawable_get_pixel().
7816
7817         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
7818         Renamed fidur specific mouse packet data in MouseDevice to
7819         generic. Used it in ps2 mouse handling code to avoid blocking
7820         reads.
7821
7822 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
7823
7824         * demos/gtk-demo/main.c: Changed to have the list become
7825         non-italic when the demo window is destroyed through an external
7826         event (like a close button).  Doing so found three bugs in the
7827         widget.
7828
7829         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
7830
7831         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
7832         we actually set the cell.
7833
7834         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
7835
7836         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
7837         free a leaked path.  Thanks memprof.
7838
7839 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
7840
7841         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
7842         off-by-one error when destroying allocated segments
7843         on failure. (Elliot)
7844
7845 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
7846
7847         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
7848         memleaks found by Evan Martin.
7849
7850 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
7851
7852         * Released 1.3.2
7853         
7854         * NEWS: Updates for 1.3.2
7855
7856 2000-11-17  Tor Lillqvist  <tml@iki.fi>
7857
7858         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
7859         but in general for window system specific events.
7860
7861         * gtk/gtk.def
7862         * gtk/makefile.mingw.in
7863         * gtk/makefile.msc.in: Update.
7864         
7865         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
7866
7867 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
7868
7869         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
7870         distribute gtk.immodules.
7871
7872         * gtk/Makefile.am (install-data-local): Don't install the
7873         gtk.immodules file created for the uninstalled modules;
7874         instead run gtk-query-immodules after install
7875
7876 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
7877
7878         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
7879         -rpath to the right install location.
7880
7881         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
7882         -export-dynamic.
7883
7884         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
7885         properly.
7886
7887 2000-11-15  Havoc Pennington  <hp@pobox.com>
7888
7889         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
7890         patch from Mikael Hermansson to temporarily stop blinking while
7891         the user is using the keyboard to type or navigate. 
7892
7893         Also, when blinking, stay on for longer than we stay off. Also,
7894         return from start_cursor_blink if !cursor_visible, to save
7895         checking that flag all over the place before we call
7896         start_cursor_blink.
7897
7898 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
7899
7900         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
7901         only contain a "fontset" line, which is now ignored.
7902
7903         * gtk/gtkentry.c (gtk_entry_button_release): Make 
7904         double-click-to-select-word work.
7905         
7906 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
7907
7908         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
7909         Don't move back one char when we are actually at the end of the 
7910         paragraph.
7911
7912 2000-11-15  Robert Brady  <robert@suse.co.uk>
7913
7914         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
7915         'o' < 'p'.
7916         
7917         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
7918         bind_textdomain_codeset.
7919
7920         (gtk_init_check): Make the warning about translating default:LTR
7921         sterner.
7922         
7923 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
7924
7925         * **/Makefile.am : remove unecessary rules for win32-specific
7926         config-substituted targets. If you want these rules, use
7927         --enable-maintainer-mode (called automatically by autogen.sh).
7928         Stops a lot of unneccessary make-time warnings.
7929
7930         * gtk/gtktext{layout,display}.c: Factor in total width as
7931         well as screen when figuring alignment for word-wrap as well as
7932         no wrap; this is necessary to handle lines that cannot be wrapped
7933         at all.
7934
7935 2000-11-15  Havoc Pennington  <hp@redhat.com>
7936
7937         * gtk/testtext.c: Implement essential color cycling feature
7938
7939 2000-11-15  Havoc Pennington  <hp@redhat.com>
7940
7941         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
7942         when we invalidate the main window.
7943
7944         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
7945         GtkTextView will now invalidate the side windows for us when text
7946         changes.
7947
7948 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
7949
7950         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
7951         unconditionally, since we may need to update the horizontal
7952         scrollbars even if the height didn't change.
7953
7954         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
7955         the extra attrs, since some of them affect size.
7956
7957         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
7958         x_offset correctly.
7959
7960 2000-11-15  Havoc Pennington  <hp@redhat.com>
7961
7962         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
7963         don't move the first line out into the margin, instead move the
7964         whole paragraph in order to make space for the first line within 
7965         the margin
7966
7967 2000-11-15  Havoc Pennington  <hp@redhat.com>
7968
7969         * gtk/gtktextview.c (changed_handler): offset redraw rect by
7970         xoffset in addition to yoffset, so horizontal scrolling doesn't
7971         break redraws
7972
7973 2000-11-15  Havoc Pennington  <hp@redhat.com>
7974
7975         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
7976         from the cursor
7977         (render_layout_line): fix reversed test that caused weird
7978         underlines to get drawn
7979
7980 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
7981
7982         * gdk/linux-fb/gdkprivate-fb.h:
7983         Fix debug macros.
7984         
7985 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
7986
7987         * gdk/linux-fb/gdkprivate-fb.h:
7988         Added virtual functions set_pixel, get_color,
7989         fill_span and draw_drawable to the GC.
7990         Added global _gdk_fb_screen_gc to use instead of
7991         NULL when drawing to the screen.
7992         Added _gdk_fb_gc_calc_state() prototype.
7993
7994         * gdk/linux-fb/gdkgc-fb.c:
7995         Call _gdk_fb_gc_calc_state() on any gc state change.
7996
7997         * gdk/linux-fb/gdkglobals-fb.c:
7998         Add _gdk_fb_screen_gc
7999                 
8000         * gdk/linux-fb/gdkdrawable-fb2.c:
8001         _gdk_fb_gc_calc_state() calculates best functions
8002         for the GC state and depth.
8003         Moved bpp specialized code to separate functions.
8004         Added optimized 24 bpp AA draw_drawable.
8005
8006         * gdk/linux-fb/gdkevents-fb.c:
8007         Silence gcc warning.
8008
8009         * gdk/linux-fb/gdkimage-fb.c:
8010         Use _gdk_fb_screen_gc
8011
8012         * gdk/linux-fb/gdkwindow-fb.c:
8013         Init and use _gdk_fb_screen_gc
8014
8015         * gdk/linux-fb/mitypes.h:
8016         Remove unused types.
8017
8018 2000-11-14  Havoc Pennington  <hp@pobox.com>
8019
8020         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
8021         to pixels
8022
8023 2000-11-14  Havoc Pennington  <hp@pobox.com>
8024
8025         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
8026
8027         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
8028         unknown char, no real reason we were using a variable. 
8029         Remove gtk_text_unknown_char variable. Fix all the text widget
8030         files accordingly.
8031
8032         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
8033         since the Unicode spec seems to prefer that character for our
8034         purposes.
8035
8036 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
8037
8038         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
8039         value of g_getenv() isn't freeable, so g_strdup it.
8040
8041         * modules/input/inuktitut.c: Inuktitut input method.
8042
8043         * modules/input/Makefile.am: Build this.
8044         
8045 2000-11-14  Elliot Lee  <sopwith@redhat.com>
8046
8047         * gtk/Makefile.am: Install gtk.immodules, needed for operation
8048         of gtk programs.
8049
8050 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
8051
8052         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
8053         reversed > that was causing Home to go to end of previous line.
8054
8055         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
8056         modified-keypresses (leave for bindings.)
8057
8058         * modules/input/Makefile.am: Remove useless -export-dynamic
8059         from module LDFLAGS.
8060
8061 2000-11-14  Havoc Pennington  <hp@redhat.com>
8062
8063         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
8064         higher.
8065
8066         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
8067         account. Also, render rise, underline, background, etc. for
8068         pixbufs as well as text. Also, draw underlines one pixel higher.
8069
8070         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
8071         PangoAttribute for the rise, so it gets drawn properly. Also,
8072         add the GtkTextAppearance attribute for pixbuf/widget segments
8073         as well; we should go ahead and have rise, underline, background,
8074         stipple work for those
8075
8076         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
8077         Pango
8078
8079 2000-11-15  Tor Lillqvist  <tml@iki.fi>
8080
8081         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
8082
8083         * gtk/gtk.def: Update.
8084
8085         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
8086         included.
8087         (gtk_rc_get_im_module_file): Use run-time installation directory
8088         on Win32.
8089
8090         * gdk/win32/rc/gdk.rc: Remove.
8091         * gdk/win32/rc/gdk.rc.in: New file.
8092         * gdk/win32/rc/Makefile.am: New file
8093         * gdk/win32/Makefile.am: Corresponding changes.
8094
8095         * gtk/gtk.rc: Remove.
8096         * gtk/gtk-win32.rc.in: New file.
8097         * gtk/Makefile.am: Corresponding changes.
8098
8099         * configure.in: Corresponding changes.
8100
8101         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
8102         has a built gtkcompat.h. Developers using CVS code on Win32 can
8103         hand-edit it from gtkcompat.h.in.
8104
8105         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
8106         gtkcompat.h from gtkcompat.h.win32.
8107
8108 2000-11-14  Havoc Pennington  <hp@redhat.com>
8109
8110         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
8111         to default to GDK_ACTION_MOVE if the drag is within a single
8112         widget. Defaults to GDK_ACTION_COPY between widgets.
8113
8114 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
8115
8116         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
8117
8118         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
8119
8120         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
8121         srcdir != builddir
8122
8123         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
8124
8125         * configure.in (GTK_VERSION): Up to 1.3.2
8126
8127         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
8128         gtkimcontextxim.h
8129
8130         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
8131         missing doc comment.
8132
8133 2000-11-14  Alexander Larsson  <alexl@redhat.com>
8134
8135         * modules/linux-fb/basic.c:
8136         Use the glib iconv wrappers.
8137
8138 2000-11-13  Havoc Pennington  <hp@pobox.com>
8139
8140         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
8141         still more bugs.
8142
8143         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
8144         scroll the GdkWindows before realization.
8145
8146 2000-11-13  Havoc Pennington  <hp@redhat.com>
8147
8148         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
8149         where GC didn't always get updated properly
8150
8151         * demos/gtk-demo/textview.c (create_tags): Use subattributes
8152         of fonts instead of setting the entire font
8153
8154         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
8155         setting entire font
8156
8157         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
8158
8159         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
8160         a bunch of individually-settable font attributes. You can still 
8161         use the "font" and "font_desc" args, they just set all the font
8162         attributes at once.
8163
8164 2000-11-13 Elliot Lee <sopwith@redhat.com>
8165
8166         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
8167
8168 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
8169
8170         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
8171         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
8172
8173         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
8174         work better.
8175
8176 2000-11-13  Havoc Pennington  <hp@redhat.com>
8177
8178         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
8179         the module file.
8180
8181         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
8182         dest->language
8183
8184         * gtk/testtext.c: Test pixels above/below/inside paragraphs
8185         settings
8186
8187         * gtk/gtktextview.c: Implement object args and setters/getters for
8188         all the aspects of the GtkTextAttributes that are not set from
8189         GtkWidget attributes. This is spacing, justification, margins,
8190         etc.
8191
8192         (gtk_text_view_set_arg)
8193         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
8194         args
8195         (gtk_text_view_class_init): Add args for justify, left_margin,
8196         right_margin, indent, and tabs
8197         
8198
8199         * gtk/gtktextlayout.c (set_para_values): fix to display indent
8200         attribute properly
8201
8202         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
8203         replace with indent attribute
8204
8205         * gtk/gtktextlayout.c (set_para_values): multiply indent by
8206         PANGO_SCALE
8207
8208         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
8209         rearranging code to do that
8210         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
8211         i.e. don't subtract the top_margin first, just to keep
8212         all margin-futzing in one place.
8213
8214         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
8215
8216         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
8217         special case of last line, Pango now handles this itself.
8218         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
8219         Y coordinate
8220         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
8221         (find_display_line_above): wasn't moving the byte index as it
8222         iterated over lines, so always returned byte 0. Also, port to use
8223         PangoLayoutIter.
8224         (find_display_line_below): same problem as
8225         find_display_line_above. Also, port to use PangoLayoutIter.
8226
8227 2000-11-13  Alexander Larsson  <alexl@redhat.com>
8228
8229         * gdk/linux-fb/*.[ch]:
8230         Massive reindent to gtk+ standard. My hands hurt.
8231
8232         * gdk/linux-fb/gdkcolor-fb.c:
8233         Move GdkColorPrivateFB from inherited to windowing_data
8234
8235         * gdk/linux-fb/gdkcursor-fb.c:
8236         _gdk_cursor_new_from_pixmap made static
8237
8238         * gdk/linux-fb/gdkdnd-fb.c:
8239         GdkDragContextPrivate moved to windowing_data
8240
8241         * gdk/linux-fb/gdkdrawable-fb2.c:
8242         Removed endian.h, use glib endianness macros instead
8243         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
8244         and GDK_DRAWABLE_IMPL_FBDATA
8245
8246         * gdk/linux-fb/gdkfont-fb.c:
8247         Add empty gdk_font_load(). Needed for linking of Gtk+.
8248
8249         * gdk/linux-fb/gdkimage-fb.c:
8250         Removed endian.h, use glib endianness macros instead
8251         Moved GdkImagePrivateFB to windowing_data
8252         gdk_image_new_bitmap didn't always allocate enough
8253         memory.
8254
8255         * gdk/linux-fb/gdkinput-ps2.c:
8256         Added semi-working support for MS serial mice.
8257
8258         * gdk/linux-fb/gdkprivate-fb.h:
8259         s/GdkWindowPrivate/GdkWindowObject/
8260         Removed GdkWindowPrivate typedef
8261         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
8262         Removed GDK_DRAWABLE_P
8263         Move GdkColorPrivateFB from inherited to windowing_data
8264         Moved GdkImagePrivateFB to windowing_data
8265
8266         * gdk/linux-fb/gdkvisual-fb.c:
8267         Removed some unused debug code.
8268
8269         * gdk/linux-fb/gdkwindow-fb.c:
8270         Use stock cursors instead of including X headers.
8271         s/GdkWindowPrivate/GdkWindowObject/
8272
8273         * gdk/linux-fb/mitypes.h:
8274         Removed unused types.
8275
8276         * modules/linux-fb/basic.c:
8277         Use the pango fribidi wrappers.
8278
8279 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8280
8281         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
8282         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
8283         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
8284         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
8285         GEqualFunc where applicable.
8286         
8287         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
8288         pango_font_description_equal as changed in pango.
8289         
8290         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
8291
8292         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
8293
8294         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
8295
8296         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
8297
8298         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
8299
8300         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
8301
8302         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
8303         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
8304
8305         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
8306         gtk_rc_styles_compare -> gtk_rc_styles_equal.
8307
8308 2000-11-12  Havoc Pennington  <hp@pobox.com>
8309
8310         * demos/gtk-demo/Makefile.am (democodedir): change demo install
8311         dir to datadir/gtk+-2.0/demo
8312
8313         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
8314         sorts of text widget and Pango font bugs. Urgh.
8315
8316         * demos/gtk-demo/Makefile.am (demos): Add textview.c
8317
8318         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
8319         tree that you should double click to see the demo. Fix 
8320         types of variables to reflect changed return values from 
8321         GtkTreeStore and GtkTreeViewColumn constructors.
8322
8323         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
8324         newly-created buffer to prepare for GObject semantics
8325
8326         * gtk/testtext.c: don't leak the buffer with GObject semantics
8327
8328         * gtk/testtextbuffer.c: ditto
8329         
8330 2000-11-12  Havoc Pennington  <hp@pobox.com>
8331
8332         Rename this testgtk to gtk-demo to avoid confusion, and 
8333         install it so people can use it as a supplement to 
8334         the documentation.
8335         
8336         * demos/gtk-demo: Moved from demos/testgtk
8337
8338         * demos/testgtk: Removed
8339
8340         * configure.in: make Makefile in gtk-demo
8341         
8342         * demos/gtk-demo/Makefile.am: Install sample source to 
8343         datadir/gtk-demo (maybe there's a better place?), and 
8344         rename the binary to gtk-demo
8345         
8346         * demos/gtk-demo/main.c (load_file): Load installed sample
8347         source if source isn't found in pwd.
8348
8349 2000-11-09  Havoc Pennington  <hp@pobox.com>
8350
8351         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
8352         argument to set the char displayed when visibility == FALSE
8353         (gtk_entry_create_layout): If !entry->visible, replace 
8354         all chars with the "invisible char"
8355
8356         * gtk/testgtk.c: Test the invisible_char deal
8357         
8358 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
8359
8360         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
8361         can't get a native font in the right encoding.
8362
8363 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
8364
8365         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
8366         respectively.
8367
8368 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
8369
8370         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
8371         Fix warning when moving between paragraphs.
8372
8373         * gtk/gtkentry.[ch]: Change move => move_cursor, 
8374         delete => delete_from_cursor, insert => insert_at_cursor
8375
8376 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
8377
8378         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
8379
8380         * modules/input/imthai-broken.c: A Thai input method for use if
8381         Thai keys are really generating Latin1 keysyms.
8382
8383         * modules/input/Makefile.am: Build these.
8384
8385 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
8386
8387         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
8388         g_filename_{to,from}_utf8 now takes an extra parameter.
8389
8390         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
8391         strftime into UTF-8.
8392
8393         (column_from_x, gtk_calendar_paint_day_names): Support RTL
8394         calendars.
8395
8396         (gtk_calendar_paint_day_names): Draw day names in the right 
8397         place.
8398         
8399 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
8400
8401         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
8402         problem with using result of g_get_charset() backwards -
8403         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
8404
8405         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
8406         negative min_width/height and max_width/height to
8407         mean "requisition"; this allows setting a window
8408         to be user-resizable in only one direction easily.
8409
8410         * gtk/testgtk.c (create_main_window): Remove hard-coded
8411         usize - set a default size in the vertical direction.
8412
8413 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
8414
8415         * gtk/gtkrange.c: Add some missing casts. Support 
8416         2 and 3 button clicks on the arrows to mean 
8417         "move by pages" and "jump to end". (Like gtkspinbutton)
8418
8419 2000-11-12 Hans Breuer <Hans@Breuer.Org>
8420
8421         * gdk/win32/makefile.msc : reflect build module changes
8422
8423         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
8424         from GdkPixmap*, cast implementation member instead.
8425
8426         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
8427         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
8428         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
8429         more Gdi functions return value checking. 
8430         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
8431         GdkImagePrivateWin32 *.
8432
8433         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
8434         menus useable again. Add #pragma message to keep reminded on this issue.
8435         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
8436         windows. This allows to enable backing store on Win32!
8437
8438         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
8439         in drawable is of impl type. Correct specific type checks appropriate.
8440  
8441         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
8442         GDK_WINDOW_DESTROYED before allocating new resources.
8443
8444         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
8445
8446         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
8447         (gdk_window_foreign_new) initialize parent handle.
8448         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
8449
8450         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
8451         Let the GDI invalidate the window on MoveWindow call to fix scrolling
8452         problems (e.g. main buttons in testgtk). 
8453
8454 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
8455
8456         * gtk/gtkentry.c (gtk_entry_key_press): Call 
8457         gtk_widget_activate for GDK_Return.
8458
8459         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
8460         of preedit cursor position.
8461
8462 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
8463
8464         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
8465         static.
8466
8467 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
8468
8469         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
8470         out support for multiple locales; that simple doesn't
8471         work reliably with current Xlib
8472
8473         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
8474         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
8475         Add support for positioning the cursor within the preedit string.
8476
8477 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
8478
8479         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
8480         at XIM input method module.
8481
8482         * gtk/gtktextview.c: Check for bindings after passing
8483         events to im context filter.
8484
8485 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
8486
8487         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
8488         empty attribute lists properly.
8489
8490 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
8491
8492         * gtk/queryimmodules.c (main): Return non-zero exit
8493         status if errors were encountered querying any
8494         modules.
8495
8496         * modules/input/Makefile.am (moduledir): remove
8497         leftover bin program target.
8498
8499         * docs/make-todo: Fix typo in error message.
8500
8501 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
8502
8503         * configure.in: Add modules/input/Makefile
8504
8505 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
8506
8507         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
8508         don't include gtkthemes.h.
8509
8510         * gtk/testgtk.c gtk/testtext.c: Set environment variables
8511         to point
8512
8513         * gtk/Makefile.am: Add new .c and .h files, build 
8514         gtk-query-immodules and use it to create a gtk.immodules
8515         file for use of test programs.
8516
8517         * gtk/gtkpreview.c: remove extra blank line.
8518
8519 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
8520
8521         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
8522         Add the ability to add extra tables beyond the default
8523         one, and also the ability to have compose sequences 
8524         that are prefixes of other compose sequences. 
8525
8526         * gtk/gtkimcontextsimple.c: Export a preedit string which
8527         consists of possible candidates for keystrokes that have
8528         been entered but not yet committed.
8529
8530         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
8531         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
8532
8533         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
8534         Add a function to add input-method switching menu items
8535         to a menu.
8536
8537         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
8538         when switching input methods.
8539
8540         * gtk/gtkimcontextsimple.[ch]: Change the format of
8541         the compose table to allow compose tables of different
8542         lengths / sequence.
8543
8544 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
8545
8546         * gtk/gtkimmodule.[ch]: Support routines for loading
8547         GtkIMContext implementations dynamically at runtime.
8548
8549         * modules/input/imcyrillic-translit.c: A sample input
8550         method (based on GtkIMContextSimple with an extra table),
8551         which demonstrates preedit strings and the module
8552         system for input modules
8553
8554         * gtk/queryimmodules.c: Program to query the available
8555         input modules and write the results into a file.
8556          
8557         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
8558         extra config options "im_module_file" (cache file for
8559         input method modules), and "im_module_path" - path
8560         to look for modules when generating cache file.
8561
8562         This doesn't scale.
8563
8564 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
8565
8566         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
8567         generic code from gtkthemes into a new abstraction
8568         GtkModule which has the logic for implementing
8569         a loadable module which implements a number of 
8570         GObject types.
8571
8572 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
8573
8574         * gtk/gtkeditable.[ch]: Convert GtkEditable from
8575         a class into an interface  
8576         
8577         * gtk/gtkoldeditable.[ch]: Move the old editable
8578         implementation into here, so legacy widgets can
8579         still rely on the implemenation. GtkOldEditable
8580         exports GtkEditable. Make selection handling
8581         code use new text conversion functions (and
8582         handle UTF-8 as a side-effect). Use GtkClipboard
8583         for CLIPBOARD.
8584
8585         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
8586         Adopt to match above changes.
8587
8588         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
8589         avoid GtkOldEditable implementation. Restructure
8590         to reduce number of places that modify state directly.
8591         Move to GtkBindingSet. Display the preedit string.
8592         Queue recomputation of PangoLayout and scroll position
8593         to improve effiency of doing complex changes naively.
8594         Add a menu with cut/copy/paste and input method selection.
8595
8596 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
8597
8598         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
8599         to set preedit string and attributes; display preedit string by
8600         inserting string and attributes at cursor when creating the
8601         GtkTextLineDisplay.
8602
8603         * gtk/gtktextlayout.c: Move all conversions between byte
8604         positions in PangoLayout and GtkTextIter into new functions
8605         line_display_iter_to_index/index_to_iter that properly
8606         handle the preedit string.
8607
8608         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
8609         it to return const char * (eventually will end up
8610         as GCONST char *, most likely.)
8611
8612         * gtk/gtktextview.[ch]: Handle the preedit string, call
8613         gtk_im_context_reset() as necessary, add a menu to switch
8614         input methods.
8615         
8616         * gtk/gtktextlayout.[ch]: Remove useless
8617         gtk_text_layout_get_log_attrs() function.
8618
8619 2000-11-11  Tor Lillqvist  <tml@iki.fi>
8620
8621         * gdk/gdk.def
8622         * gtk/gtk.def: Update.
8623
8624         * gdk/win32/*.c: Add last argument to g_type_register_static()
8625         calls.
8626
8627         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
8628
8629         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
8630         generated by older wheel mouse drivers. Get the correct y
8631         coordinate from WM_MOUSEWHEEL messages.
8632
8633         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
8634         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
8635         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
8636         Debugging functions.
8637
8638         * gdk/win32/gdkprivate-win32.h: Declare them.
8639
8640         * gdk/win32/gdkinput-win32.h: Add declaration for
8641         gdk_input_window_destroy().
8642
8643         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
8644
8645 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
8646
8647         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
8648         function to help handle keeping things in sync.
8649
8650 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
8651
8652         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
8653         BOXED marshallers.
8654
8655         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
8656         (gtk_list_store_class_init): use the new BOXED marshallers.
8657
8658         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
8659         new_with_values to new_with_types.
8660         (gtk_tree_store_get_column_type): add this.
8661         (gtk_tree_store_class_init): use the new BOXED marshallers.
8662
8663         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
8664         mirror some POINTER marshallers.
8665
8666 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
8667
8668         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
8669         allow more interesting iterators.  Also, made the lifecycle of
8670         iterators more explicit.
8671
8672         * gtk/gtktreemodelsort.[ch]: New model for sorting.
8673
8674         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
8675         types.
8676
8677 2000-11-09  Alexander Larsson  <alexl@redhat.com>
8678
8679         * demos/testgtk/menus.c:
8680         Changes to make the new testgtk compile after
8681         gtk_menu_append was removed.
8682
8683         * gdk/linux-fb/gdkdrawable-fb2.c
8684         (gdk_fb_get_depth, gdk_fb_get_visual,
8685         gdk_drawable_impl_fb_class_init): Implement
8686         these drawable functions. Now GtkImages work again.
8687
8688         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
8689
8690         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
8691         
8692         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
8693         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
8694         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
8695         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
8696
8697 2000-11-08  Havoc Pennington  <hp@pobox.com>
8698
8699         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
8700         visible_set args, don't know where these had gone, I thought they
8701         used to be there
8702
8703         * gtk/testtext.c: Add a menu item to apply invisibility tag;
8704         now we can test the feature and see that it's totally broken.
8705
8706 2000-11-08  Havoc Pennington  <hp@pobox.com>
8707
8708         Make DND copy pixbufs and tags when source and target share a 
8709         tag table.
8710         
8711         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
8712         in-process GTK_TEXT_BUFFER_CONTENTS target
8713         (gtk_text_view_drag_data_received): Paste from
8714         GTK_TEXT_BUFFER_CONTENTS if we receive it.
8715
8716 2000-11-08  Alexander Larsson  <alexl@redhat.com>
8717
8718         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
8719         API changes.
8720
8721         * gtk/gtkmenu.c: Add support for scrolling menus.
8722         Remove gtk_menu_append/prepend/insert, these have been moved to
8723         gtkcompat.h as #defines.
8724
8725         * gtk/gtkcompat.h.in:
8726         Add compatibility #defines for gtk_menu_append/prepend/insert
8727
8728         * gtk/gtkmenu.h: Add data needed for scrolling menus.
8729         GtkMenuPositionFunc gets an extra argument push_in.
8730         gtk_menu_append/prepend/insert removed.
8731         
8732         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
8733         positioning behaviour to fit to scrolling menus.
8734
8735         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
8736         into menuitem->submeny. That is wrong, and broke torn
8737         off submenus of torn off menus, since they were unrealized
8738         when the first menu was unrealized.
8739
8740         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
8741         gtk_menu_shell_select_item() since these need to be overridden in
8742         GtkMenu.
8743
8744         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
8745         positioning behaviour to fit to scrolling menus.
8746         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
8747         the current item so that it is prelighted when the menu pops up.
8748         This is a workaround to the fact that the menu doesn't get the
8749         initial enter event (due to grabs).
8750
8751         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
8752         s/gtk_menu_append/gtk_menu_shell_append/
8753
8754         * gtk/gtknotebook.c:
8755         s/gtk_menu_insert/gtk_menu_shell_insert/
8756
8757         * gtk/testgtk.c (create_menu, create_menus):
8758         Create the first menu with 50 items so that menu scrolling
8759         can be tested.
8760         
8761         
8762         Patch from Jonathan Blandford  <jrb@redhat.com>
8763
8764         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
8765         system to handle size requests.  First, we ask what the size of
8766         the toggle is.  Then, when allocating the size, we allocate the
8767         toggle_size first.  This way we can have multiple menu-item
8768         classes w/o needing a seperate class for each.
8769
8770         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
8771         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
8772
8773         * gtk/gtkcheckmenuitem.c
8774         (gtk_check_menu_item_toggle_size_request): New function to handle
8775         the toggle size-request.
8776
8777 2000-11-07  Havoc Pennington  <hp@redhat.com>
8778
8779         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
8780         Half-ass somewhat fix this function, so that scrolling to the
8781         insertion point works. Pango hacking is in the future to really
8782         fix it.
8783
8784         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
8785         length of data, no longer used.
8786
8787         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
8788         method contents in here, get rid of destroy method
8789         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
8790         that were backward. Remove debug spew.
8791         (cut_or_copy): Make the clipboard work with insert_range to
8792         preserve tags and pixbufs, not just the primary selection.
8793
8794 2000-11-07  Havoc Pennington  <hp@redhat.com>
8795
8796         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
8797         to gtk_text_mark_get_visible
8798
8799         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
8800         bug that was generating an invalid iterator
8801
8802         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
8803         ensure_char_offsets() in front of code placing the iter in an
8804         invalid state.
8805
8806         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
8807         make override_location arg const
8808         (paste): Replace the selection if we paste into the 
8809         current selection
8810
8811         * gtk/gtkselection.h: Remove "GtkSelectioData"
8812         (struct _GtkSelectionData): move the definition here.
8813
8814         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
8815         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
8816
8817         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
8818
8819         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
8820         (gtk_text_buffer_insert_range_interactive): implement
8821         (gtk_text_buffer_get_tags): Remove, replaced by
8822         gtk_text_iter_get_tags()
8823
8824         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
8825         limit parameter, to avoid infinite linear scan.
8826         (gtk_text_iter_backward_search): Add search limit
8827         (gtk_text_iter_forward_find_char): Add search limit
8828         (gtk_text_iter_backward_find_char): Add search limit
8829
8830 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
8831
8832         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
8833         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
8834         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
8835         gdk/linux-fb/gdkwindow-fb.c:
8836         use g_object_new() instead of g_type_create_instance() which
8837         is a private function for fundamental type implementations.
8838
8839         * gdk/linux-fb/gdkinput-ps2.c:
8840         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
8841         instead just store the current modifier state. Add a (somewhat broken)
8842         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
8843         Rename exported function gdk_input_ps2_get_mouseinfo to
8844         gdk_input_get_mouseinfo.
8845
8846         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
8847         gdk/linux-fb/gdkwindow-fb.c:
8848         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
8849         
8850
8851 2000-11-02  Havoc Pennington  <hp@redhat.com>
8852
8853         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
8854         use stock buttons. Should be 100% source compatible, appropriate
8855         filesel fields now point to dialog->vbox and dialog->action_area.
8856         On the bizarre side, dialog->action_area and filesel->action_area
8857         are not the same widget.
8858         (gtk_file_selection_init): Put some padding around the selection
8859         entry, so it isn't touching the GtkDialog separator.    
8860
8861         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
8862         use stock buttons, etc. Should also be source compatible.
8863         Set the dialog default title in _init not _new().
8864         
8865         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
8866         Use stock buttons; don't put a button box inside the existing
8867         dialog button box. Don't bother with push/pop colormap anymore.
8868
8869         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
8870         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
8871         for message dialog, and necessary for the font selection and color
8872         selection with help and apply buttons.
8873         
8874         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
8875         to the created button widget. Set GTK_CAN_DEFAULT on the button.
8876         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
8877         between buttons, put less padding around the action area.
8878         (gtk_dialog_run): Exit on unmap rather than on destroy. 
8879         This will also exit the loop if the widget is hidden.
8880         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
8881         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
8882         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
8883         special-case delete event.
8884
8885         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
8886         formatting
8887         
8888 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
8889
8890         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
8891         button to temporarily disable position recording in the
8892         "saved position" test.
8893
8894 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
8895
8896         * gtk/gtkthemes.c: added compat code that temporarily implements
8897         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
8898         going to be revamped by owen's upcoming GtkModule patches, but
8899         untill then people want gtk to build, right? ;)
8900
8901 2000-11-04  Havoc Pennington  <hp@pobox.com>
8902
8903         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
8904         list
8905
8906         * docs/Changes-2.0.txt: Add note about
8907         gtk_container_get_toplevels()
8908
8909         * gtk/gtktextview.h: formatting
8910         
8911         * gtk/gtktextview.c: don't start descriptions with "Returns",
8912         confuses gtk-doc
8913
8914 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
8915
8916         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
8917         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
8918
8919 2000-11-03  Havoc Pennington  <hp@redhat.com>
8920
8921         * gtk/gtktexttagtable.c: Docs
8922         (gtk_text_tag_table_size): return a signed int
8923
8924         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
8925         (gtk_text_tag_event): make the event_object a GObject
8926
8927         * gtk/gtktextview.c: Write API docs for all functions.
8928
8929         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
8930         for gtk_text_view_get_window_type() called on one of the private
8931         windows.
8932
8933         * gtk/gtktextview.c: Instead of accessing text_view->buffer
8934         directly, call get_buffer() which demand-creates a default
8935         buffer. So gtk_text_view_new() can be used to create a view with a
8936         default buffer in it, if you just want an empty text box users can
8937         put data in. Useful for GUI builders also.
8938
8939 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
8940
8941         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
8942         the charset encodign portion MUST be in lowercase.
8943         * gtk/gtkrc.az: added file for Azeri language
8944
8945 2000-11-03  Havoc Pennington  <hp@redhat.com>
8946
8947         Get widgets working on the btree/buffer side. Display of them 
8948         still doesn't work.
8949         
8950         * gtk/gtktextview.c: start implementing child widget stuff
8951
8952         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
8953
8954         * gtk/gtktextlayout.c: handle embedded widgets
8955
8956         * gtk/gtktextdisplay.c: handle embedded widgets
8957
8958         * gtk/gtktextchild.c: Implement all the child anchor goo
8959
8960         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
8961         function
8962
8963         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
8964         (insert_pixbuf_or_widget_segment): abstract out common portions of 
8965         creating a child anchor or a pixbuf segment.
8966         (gtk_text_btree_create_child_anchor): new function
8967         (gtk_text_btree_unregister_child_anchor): new function
8968
8969         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
8970         allocate_child signal on GtkTextLayout
8971
8972         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
8973         values
8974         (gtk_text_iter_get_child_anchor): new function
8975
8976         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
8977         default handler for the changed signal, which calls
8978         gtk_text_buffer_set_modified(), instead of just always emitting
8979         changed then calling set_modified() manually. I guess this is
8980         maybe more flexible. It seems logical.
8981
8982 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
8983
8984         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
8985         now.
8986
8987         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
8988
8989 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
8990
8991         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
8992         been marked static.
8993
8994 2000-11-02  Havoc Pennington  <hp@redhat.com>
8995
8996         * gtk/testgtk.c (create_labels): had a test backward
8997
8998         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
8999         fields, so the dest GC ends up with the correct clip origin, 
9000         etc. Fixes a bug where colored labels didn't redraw 
9001         properly.
9002
9003 2000-11-02  Alexander Larsson  <alexl@redhat.com>
9004
9005         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9006         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
9007         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
9008         Add last argument to t_type_register_static call.
9009         
9010         * gdk/linux-fb/gdkdrawable-fb2.c:
9011         Add last argument to t_type_register_static call.
9012         export the get_image drawable virtual function.
9013
9014         * gdk/linux-fb/gdkimage-fb.c:
9015         Add last argument to t_type_register_static call.
9016         rename gtk_image_get to _gdk_fb_get_image and
9017         export it for use by gdkdrawable-fb2.
9018
9019         * gdk/linux-fb/gdkprivate-fb.h:
9020         export _gdk_fb_get_image.
9021
9022         * gdk/linux-fb/gdkselection-fb.c:
9023         Add new api call stubs.
9024
9025         * gtk/Makefile.am:
9026         Missing ( in linux-fb part.
9027
9028         * modules/linux-fb/Makefile.am:
9029         Must link with gdk_pixbuf or get unresolved symbol.
9030
9031 2000-11-01  Havoc Pennington  <hp@pobox.com>
9032
9033         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
9034         GTK_TYPE_TEXT_ITER and BOXED marshallers
9035
9036         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
9037
9038         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
9039         
9040         * gtk/gtk-boxed.defs: add GtkTextIter
9041
9042         * gtk/gtkmarshal.list: Add marshallers for text widget that 
9043         properly use OBJECT and BOXED
9044
9045 2000-11-01  Havoc Pennington  <hp@redhat.com>
9046
9047         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
9048
9049         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
9050         before returning it. 
9051         
9052 2000-11-01  Havoc Pennington  <hp@redhat.com>
9053
9054         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9055         Clip the rectangle to be rendered to the drawable, since
9056         get_from_drawable() requires a region within the drawable
9057
9058 2000-11-01  Havoc Pennington  <hp@redhat.com>
9059
9060         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
9061         from coordinates.
9062
9063 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
9064
9065         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
9066         it isn't NULL.
9067
9068 2000-11-01  Havoc Pennington  <hp@pobox.com>
9069
9070         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
9071         on a label
9072         (gtk_label_finalize): unref the attr list if any.
9073
9074         * gtk/testgtk.c (create_get_image): close test on second click
9075         (make_message_dialog): close dialog if it exists
9076
9077         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
9078
9079         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
9080         gdk-pixbuf
9081
9082         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
9083         from Pango markup format
9084         (gtk_label_set_markup_with_accel): ditto but with accelerator
9085         parsing
9086
9087         * gtk/gtkimage.c (gtk_image_expose): reformatting.
9088
9089         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
9090         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
9091         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
9092         call gdk_window_get_origin().
9093
9094         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9095         implement GDK_PIXBUF_ALPHA_FULL
9096         
9097 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
9098
9099         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
9100         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
9101         g_signal_handlers_disconnect_matched to block/unblock and disconnect
9102         multiple handlers respectively, instead of only treating the
9103         first handler found (bug reported by owen).
9104
9105 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
9106
9107         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
9108
9109         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
9110
9111         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
9112         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
9113         gtk/gtktreeviewcolumn.h: Fixed inline docs.
9114
9115         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
9116         widget.  Needs writing someday.
9117
9118         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
9119         the docs.
9120
9121 2000-10-30  Havoc Pennington  <hp@redhat.com>
9122
9123         * gtk/gtktextview.h, gtk/gtktextview.c:
9124         Rename delete_at_cursor delete_from_cursor, and 
9125         move to move_cursor.
9126
9127 2000-10-30  Havoc Pennington  <hp@redhat.com>
9128
9129         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
9130         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
9131         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
9132         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
9133         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
9134         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
9135         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
9136         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
9137         gtktexttypes.h, gtktextview.c, gtktextview.h:
9138
9139         Massive reindentation and reformatting. Arg alignment and comments
9140         still need fixing in various places.
9141
9142 2000-10-30  Havoc Pennington  <hp@redhat.com>
9143
9144         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
9145         to be named insert_at_cursor and delete_at_cursor so C++ can
9146         handle them.
9147
9148 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9149
9150         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
9151         to get a double directory separator in case the home directory
9152         ends with one. This would cause trouble especially on Windows,
9153         where the path will be confused with the syntax for an an UNC
9154         (network share) path \\server\share\path.
9155         (gtk_rc_add_initial_default_files): Ditto.
9156
9157 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
9158
9159         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
9160
9161         * gtk/gtktextview.c: Use correct marshallers.
9162
9163 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
9164
9165         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
9166         use new iter stuff, and added all the appropriate signals et al.
9167
9168         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
9169         code is internal to gtk only.
9170
9171 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9172
9173         * gtk/gtk.def
9174         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
9175         glib-genmarshal etc.
9176
9177 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
9178
9179         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
9180         parallel builds.
9181
9182 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
9183
9184         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
9185
9186 2000-10-27  Robert Brady  <robert@suse.co.uk>
9187
9188         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
9189         en_GB (British), ia (Interlingua).
9190
9191 2000-10-26  Havoc Pennington  <hp@redhat.com>
9192
9193         * gtk/gtktextiter.c (my_strrstr): fix constness warning
9194
9195         Fixed output of:
9196         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
9197         
9198         * gtk/gtktextsegment.c (char_segment_new): rename
9199         (_char_segment_new_from_two_strings): rename
9200         (_toggle_segment_new): rename
9201         
9202         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
9203         (make_clipboard_widget): make it static
9204         (text_get_func): static
9205         (text_clear_func): static
9206
9207         * gtk/gtkcolorsel.c (adjustment_changed): make this function
9208         static
9209         (hex_changed): make it static
9210         (hsv_changed): make it static
9211         (opacity_entry_changed): make it static
9212
9213         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
9214         (toggle_segment_check_func): rename with _gtk
9215
9216         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
9217         (_widget_segment_new): rename
9218         (_widget_segment_add): rename
9219         (_widget_segment_remove): rename
9220         (_widget_segment_ref): rename
9221         (_widget_segment_unref): rename
9222
9223         * gtk/gtktextmark.c (_mark_segment_new): Rename
9224         _gtk_mark_segment_new   
9225
9226 2000-10-26  Havoc Pennington  <hp@redhat.com>
9227
9228         * gtk/gtkmarshal.list: add new marshallers used by the text widget
9229         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9230         types
9231
9232         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
9233         marshaller types
9234
9235         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
9236         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
9237         license on these files.
9238
9239         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
9240         work.
9241
9242         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
9243         runtime random number different for each tree, instead of 
9244         a constant I made up.
9245
9246 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
9247
9248         * gtk/Makefile.am: buncha cleanups, kludged build sources
9249         dependencies with a Makefile: oldest-source-stamp dependancy
9250         for the moment. automake is really fighting us here, with
9251         intentionally not allowing user-defined rules or dependancies
9252         prior to it's -include $(DEP_FILES) statement. sucks rocks!
9253
9254         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
9255         to public headers. tehy have a comment stating that they are
9256         "semi-public" aren't included by gtk.h and if enums popup there,
9257         they can be /*< skip >*/-ed.
9258
9259         * gtk/gtktextlayout.h: 
9260         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
9261         added LGPL... <SIGH>
9262
9263 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
9264
9265         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
9266         GtkTreeIter.  Added iterators everywhere.
9267
9268         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
9269
9270         * gtk/gtktreeviewselection.c: Changed to use the iterators.
9271
9272         * gtk/gtktreestore.c: Changed to use the iterators.
9273
9274         * gtk/gtkliststore.c: Commented out the code.  Will convert to
9275         iterators tomorrow.
9276
9277         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
9278         iterators tomorrow.
9279
9280         * gtk/treestoretest.c: Changed to use iterators.
9281
9282         * demos/testgtk/main.c: Moved to use the new iterator system.
9283
9284 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
9285
9286         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
9287         localization misbehaviour.
9288
9289         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
9290         a useless type without copy/free.
9291
9292         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
9293         of GTK_TYPE_CTREE_NODE.
9294
9295 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
9296
9297         * gtk/gtksignal.c:
9298         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
9299         applicable.
9300
9301         * gtk/gtk-boxed.defs (GtkSelectionData): specify
9302         gtk_selection_data_copy and gtk_selection_data_free
9303         do GtkSelectionData work as params in signals.
9304
9305 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
9306
9307         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
9308         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
9309         couldn't they at least give it a non-standard name?
9310         
9311         * gtk/gtktextlayout.c: arg! yet another implementation of
9312         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
9313
9314         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
9315         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
9316         home. now i know this _is_ a conspiracy.
9317
9318         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
9319         ::state-changed.
9320
9321         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
9322         (gtk_accel_group_create_add): marshaller signature fixups.
9323
9324         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
9325         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
9326
9327         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
9328         anymore.
9329
9330 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
9331
9332         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
9333         due to the signal system changes, it wouldn't build currently. to
9334         be fixed soon.
9335
9336         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
9337
9338         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
9339         so it needs gtk_marshal_VOID__ENUM() instead of
9340         gtk_marshal_NONE__UINT().
9341
9342         * gdk/gdk*.c: adapted type registration functions.
9343
9344         * gtk/gtkbindings.c:
9345         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
9346         gone.
9347
9348         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
9349
9350         * gtk/gtkobject.c:
9351         (gtk_object_destroy):
9352         (gtk_object_shutdown): fixed recursion guards. basically we have to
9353         catch the case where any of GObject.shutdown() or gtk_object_destroy()
9354         is called during ::destroy, and avoid recursion there.
9355
9356         * gtk/gtktypeutils.c:
9357         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
9358         boxed_copy/boxed_free. this needs a more general solution based on a
9359         publically installed code-generator utility.
9360
9361         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
9362         glib's gobject has support for that now.
9363         define GtkSignalMarshaller in terms of GSignalCMarshaller.
9364
9365 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
9366
9367         * gtk/gtksignal.[hc]:
9368         * gtk/gtkmarshal.[hc]:
9369         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
9370         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
9371         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
9372         care of that.
9373
9374         * *.c: marshaller name fixups.
9375
9376         * gtk/gtkmarshal.list: added a comment briefing the format.
9377
9378 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
9379
9380         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
9381         compatibility macros here now. more specifically, most of
9382         the API is preserved (yes, _most_, nonwithstanding the
9383         following exceptions listed, the API is stil lHUGE ;)
9384         things that got removed completely:
9385         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
9386         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
9387         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
9388         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
9389         gtk_signal_remove_emission_hook().
9390         non-functional functions variants:
9391         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
9392         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
9393         not supported anymore.
9394         (gtk_signal_compat_matched): new internal function to aid
9395         implementation of the compatibility macros, it  provides
9396         functionality to block/unblock/disconnect handlers based
9397         on func/data.
9398
9399         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
9400
9401         * *.c: adaptions to new type registration API signatures.
9402
9403 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
9404
9405         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
9406
9407 2000-10-25  Robert Brady  <robert@suse.co.uk>
9408
9409         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
9410         gdk_property_delete): If window == NULL, assume the root window.
9411         (restoring the behaviour that was in 1.2).
9412         
9413         * gtk/testtext.c (save_buffer): Allow creation of new files when
9414         saving.
9415
9416         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
9417         calls to read().
9418
9419 2000-10-25  Tor Lillqvist  <tml@iki.fi>
9420
9421         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
9422
9423         * gdk/win32/gdkdrawable-win32.c
9424         * gdk/win32/gdkimage-win32.c
9425         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
9426         X11 backend.
9427
9428         * gdk/win32/gdkcc-win32.c
9429         * gdk/win32/gdkcolor-win32.c
9430         * gdk/win32/gdkfont-win32.c
9431         * gdk/win32/gdkinput-win32.c
9432         * gdk/win32/gdkmain-win32.c
9433         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
9434
9435 2000-10-24  Havoc Pennington  <hp@redhat.com>
9436
9437         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
9438         it a static function
9439
9440         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
9441         redraw text when a tag is applied to it.
9442
9443         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
9444         (gtk_text_tag_affects_nonsize_appearance): private functions to
9445         see if a tag requires various kinds of redraw/layout to be queued
9446         up.
9447
9448         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
9449
9450         * gtk/testtext.c (fill_example_buffer): Put the cursor 
9451         at the start of the buffer, so search works by default
9452
9453         * gtk/gtktextiter.c (lines_match): init match_start always
9454
9455         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
9456         function, get iter at a line + a byte index
9457
9458         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
9459         to set byte position within a line
9460         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
9461
9462 2000-10-23  Havoc Pennington  <hp@redhat.com>
9463
9464         * gtk/testtext.c: Re-enable the "find" dialog
9465
9466         * gtk/testgtk.c: Add test for gdk_drawable_get_image
9467         
9468         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
9469         the arguments to gdk_draw_drawable were in the wrong order
9470         (gdk_window_paint_init_bg): This function was ignoring the
9471         init_region, instead of clipping to it, so the entire backing
9472         pixmap was cleared on every begin_paint()
9473         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
9474         was in here again, the loop kept using the same GtkWindowPaint
9475         over and over.
9476         (gdk_window_begin_paint_region): Fix a bug where we had two
9477         x_offset instead of x_offset and y_offset
9478
9479         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
9480         before we get the image.
9481         (gdk_draw_drawable): get the composite before we draw the drawable.
9482         (gdk_drawable_real_get_composite_drawable): default
9483         get_composite_drawable implementation that returns the drawable 
9484         itself
9485
9486         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
9487         get_composite_drawable virtual function
9488
9489         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
9490         list-walking bug
9491
9492         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
9493         make this work if the source drawable is a GdkDrawableImplX11
9494         instead of a public drawable type. This is really broken; the
9495         problem is that GdkDrawable needs a virtual method get_xid(), but
9496         of course that doesn't work in practice. Enter RTTI.
9497
9498         Also, improve mismatched depth message.
9499
9500         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
9501         GdkPixmap
9502
9503         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
9504         install _gdk_x11_get_image as our implementation of get_image
9505         
9506         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
9507         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
9508
9509         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
9510         gdk_drawable_get_image
9511
9512         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
9513
9514         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
9515         get_image
9516
9517         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
9518         trailing semicolon after for loop
9519
9520 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
9521
9522         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
9523         where font_desc for widget's context lagged widget's font_desc by
9524         one step.
9525
9526 2000-10-22  Tor Lillqvist  <tml@iki.fi>
9527
9528         * gdk/win32/gdkgc-win32.c
9529         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
9530
9531         * gtk/makefile.mingw.in
9532         * gtk/gtk.def: Updates.
9533
9534         * gtk/testgtk.c: sleep() is called _sleep in MS's C
9535         library.
9536
9537         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
9538
9539         * gtk/makefile.msc: Remove
9540
9541         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
9542
9543         * gtk/Makefile.am: Add it.
9544
9545         * configure.in: Generate it.
9546
9547         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
9548         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
9549         something even if not implemented, to satisfy picky MSVC.
9550
9551         Patches by Hans Breuer:
9552         
9553         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
9554         SetBkMode() and SetTextAlign() before calling
9555         pango_win32_render().
9556
9557         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
9558         Set hcliprgn to NULL after destroying it.
9559         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
9560
9561         * gdk/win32/gdkgeometry-win32.c
9562         (_gdk_windowing_window_queue_antiexpose): More effective
9563         implementation.
9564
9565         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
9566         depth as default, not the visual's.
9567
9568         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
9569         against empty title.
9570
9571         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
9572         IMAGE_PRIVATE_DATA.
9573
9574         * gdk/win32/gdkimage-win32.c: Use it.
9575
9576 2000-10-22  Robert Brady  <robert@suse.co.uk>
9577
9578         * configure.in: Check for bind_textdomain_codeset
9579
9580         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
9581         present, make use of it.
9582
9583         Add a translatable string "default:LTR" which, if translated
9584         to "default:RTL", will cause the default direction to be
9585         Right-to-Left.
9586
9587         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
9588         direction if marked as flippable.
9589
9590         * gtk/gtkhscale.c: Mark widget as flippable.
9591         
9592 2000-10-04  Havoc Pennington  <hp@redhat.com>
9593
9594         * gtk/testgtk.c (create_buttons): create some stock buttons
9595         with the default accel group
9596         (create_image): test some new GtkImage features
9597         (make_message_dialog): test GtkMessageDialog
9598         (create_modal_window): fix someone's bizzarro indentation
9599
9600         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
9601         GTK_WIN_POS_CENTER_ON_PARENT. 
9602         Add "destroy with parent" setting, which means the window goes
9603         away with its transient parent.
9604         (gtk_window_get_default_accel_group): get the default accel group
9605         for the window.
9606         (gtk_window_set_destroy_with_parent): set/unset destroy with
9607         parent flag
9608         (gtk_window_read_rcfiles): invalidate icon set caches
9609         after reloading rcfiles 
9610
9611         * gtk/gtkenums.h (GtkWindowPosition): add
9612         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
9613         on its parent window when the dialog is mapped for the first time.
9614
9615         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
9616         a simple message dialog class
9617         
9618         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
9619         handler to emit response signal, and maybe later it would
9620         honor a hide_on_delete flag - though that isn't there yet.
9621         Set border width on the vbox to 2, so we get some padding.      
9622         Use a button box for the action area.
9623         (gtk_dialog_key_press): synthesize a delete event if Esc
9624         is pressed and the GtkWidget key press handler didn't 
9625         handle the escape key.
9626         (gtk_dialog_new_with_buttons): new function creates a dialog
9627         with some default buttons in it.
9628         (gtk_dialog_add_action_widget): add an activatable widget
9629         as a button in the dialog - you can also add a non-activatable
9630         widget by accessing the action area directly.
9631         (gtk_dialog_add_button): add a simple button - stock ID or 
9632         label - to the action area
9633         (gtk_dialog_response): emit response signal
9634         (gtk_dialog_run): block waiting for the dialog, return 
9635         the response. Override normal delete_event behavior, so that 
9636         delete_event does nothing inside gtk_dialog_run().
9637
9638         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
9639         emitted when an action widget is clicked or the dialog gets
9640         delete_event
9641
9642         * gtk/gtk.h: add gtkmessagedialog.h
9643
9644         * gtk/Makefile.am: add gtkmessagedialog.[hc]
9645
9646 2000-10-18  Havoc Pennington  <hp@redhat.com>
9647
9648         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
9649         where any number of empty lines would get skipped
9650
9651         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
9652         edge.
9653
9654         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
9655         warning about invalid iterators (explain more thoroughly)
9656         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
9657
9658         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
9659         big
9660
9661         * demos/*.c: Add error handling
9662
9663         * gtk/gtktextbuffer.c: don't modify const iterators
9664
9665         * gtk/gdk-pixbuf-loader.c: Add full error handling here
9666
9667         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
9668         on file load
9669
9670         * gtk/gtkiconfactory.c: Update to reflect addition of error
9671         handling to gdk-pixbuf loaders
9672
9673 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
9674
9675         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
9676         move to new modularized testgtk.
9677
9678 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
9679
9680         * gtk/gtktreeview.c: Draw the arrows correctly.
9681
9682         * gtk/gtktreemodel.c: Added user docs.
9683
9684         * gtk/gtk.h: remove gtktreedatalist.h.
9685
9686         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
9687         parent when generating my type.
9688
9689         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
9690         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
9691
9692 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
9693
9694         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
9695         GtkTreeModel from object to interface.
9696
9697 2000-10-16  Havoc Pennington  <hp@redhat.com>
9698
9699         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
9700         compilation
9701
9702 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
9703
9704         * gtk/gtktreeselection.c: Add API documentation to all public
9705         functions.
9706
9707         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
9708         functions.
9709
9710 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
9711
9712         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
9713         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
9714         docs to all public functions.
9715
9716         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
9717         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
9718         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
9719         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
9720         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
9721         issue.
9722
9723 2000-10-14  Robert Brady  <robert@suse.co.uk>
9724
9725         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
9726
9727 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
9728
9729         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
9730         values other then G_TYPE_STRING.
9731         * gtk/gtktreeselection.c: Minor commenting updates.
9732         * gtk/gtktreeview.c: Format updates.
9733
9734 2000-10-09  Tor Lillqvist  <tml@iki.fi>
9735
9736         * README.win32: Update.
9737
9738         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
9739         lines that had been deleted by mistake (?).
9740
9741         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
9742         also the case fg==white and bg==black (but still not randomly
9743         coloured cursors). Thanks to Wolfgang Sourdeau.
9744
9745         * gdk/win32/*.c: Silence gcc -Wall.
9746
9747         * gtk/gtk.def: Add missing entry points.
9748
9749         Fixes by Hans Breuer:
9750
9751         * gdk/makefile.msc
9752         * gdk/win32/makefile.msc: Update.
9753
9754         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
9755         some MSVC thing, presumably), cause breakpoint on failures. Add
9756         GDK_NOR case. Call g_log_set_always_fatal.
9757
9758         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
9759         should be pased by reference.
9760         
9761         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
9762         
9763         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
9764
9765         * gdk/win32/gdkevents-win32.c
9766         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
9767
9768         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
9769         implementation object.
9770
9771         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
9772         not just windows.
9773         
9774         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
9775         Use the wrapper object.
9776         
9777 2000-10-06  Havoc Pennington  <hp@redhat.com>
9778
9779         * Makefile.am (SRC_SUBDIRS): contrib subdir
9780
9781         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
9782         so it can be used in Xlib version
9783
9784         * demos/testpixbuf.c (update_timeout): error checking from 1.0
9785         tree
9786
9787         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
9788         change from 1.0 tree that returns first frame of animation
9789         if the loaded file is an animation.
9790
9791         * contrib: add new directory to hold stuff that comes with GTK+
9792         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
9793         
9794         * configure.in: add contrib/*
9795
9796 2000-10-05  Havoc Pennington  <hp@redhat.com>
9797
9798         * demos/testpixbuf-save.c: add pixbuf save test
9799
9800         * demos/Makefile.am: add testpixbuf-save.c
9801
9802 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
9803
9804         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
9805         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
9806         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
9807         * gtk/gtktreeselection.[ch]: Replaced
9808         "node_selected"/"node_unselected" signal with "selection_changed"
9809         signal.
9810
9811 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
9812
9813         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
9814         tree widget.
9815
9816 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
9817
9818         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
9819         drawing.
9820
9821 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
9822
9823         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
9824         Move list pointer forwards before removing item from
9825         list. (Crash reported by Salmaso Raffaele)
9826
9827         * gdk/gdkwindow.h: Remove spurious trailing ,
9828
9829         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
9830         dependencies on uninstalled libraries, sorry folks.
9831
9832 2000-10-04  Havoc Pennington  <hp@redhat.com>
9833
9834         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
9835         gtk/gtkiconfactory.c: Fix copyrights    
9836
9837         * demos/testpixbuf.c: add inline pixbuf test
9838         
9839 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
9840
9841         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
9842         Add gdk_window_iconify.
9843
9844         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
9845         (gdk_window_set_geometry_hints): Add win_gravity
9846         to geometry structure.
9847
9848         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
9849         Implement _NET_WM_PING.
9850
9851         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
9852         Set _NET_WM_PID on the client leader.
9853
9854         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
9855         Handle UTF-8 better.
9856
9857         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
9858         UTF-8 better, set _NET_WM_NAME as well. Only set
9859         icon name if it hasn't previously been explicitely 
9860         set.
9861
9862 2000-10-03  Havoc Pennington  <hp@redhat.com>
9863
9864         * gtk/testtextbuffer.c: clean up trailing whitespace,
9865         add extensive tests for tag toggle iteration.
9866         
9867         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
9868         distance
9869
9870         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
9871         optimize case where the tag root is on level 1
9872         (gtk_text_line_previous_could_contain_tag): attempt to implement
9873         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
9874         functionality
9875
9876         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
9877         Implement this, though not very efficiently.
9878
9879         * gtk/gtktextiterprivate.h: reformat
9880
9881         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
9882         iterator
9883
9884         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
9885         this to properly revalidate the iterators.
9886
9887         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
9888         properly at the end of the line (and therefore on empty lines)
9889
9890         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
9891         maybe we should return a value...
9892
9893 2000-10-03  Tor Lillqvist  <tml@iki.fi>
9894
9895         * config.h.win32: Guard definition of alloca(). glib.h now handles
9896         that.
9897
9898         * gdk/gdk.def
9899         * gtk/gtk.def: Add new entry points.
9900
9901         Changes just to make GTK+ build without errors on Win32. No hope
9902         of it working in its current state, though...:
9903         
9904         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
9905         some functions from the X11 backend, just to make GTK+ build.
9906
9907         * gdk/makefile.mingw.in
9908         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
9909         number. Add new object files.
9910
9911         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
9912         GetMessageTime to get timestamp (where on X11 uses
9913         gdk_x11_get_server_time()).
9914
9915 2000-10-02  Havoc Pennington  <hp@pobox.com>
9916
9917         * gtk/gtktextview.c: text_window_* weren't static and should have
9918         been.
9919         Start work on child widgets; not yet complete, syncing to 
9920         office computer.
9921
9922         * gtk/gtktextchild.h: change this to contain a public interface,
9923         starting work on child interfaces.
9924         * gtk/gtktextchildprivate.h: move private interfaces here
9925
9926         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
9927
9928         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
9929         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
9930         gtk/gtktextmark.c: copyright notices
9931
9932         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
9933         internal functions      
9934
9935         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
9936         internal function
9937
9938         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
9939         Reformatting    
9940
9941 2000-09-30  Havoc Pennington  <hp@pobox.com>
9942
9943         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
9944         NULL start/end pointers
9945
9946         * gtk/gtktextbuffer.c: Write some docs
9947         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
9948         NULL, so you can just check whether there's a selection.        
9949
9950         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
9951         cleanup_line or segments_changed ourselves, it gets done 
9952         in unlink_segment
9953
9954         * gtk/gtktextmark.h:
9955         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
9956         
9957         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
9958
9959         * gtk/gtktextmark.c: delete some more old Tk cruft
9960
9961         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
9962         mark before removing it, so we can emit MARK_DELETED with a valid
9963         pointer.
9964         (gtk_text_buffer_mark_set): hold ref across signal emission
9965
9966         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
9967         whining about attempts to delete special marks
9968
9969         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
9970         underscore, since it's internal.
9971
9972         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
9973         now implemented in terms of iterators in gtktextiter.h
9974
9975         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
9976         New function, destructively sets contents of buffer. Also 
9977         a convenient way to clear the buffer by setting text to ""
9978
9979         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
9980         multiline string literal
9981
9982         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
9983         text changes.
9984
9985         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
9986         is not dereferenceable
9987         (gtk_text_iter_forward_lines): fix return value
9988
9989 2000-09-29  Havoc Pennington  <hp@redhat.com>
9990
9991         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
9992
9993         * gtk/gtktextview.c: Implement drag thresholding; change functions 
9994         that set border window size to have nicer name
9995         (gtk_text_view_mark_set_handler):  Fix this to have the 
9996         right signature.
9997
9998         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
9999
10000         * gtk/testtext.c: Update with API changes, put line numbers on 
10001         both sides.
10002         
10003         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
10004         with this
10005
10006         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
10007         pixbuf; delete a big block of #if 0 Tk code
10008
10009         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
10010         insert_pixmap with insert_pixbuf
10011
10012 2000-09-29  Martin Baulig  <baulig@suse.de>
10013
10014         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
10015         confusion with the GdkPixbuf of the GNOME 1.x platform.
10016
10017 2000-09-29  Havoc Pennington  <hp@pobox.com>
10018
10019         * gtk/gtktextview.c: Implement the side windows.
10020
10021         * gtk/testtext.c: Implement simple line numbering in the 
10022         left side window; seems to make scrolling sloooow. Oops.
10023         Also, cursor blink is for some reason causing redraws
10024         of the line numbers. Should investigate...
10025
10026 2000-09-28  Havoc Pennington  <hp@redhat.com>
10027
10028         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
10029         scrolling child windows, and draw focus rectangle properly.
10030         
10031         (gtk_text_view_buffer_to_window_coords):
10032         Coordinate transformation to deal with all these freaking windows
10033         and offsets
10034         (gtk_text_view_window_to_buffer_coords): transform the other way
10035
10036         * gtk/testtext.c (create_buffer): Update to match Pango API change
10037
10038         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
10039         anonymous tags
10040         (foreach_unref): don't emit remove signal from finalize, just
10041         set tag's parent to NULL
10042
10043 2000-09-26  Havoc Pennington  <hp@redhat.com>
10044
10045         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
10046         Fix some warnings       
10047
10048 2000-09-26  Havoc Pennington  <hp@redhat.com>
10049
10050         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
10051         headers into the private header list
10052
10053         * Makefile.am (pkgconfig_DATA): install pkg-config files
10054
10055         * configure.in: add pkg-config files
10056
10057         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
10058
10059         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
10060         outstanding icon caches on theme change.
10061
10062         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
10063         important types:
10064
10065         (GtkIconSource): Specification for creating a pixbuf 
10066         appropriate for a direction/state/size triplet from 
10067         a source pixbuf or filename
10068
10069         (GtkIconSet): List of GtkIconSource objects that are used to
10070         create the "same" icon (e.g. an OK button icon), and cache for
10071         rendered icons
10072
10073         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
10074         up the icon set for a given stock ID.  GTK maintains a stack of
10075         GtkIconFactory to search, and applications or libraries can add
10076         additional icon factories on top of the stack
10077         
10078         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
10079         the set of GtkIconSource specified for a given stock ID into 
10080         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
10081         RcStyle, under the specified stock ID.
10082
10083         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
10084         render_icon used to derive a GdkPixbuf from a GtkIconSource.
10085         This allows people to theme how prelight, insensitive, etc. are
10086         done.
10087
10088         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
10089         icon factories for a style, and return the resulting 
10090         icon set if any.
10091
10092         (gtk_style_render_icon): Render an icon using the render_icon 
10093         method in the GtkStyleClass.
10094
10095         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
10096         Use the style for a given widget to look up a stock ID, get the
10097         icon set, and render an icon using the render_icon method 
10098         of the style
10099
10100         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
10101         (contains information about a stock item), the built-in stock item
10102         IDs, and functions to add/lookup stock items.
10103
10104         * gtk/stock-icons/*: Stock icons that come with GTK
10105
10106         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
10107         a button based on a GtkStockItem
10108         (gtk_button_new_accel): Takes a uline string and accel group, and
10109         installs the accelerator.
10110
10111         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
10112         image-display widget.
10113
10114 2000-09-25  Havoc Pennington  <hp@redhat.com>
10115
10116         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
10117
10118         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
10119         Fix a bug when removing node data, we didn't properly 
10120         re-splice the linked list after removing the data.
10121
10122         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
10123         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
10124
10125         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
10126
10127         * gtk/gtktextlayout.c (set_para_values): Set tab array 
10128         for the layout from the GtkTextTag.
10129
10130         * gtk/gtktexttypes.h: delete tab and search cruft, 
10131         remove g_convert() in favor of GLib version
10132
10133         * gtk/gtktexttypes.c: remove tab implementation from here,
10134         move to Pango
10135
10136         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
10137         tab stuff using new PangoTabArray from Pango
10138
10139         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
10140         unused border_width stuff
10141
10142 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
10143
10144         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
10145         glib) and now useless utf_to_latin1() latin1_to_utf()
10146
10147         * gtk/gtktextview.[ch]: Change ::move_insert and
10148         ::delete_text action signals to ::move and ::delete;
10149         create the signals with the right enumeration type,
10150         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
10151         C-v bindings, change Home, End to move to beginning/end
10152         of line, Add C-Home C-End to move to beginning/end
10153         of buffer. Change ::cut_text to ::cut_clipboard, etc;
10154         combine ::scroll_text into ::move; use new GtkSelectionData
10155         functions to simplify DND text handling.
10156         
10157         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
10158         deletion enumerations here, rename enumeration values to 
10159         be consistently plural.
10160
10161         * gtk/gtktextbuffer.c: Use new clipboard interfaces
10162         for cut/copy/paste and primary selection.
10163
10164         * gtk/gtktextbuffer.[ch]: Remove excess time and
10165         'interactive' arguments from cut/copy/paste;
10166         rename cut to cut_clipboard, etc; remove
10167         gtk_text_buffer_get_clipboard_contents().
10168
10169         * gtk/gtktextlayout.[ch]: Add 
10170         gtk_text_layout_move_iter_to_line_end() to move the iter to 
10171         line ends.
10172
10173         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
10174         Functions to set or get a UTF-8 string on the selection
10175         data.
10176
10177         * gtk/gtkclipboard.[ch]: New, simplified selection handling
10178         interfaces.
10179
10180         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
10181         created widgets - one of these is useless if we don't.
10182
10183         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
10184         a public function clear all targets registered for the
10185         widget.
10186
10187         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
10188         Never call gtk_widget_realize() - that was just asking
10189         for bizarre side-effects.
10190
10191         * gtk/gtkselection.c (gtk_selection_owner_set): Call
10192         gdk_selection_owner_set even if the widget is the
10193         same so that we reliably update the timestamp on
10194         the server.
10195
10196         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
10197         gdk_x11_get_server_time() function.
10198         
10199         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
10200         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
10201         Add some tricky filtering on serial numbers for
10202         selection clear events to fix up long-standard
10203         race condition FIXME's in gtkselection.c.
10204
10205         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
10206         routines to convert from utf8 to compound text or
10207         STRING and from a text property to UTF-8.
10208
10209         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
10210         a convenience function gdk_get_current_event_time().
10211
10212         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
10213         and free selection_data->data properly
10214
10215 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
10216
10217         * gtk/gtkthemes.c: Remove some unecessary includes.
10218
10219 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
10220
10221         * gtk/gtktextdisplay.c
10222         * gtk/gtktextlayout.c
10223         * gtk/gtktexttag.c
10224         * gtk/gtktexttag.h
10225         * gtk/testtext.c: Change the overstrike property to strikethrough,
10226         to closer match pango.
10227
10228 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
10229
10230         * gtk/gtktextview.c: Fix up visibility so that focus,
10231         cursor_visible and blink interact properly.  Reenable cursor blink
10232         which had been roughly disabled. Make blink and focus
10233         properly per-view.
10234
10235         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
10236         Add a flag for whether to display insertion cursor and
10237         a function to set the flag.
10238
10239         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
10240         get_line_y() to get_line_yrange(), to be a bit more generally
10241         useful.
10242
10243 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
10244
10245         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
10246           do stop_navigating_submenu, to clear last timeout properly.
10247           Also in gtk_menu_motion_notify move ignore_enter above
10248           the conditional to make it always happen as suggested by Owen
10249
10250 2000-09-07  Tor Lillqvist  <tml@iki.fi>
10251
10252         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
10253
10254         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
10255         w32api headers.
10256
10257         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
10258         declarations.
10259
10260         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
10261         (gdk_win32_get_colormap): A line had been deleted by mistake.
10262
10263         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
10264         (gdk_event_translate): Handle more virtual keycodes to be able to
10265         generate GDK events for Control-comma, Control-period, etc.
10266
10267         * gtk/gtk.def: Add some missing entry points.
10268
10269 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
10270
10271         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
10272         Doc comment fixing. (Mostly non-matching parameter names.)
10273
10274         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
10275         comments a little to avoid looking like a doc comment.
10276
10277         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
10278         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
10279         conversions be changed to GError?)
10280
10281         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
10282         Move private #defines into .c file.
10283
10284         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
10285         order of argument addition, remove duplicates.
10286
10287         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
10288         parent class is FrameClass, not BinClass.
10289
10290         * gtk/gtk.h: Add gtkinvisible, which was missing.
10291         (It's occasionalyl useful for client apps, if seldom.)
10292
10293         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
10294         #define.
10295
10296 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
10297
10298         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
10299         coordinates when creating window, instead of GDK-space
10300         coordinates. (Avoid BadValue on too large windows.)
10301
10302 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10303
10304         * configure.in (use_mmx_asm): Remove conftest* after use along the
10305         lines of AC_TRY_COMPILE.        
10306         
10307         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
10308         of g_dirname, which is deprecated.
10309         (gtk_rc_parse_any): Removed calls to
10310         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
10311
10312         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
10313         Removed calls to g_hash_table_{freeze,thaw}, as they are
10314         deprecated now.
10315
10316         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
10317         instead of g_basename.
10318         
10319 2000-09-04 Elliot Lee <sopwith@redhat.com>
10320         
10321         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
10322         ANSI warning.
10323
10324 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
10325
10326         * gtk/gtkwidget.h:  Add some documenting comments about 
10327           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
10328           just as owen said on irc.
10329
10330         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
10331           set HAS_DEFAULT.  Only set it if there isn't another window
10332           holding it (a focus window which RECEIVES_DEFAULT) and only unset
10333           it if the widget is not the focused window with RECEIVES_DEFAULT.
10334           This fixes weird double default bugs in dialogs which has things
10335           call gtk_window_set_default at times.
10336
10337 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
10338
10339         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
10340         Nils Barth and David Santiago to improve submenu
10341         navigation. The patch does this by creating a triangular
10342         region from the point where the pointer leaves the
10343         menu to the submenu.  While the pointer is in
10344         that region and a timeout has not expired, events 
10345         that would cause the active submenu to change are
10346         ignored.
10347
10348 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
10349
10350         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
10351         moving a toplevel window immediately after sizing it would
10352         result in it being sized back to the old size since 
10353         impl->width, impl->height aren't updated until we hear
10354         back from the server. There is still a (longstanding) bug
10355         here that gdk_window_get_size() will give the wrong size
10356         until we do hear back.
10357
10358 2000-08-31  Havoc Pennington  <hp@redhat.com>
10359
10360         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
10361         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
10362         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
10363         Rename GtkTextStyleValues to GtkTextAttributes
10364
10365 2000-08-31  Havoc Pennington  <hp@pobox.com>
10366
10367         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
10368         for rapid testing whether an iterator is the end iterator
10369         (gtk_text_btree_new): init end line cache
10370         (gtk_text_line_is_last): use fast cached line to 
10371         see if we're the last line.
10372         (get_last_line): use cached line here too, should 
10373         speed up some random unrelated code.
10374         
10375 2000-08-30  Havoc Pennington  <hp@pobox.com>
10376
10377         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
10378         signals.
10379
10380         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
10381         delete_text signals. This allows the signals to be used for
10382         implementing undo.
10383
10384         * gtk/gtktextbuffer.c: Change signal handler signatures; 
10385         provide "interactive" argument when emitting insert_text or
10386         delete_text signal.
10387         
10388 2000-08-30  Havoc Pennington  <hp@pobox.com>
10389
10390         * gtk/gtktextbuffer.c: Docs
10391
10392 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
10393
10394         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
10395         from switch statements, since Tor removed the enumeration
10396         value.
10397         
10398         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
10399         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
10400
10401 2000-08-29 Elliot Lee <sopwith@redhat.com>
10402         * */*.h: Use G_GNUC_CONST.
10403
10404 2000-08-27  Havoc Pennington  <hp@pobox.com>
10405
10406         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
10407         minor indentation fixes, inserted some FIXME about stuff I
10408         realized was broken while documenting it.
10409         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
10410         GTK convention  
10411
10412 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
10413
10414         * gtk/testgtk.c (create_styles): Fix double free of
10415         font desc.
10416
10417 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10418
10419         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
10420         
10421         * gtk/testgtk.c (create_styles): Add a test for modifying
10422         the style through gtk_widget_modify_*.
10423
10424         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
10425         a function to get the current modifier style.
10426
10427         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
10428         of the passed in GtkRcStyle instead of ref'ing it.
10429
10430         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
10431
10432 2000-08-20  Tor Lillqvist  <tml@iki.fi>
10433
10434         * gdk/gdkimage.h
10435         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
10436         shared memory image+pixmap GdkImage type, or
10437         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
10438         I am dropping that.
10439
10440         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
10441         actually call gtk_init_abi_check(), passing also
10442         sizeof(GtkWindow). Ditto for gtk_init_check(). 
10443
10444         * gtk/gtk.def
10445         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
10446         New functions, used to check that the GTK+-using code has been
10447         compiled using the correct compiler and switches. In particular,
10448         with gcc one has to use the -fnative-struct switch as GTK+ is
10449         compiled with that.
10450
10451 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
10452
10453         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
10454         ->prev fields when merging lists. (Found simultaneously
10455         by Pawel Salek and Jakub Jelinek)
10456
10457 2000-08-12  Tor Lillqvist  <tml@iki.fi>
10458
10459         * gdk/gdk.def
10460         * gtk/gtk.def: Add missing entries.
10461
10462         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
10463         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
10464
10465         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
10466         function. Dummy implementation at this point.
10467
10468         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
10469         rules. Undefine GTK_COMPILATION when compiling the test programs.
10470         
10471         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
10472
10473 2000-08-11  Tor Lillqvist  <tml@iki.fi>
10474
10475         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
10476         to convert back and forth from UTF-8 and the "system" (or "current
10477         locale") charset when necessary. Indentation/spacing cleanup.
10478
10479 2000-08-10  Havoc Pennington  <hp@redhat.com>
10480
10481         * Makefile.am (snapshot): Change the format of the snapshot
10482         version to match glib
10483
10484         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
10485         from EXTRA_DIST since it doesn't seem to exist
10486
10487 2000-08-10  Tor Lillqvist  <tml@iki.fi>
10488
10489         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
10490         version of the directory name (not the UTF-8 one) when building
10491         the path name to stat().
10492
10493 2000-08-03  Elliot Lee  <sopwith@redhat.com>
10494
10495         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
10496         PANGO_ATTR_SHAPE set.
10497
10498 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
10499
10500         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
10501         Peter Osterlund to simplify the code while keeping the
10502         functionality the same.
10503
10504 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
10505
10506         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
10507         is_viewable() test further inside the function, since removing the 
10508         window from the redraw list without clearing ->update_area
10509         was also very broken.
10510
10511 2000-08-02  Tor Lillqvist  <tml@iki.fi>
10512
10513         * configure.in: Check for <unistd.h>.
10514
10515 2000-08-01  Martin Baulig  <baulig@suse.de>
10516
10517         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
10518         to display the message that this is a development version of GTK+.
10519
10520 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
10521
10522         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
10523         was depending on widget->allocation instead of the width of text_area,
10524         which was incorrect for subclasses like GtkSpinButton.
10525
10526         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
10527         with width == 1 tests that should be width == -1.
10528
10529 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
10530
10531         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
10532         (broken, Elliot, every single window blank on X) custom code with call
10533         to gdk_window_is_viewable() which a) prevents code duplicate and
10534         b) works. 
10535
10536 2000-07-31  Elliot Lee  <sopwith@redhat.com>
10537
10538         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
10539         to get the GDK_PARENT_ROOT() macro to work.
10540         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
10541         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
10542         of, windows that aren't shown.
10543         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
10544         pointer grab stuff.
10545
10546 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
10547
10548         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
10549           s/gtk_main_iteration/g_main_iteration/
10550
10551           Did this already in change:
10552                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
10553           don't know how it got reverted.
10554
10555 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
10556
10557         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
10558         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
10559
10560         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
10561         not gdk_pixbuf.
10562
10563 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
10564
10565         * configure.in,po/{sp,sr}.po: Added Serbian files
10566
10567 2000-07-30  Tor Lillqvist  <tml@iki.fi>
10568
10569         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
10570
10571         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
10572         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
10573         GIOChannel implementation.
10574
10575         * gdk/win32/gdkinput.c
10576         * gdk/win32/gdkpango-win32.c: Update license name here, too.
10577
10578         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
10579         definition to match prototype.
10580
10581         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
10582
10583 2000-07-27  Elliot Lee  <sopwith@redhat.com>
10584
10585         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
10586         function, to allow handling image formats that cannot be detected
10587         by looking at content alone.
10588
10589 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
10590
10591         * docs/tutorial/*.gif *.jpg *.eps
10592           Update these to the same look-n-feel.
10593           Why does including images in DocBook suck so badly?
10594
10595 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
10596
10597         * gtk/gtktable.c: applied patch from Phil Thompson
10598         <phil@river-bank.demon.co.uk> that enables space settings for
10599         the last row/columns as well.
10600
10601 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
10602
10603         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
10604         updates the license headers to the GNU Lesser General Public License,
10605         as well as updating the copyright year to 2000.
10606
10607 2000-07-26  Robert Brady  <rwb197@zepler.org>
10608
10609         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
10610           and po/Makefile, was installing and looking for them under gtk20
10611           and gtk2 respectively.
10612
10613 2000-07-25  Havoc Pennington  <hp@redhat.com>
10614
10615         * gtk/testtext.c: Comment out some stuff that depends on the rest
10616         of my patches.
10617
10618 2000-07-25  Havoc Pennington  <hp@redhat.com>
10619
10620         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
10621         buffer
10622
10623 2000-07-25  Havoc Pennington  <hp@redhat.com>
10624
10625         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
10626         widget changes.
10627
10628         * gtk/gtktextview.h: To be consistent with usage of "line"
10629         throughout the API to mean "newline-terminated thingy", change
10630         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
10631         to MOVEMENT_LINE.
10632
10633         (GtkTextView): Add flags for default editability, and whether to
10634         show the cursor. Add functions to get/set that. Add 
10635
10636         (gtk_text_view_get_iter_location): new function
10637
10638         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
10639         gtktextlayout.h
10640         (g_convert): Add g_convert temporarily, will go in glib in a bit
10641         
10642         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
10643         GtkTextTagTableForeach instead of brokenly using GHFunc.
10644         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
10645
10646         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
10647         moved to public header.
10648
10649         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
10650         "invisible", since "elide" was a bad name.
10651         (gtk_text_tag_get_priority): Added
10652
10653         (GtkTextStyleValues): put this in public header, along with
10654         functions to use it.
10655
10656         * gtk/gtktextmarkprivate.h: Include more headers, since we no
10657         longer include gtktextbtree.h.
10658
10659         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
10660         gtk_text_mark_deleted
10661
10662         * gtk/gtktextlayout.h: Don't include the "really private" headers,
10663         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
10664         to make this possible. Now we only need to install
10665         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
10666         (However the Makefile.am isn't changed yet because of the
10667         logistics of merging gtk-hp-patches piecemeal)
10668
10669         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
10670         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
10671         gtk_text_iter_get_line is now used in the public API for a
10672         different purpose.
10673
10674         * gtk/gtktextiter.h: Clean up function names to be more
10675         consistent. Always call char offset "offset" and byte index
10676         "index". A "line" is always a line number. 
10677
10678         (gtk_text_iter_is_last): new function, more efficient than 
10679         the existing way to check
10680         (gtk_text_iter_is_first): new function, also more efficient
10681
10682         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
10683
10684         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
10685         gtk_text_iter_forward_char, etc.
10686
10687         (gtk_text_iter_forward_to_tag_toggle): Renamed from
10688         forward_find_tag_toggle, since this isn't a linear search
10689
10690         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
10691
10692         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
10693         New functions, search for a buffer substring.
10694
10695         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
10696         interactive and default editable (since we need to store that info
10697         until we receive the selection data).
10698
10699         Remove all the _at_char and at_line etc. versions of functions;
10700         only have iterator versions.
10701
10702         Add _interactive() versions of functions, that consider the
10703         editability of text. (FIXME add interactive flag to the 
10704         insert/delete signals per Darin's suggestion)
10705
10706         (gtk_text_buffer_get_tag_table): new function, demand-creates the
10707         tag table if necessary
10708
10709         Remove declaration of gtk_text_buffer_get_iter_from_string
10710
10711         (_gtk_text_buffer_get_btree): private/internal function, added.
10712         
10713
10714         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
10715         (gtk_text_line_is_last): new function
10716
10717 2000-07-25  Havoc Pennington  <hp@redhat.com>
10718
10719         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
10720         using GtkProgressBar. See Changes-2.0.txt for details.
10721
10722         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
10723         "pulse_step" which are the equivalent of
10724         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
10725         Implement new API.
10726         
10727         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
10728         (use_text_format) to mark whether text set on the progress bar is
10729         a format string. Deprecate entire GtkProgress interface.
10730
10731         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
10732         (gtk_progress_build_string): make this a no-op if use_text_format
10733         is FALSE
10734
10735         * docs/Changes-2.0.txt: Describe progress bar changes.
10736
10737 2000-07-25  Tor Lillqvist  <tml@iki.fi>
10738
10739         * Makefile.am: Include the build directory.
10740
10741         * configure.in: Generate build/Makefile, build/win32/Makefile,
10742         gdk/, gdk/win32/, and gtk/makefile.mingw.
10743
10744         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
10745         Add GETTEXT_PACKAGE.
10746         
10747         * gdk/gdk.def
10748         * gtk/gtk.def: Updates.
10749
10750         * gdk/gdkfont.h
10751         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
10752         need them any longer.
10753
10754         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
10755
10756         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
10757         PANGOWIN32_LIBS and gdk_pixbuf.
10758
10759         * gdk/win32: Compiles, but no doubt doesn't work at all.
10760
10761         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
10762
10763         * gdk/win32/gdkinput.c: New file, temporarily.
10764         
10765         * gdk/win32/gdkinput-win32.h: New file
10766
10767         * gdk/win32/gdkinputprivate.h: Remove.
10768
10769         * gdk/win32/gdkpango-win32.c: New file.
10770
10771         * gtk/makefile.mingw.in: New file
10772
10773         * gtk/makefile.cygwin: Removed
10774         
10775         * gtk/Makefile.am: Update accordingly.
10776
10777         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
10778         made externally visible.
10779
10780         * gtk/gtkmain.c: Use it.
10781         
10782         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
10783         is enough.
10784
10785         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
10786
10787 2000-07-24 Elliot Lee <sopwith@redhat.com>
10788         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
10789         individual backends already.
10790         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
10791         again. Yes, there really is a good reason for this, if you are using the gdkregion
10792         internals, and if you're not, why do you care?
10793         * gdk/gdkwindow.c: Fix inverted condition
10794         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
10795         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
10796         * gtk/gtkrange.c: Redraw trough when moving.
10797         * gtk/gtktypeutils.c: Fix warning by adding const cast.
10798         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
10799
10800 2000-07-23  Tor Lillqvist  <tml@iki.fi>
10801
10802         * configure.in: Check for mkstemp and sigsetjmp. Output
10803         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
10804
10805         More work on GDK for Win32. Still in an intermediate state.
10806
10807         * gdk/makefile.cygwin
10808         * gdk/win32/makefile.cygwin: Removed.
10809         
10810         * gdk/makefile.mingw.in
10811         * gdk/win32/makefile.mingw.in: New files.
10812
10813         * gdk/Makefile.am
10814         * gdk/win32/Makefile.am: Generate and distribute them.
10815
10816         * gdk/win32/gdkwindow-win32.h
10817         * gdk/win32/gdkdrawable-win32.h
10818         * gdk/win32/gdkpixmap-win32.h: New files.
10819
10820         * gdk/win32/gdkcolor-win32.c
10821         * gdk/win32/gdkcursor-win32.c
10822         * gdk/win32/gdkdrawable-win32.c
10823         * gdk/win32/gdkgc-win32.c
10824         * gdk/win32/gdkimage-win32.c
10825         * gdk/win32/gdkprivate-win32.h
10826         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
10827         Rename fields and variables called xcursor, xid, etc (these names
10828         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
10829
10830 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
10831
10832         * gtk/gtkentry.[ch]: Fix some problems with vertical
10833         alignment.
10834
10835         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
10836         char/byte confusion.
10837
10838 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
10839
10840         * gtk/gtktextview.c (changed_handler): Fix bug where
10841         redraw wasn't being done properly when height of
10842         dirty region changed.
10843
10844         * demos/Makefile.am: Remove various references to
10845         -lgmodule
10846
10847 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
10848
10849         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
10850         PangoAttrShape to reserve space for pixmaps, add 
10851         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
10852         in the display functions.
10853         
10854         * gtk/testgtk.c (create_layout): Set some more exotic
10855         scrolled window options
10856
10857         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
10858         Add function to set the shadow type of a window, to allow
10859         putting a shadow around widgets such as GtkLayout or GnomeCanvas
10860         which don't draw their own frame.
10861
10862 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
10863
10864         * docs/tutorial/package-db-tutorial.sh: New file for
10865           packaging DocBook format tutorial
10866
10867 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
10868
10869         * docs/tutorial/gtk-tut.sgml: Minor updates
10870
10871         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
10872
10873 2000-07-19  Tor Lillqvist  <tml@iki.fi>
10874
10875         * gtk/gtksignal.c: Fix C++ comment.
10876
10877         * gtk/gtkimmulticontext.c
10878         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
10879         don't return value from void functions.
10880
10881         * gtk/gtk.def: Add gtk_rc_style_unref.
10882
10883 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10884
10885         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
10886         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
10887         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
10888         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
10889         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
10890         gtk/gtktypeutils.h: Include files outside of the extern "C"
10891         block. Makes some C++ compiler happy. Reported by Denis Vakatov
10892         <vakatov@peony.nlm.nih.gov>.
10893
10894 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
10895
10896         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
10897           Completes first pass. Hurrah!
10898
10899 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
10900
10901         * docs/tutorial/gtk-tut.sgml: More clean ups.
10902
10903 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
10904
10905         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
10906         paint the background of the text area which was accidentally
10907         removed at some point.
10908
10909         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
10910           
10911          - Move most of the functionality from the theme vtable
10912            into GtkRcStyleClass and GtkStyleClass. The moved
10913            vtable functions were changed a bit in the move to
10914            work better in their new home.
10915
10916          - Get rid of the engine and engine_data fields from
10917            GtkRcStyle and GtkStyle; instead the theme
10918            engine derives theme-specific subclasses of GtkRcStyle
10919            and GtkStyle
10920
10921          - Add extra dlsym() found entry point to themes,
10922            theme_create_rc_style().
10923
10924         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
10925         in gtk_style_real_copy.
10926
10927         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
10928         to register a type associated with an engine. (The engine
10929         won't be unloaded as there is an instance of the type.)
10930
10931
10932 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
10933
10934         * docs/tutorial/gtk-tut.sgml: Clean ups.
10935
10936 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
10937
10938         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
10939           of cleaning up to do.
10940
10941 2000-07-15  Tor Lillqvist  <tml@iki.fi>
10942
10943         * gdk/testgdk.c: New file, quick hack to test backends for
10944         pixel-by-pixel correctness of the most simple graphic operations.
10945
10946 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
10947
10948         * Really release 1.3.1
10949         
10950         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
10951         include structure.
10952
10953 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
10954
10955         * Released 1.3.1
10956
10957 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
10958
10959         * gtk/gtktextlayout.c: use FALSE for size_only most
10960         of the time when calling gtk_text_layout_get_line_display()
10961         to avoid causing double reshapes when a redraw follows
10962         immediately after.
10963
10964 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
10965
10966         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
10967         appropriate region and gdk_window_process_updates() so trough
10968         updating doesn't lag behind the window being scrolled.
10969
10970         * gdk/gdkgc.c: Make parent_class pointer static.
10971          
10972 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
10973
10974         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
10975         include <string.h>.
10976          
10977         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
10978         cut-and-paste error in computing memory offset for 4 channels.
10979
10980 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
10981
10982         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
10983         gtk_rc_append_default_pixmap_path(), since it wasn't
10984         adding an interesting path and we don't have a meaningful
10985         default for this value.
10986
10987 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
10988
10989         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
10990         gtk-config to gtk-config-2.0 move gtk_.m4 to
10991         gtk-2.0.m4
10992
10993         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
10994         gdk/Makefile.am demos/Makefile.am: Change 
10995         library names to libgtk-1.3.la, etc, so that we
10996         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
10997
10998         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
10999         gdk/Makefile.am gdk/x11/Makfile.am
11000         Move include files into /usr/include/gtk-2.0, 
11001         /usr/lib/gtk-2.0/include/
11002          
11003         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
11004         gtk/gtkintl.h: Change package for gettext from 
11005         gtk+ to gtk20. Put hack in autogen.sh to modify
11006         po/Makefile.in.in after gettextize to make this
11007         possible.
11008
11009         * gtk+.spec: Some updates, not tested.
11010
11011         * gdk-pixbuf/Makefile.am: Move loaders into
11012         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
11013
11014         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
11015         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
11016         to THEMENAME/gtk-2.0/. Move engine directory  to
11017         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
11018         
11019 2000-07-12  Tor Lillqvist  <tml@iki.fi>
11020
11021         Win32 changes, still doesn't build though.
11022
11023         * gdk/makefile.cygwin
11024         * gdk/win32/makefile.cygwin
11025         * gtk/makefile.cygwin: Updates.
11026
11027         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
11028         default values for fg and bg pixel as X11 does (0 and 1), not
11029         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
11030         Use 0 for pen width by default (treated as 1 anyway later, but for
11031         apps that might check the value in the GdkGC).
11032         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
11033         interface to gdk_gc_predraw and _postdraw.
11034
11035         * gdk/win32/gdkwin32.h
11036         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
11037
11038         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
11039         extraneous semicolon.
11040
11041         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
11042
11043         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
11044         not the Win32 bitspixel value.
11045
11046         * gdk/win32/gdkcc-win32.c:
11047         * gdk/win32/gdkcolor-win32.c 
11048         * gdk/win32/gdkprivate-win32.h
11049         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
11050         GDK object structure.
11051
11052 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
11053
11054         * docs/tutorial/gtk_tut_12.es.sgml (name): 
11055         * docs/tutorial/gtk_tut_it.sgml (name): 
11056         * docs/tutorial/gtk_tut_fr.sgml (name): 
11057         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
11058         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
11059
11060 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
11061
11062         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
11063           small changes.
11064
11065 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
11066
11067         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
11068         a bug here, never been here and never fixed anything ;(
11069         (don't segfault if tree->root_tree is NULL, which happens prior
11070         to widget realization, but puke instead).
11071
11072 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
11073
11074         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
11075         add the necessary tokens.
11076
11077         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
11078         (gtk_rc_style_to_style): copy thicknesses.
11079         (gtk_rc_init_style): apply thicknesses.
11080         (gtk_rc_parse_style): parse xthickness and ythickness.
11081
11082         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
11083
11084         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
11085         (gdk_window_new): 
11086         (_gdk_windowing_window_init): 
11087         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
11088         (gdk_pixmap_create_from_data): 
11089         (gdk_bitmap_create_from_data): 
11090         (gdk_pixmap_new): 
11091         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11092         (gdk_image_new): 
11093         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
11094         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
11095         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
11096         (gdk_colormap_get_system): 
11097         (gdk_colormap_new): 
11098         * gdk/gdkwindow.c (gdk_window_init): 
11099         * gtk/gtkstyle.c (gtk_style_new):
11100         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
11101         * gdk/gdkpixmap.c (gdk_pixmap_init): 
11102         * gtk/gtkrc.c (gtk_rc_style_new):
11103         use g_object_new() instead of g_type_create_instance() which
11104         is a private function for fundamental type implementations.
11105
11106 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
11107
11108         * configure.in: Add check for db2html
11109
11110 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
11111
11112         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
11113         hack to set glib_debug_objects based on gtk_debug_flags.
11114
11115 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
11116
11117         * INSTALL.in: Update the Prerequisites section.
11118
11119         * Makefile.am demos/Makefile.am docs/Makefile.am
11120         docs/tutorial/Makefile.am gdk/x11/Makefile.am
11121         gdk/linux-fb/Makefile.am: Dist fixes
11122
11123 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
11124
11125         * NEWS: 10,000 foot view of 1.3.1 changes.
11126
11127 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
11128
11129         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
11130         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
11131         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
11132         gdk/x11/gdkmain-x11.c: 
11133
11134         Patch from George Lebl to add a GdkGrabStatus enumeration to use
11135         as a return value of gdk_*_grab(). Previously, we just
11136         returned the X11 values directly.
11137
11138 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
11139
11140         * gdk/x11/Makefile.am: Patch from George Lebl to 
11141         install all the headers in the right place.
11142
11143 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
11144
11145         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
11146           initial conversion to DocBook.
11147
11148 2000-07-04  Tor Lillqvist  <tml@iki.fi>
11149
11150         * README.win32: Improve a bit.
11151
11152         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
11153         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
11154         Alt+0nnn on the numpad (used to enter characters by numeric code
11155         from current DOS or ANSI codepage) working correctly, as in other
11156         Windows apps.
11157
11158         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
11159         same argument validity tests as in X11 version.
11160         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
11161
11162         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
11163         definitions in case missing from headers.
11164
11165         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
11166         destroy the window-specific cursor.
11167         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
11168         calling GetModuleHandle(NULL).
11169         (gdk_window_set_cursor): Reworked to always copy the passed cursor
11170         with CopyCursor before setting it as the window-specific
11171         cursor. It is OK for the caller to destroy the GdkCursor (and thus
11172         also its Windows cursor) after calling this function. Destroy any
11173         previous window-specific cursor.
11174
11175 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
11176
11177         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
11178         font charset is iso8859-1, not iso-8859-1.
11179
11180 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
11181
11182         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
11183         Use g_get_charset() instead of g_get_codeset().
11184
11185         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
11186         Comment out some strdup'ing functions to keep timj
11187         happy until we finish fighting this out.
11188
11189 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
11190
11191         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
11192         <= width or height.
11193
11194         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
11195         from 1.2 for parent/child states.
11196
11197         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
11198         of typos.
11199
11200         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
11201         event structures, replace with a generic axes field. Replace 
11202         deviceid/sourec with GdkDevice *device.
11203
11204         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
11205         to extract particular axis use value from event. (Also
11206         can be used for normal X/Y.)
11207
11208         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
11209         allow for arbitrary number of axes, namespace everything
11210         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
11211         everywhere.
11212
11213         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
11214         Get rid of the gdk_input_vtable setup if favor of simply
11215         defining the functions in gdkinput-none/gxi/xfree.c in
11216         a similar fashion to the way that the port structure is 
11217         done.
11218
11219         * gtk/gtkdnd.c: Fix fields of synthesized button press event
11220         for new event structures. 
11221
11222         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
11223         new device interfaces.
11224
11225 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
11226
11227         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
11228         set the initial text.
11229
11230         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
11231         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
11232         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
11233         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
11234
11235         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11236         pango_layout_set_font_description to simplify.
11237
11238 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
11239
11240         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11241         pango_layout_set_font_description to simplify.
11242
11243 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
11244
11245         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
11246         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
11247         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
11248
11249         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
11250         PANGO_PIXELS() macro.
11251
11252 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
11253
11254         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
11255         that returns a PangoContext owned by the widget and updated to
11256         match future changes in the widget. Also, make 
11257         gtk_widget_create_pango_layout() use this context. If we ever
11258         add a ::changed signal to PangoContext, this will make things
11259         much more convenient. 
11260
11261         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
11262         in the appropriate places instead of destroying the layouts and
11263         creating new ones.
11264
11265         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
11266         in a few strategic places.
11267
11268 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
11269
11270         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
11271         gtk_widget_size_request() on reparented child, if one. Otherwise,
11272         queue_resize() on the child never results in it getting size-requested
11273         at all.
11274
11275         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
11276         in option menus, so that (with luck) people won't copy it into
11277         their apps in the future.
11278
11279         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
11280         to gtk_option_menu_calc_size. This isn't perfect, but should fix
11281         a lot of problems with changing the size of the menu's menu
11282         items after adding it to the option menu.
11283
11284         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
11285
11286         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
11287         the text direction for a widget changes.
11288
11289         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
11290         ::direction_changed to get rid of various hacks.
11291
11292 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
11293
11294         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
11295         name.
11296
11297 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
11298
11299         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
11300         flag to the structure. Do not call XFreePixmap on pixmaps created
11301         by gdk_pixmap_foreign_new().
11302
11303 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
11304
11305         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
11306         value using GdkRGB functionality given GdkColormap and GdkColor.
11307         (name not final, waiting for inspiration.)
11308         
11309         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
11310         set the foreground/background of a GC using the GC's colormap
11311         and GdkRGB. (name not final, waiting for inspiration.)
11312
11313         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
11314         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
11315
11316         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
11317         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
11318         purely a function of the corresponding colormap. Make
11319         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
11320
11321         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
11322         gdk_pixbuf_*create_from_xpm_* in terms of
11323         gdk_pixbuf_new_from_xpm_data(), move into platform independent
11324         code.
11325
11326         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
11327         advantage of the new draw_rgb_32_image_dithalign.
11328
11329         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
11330
11331         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
11332         on each created GC.
11333
11334         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
11335
11336         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
11337         which we initialize from the drawable when the GC is created,
11338         if the drawable has a colormap.
11339
11340         * gdk/x11/gdkgc-x11.c: include string.h for memset.
11341
11342         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
11343
11344         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
11345
11346 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
11347
11348         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
11349         actually returning expose events, make sure to set
11350         the count field properly.
11351
11352         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
11353         accidentally reintroced bug which always cleared
11354         the graphics_exposures value. 
11355
11356 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
11357
11358         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
11359
11360 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
11361
11362         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
11363
11364 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
11365
11366         * docs/faq/gtk-faq.sgml: Start of Section 6.
11367
11368 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
11369
11370         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
11371         
11372         (Fixes problem with drawing childless frames. Pointed out
11373         by and a first patch from Anders)
11374         
11375         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
11376         compute a child_allocation, even if we don't have a child.
11377
11378         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
11379         Always chain to the parent's impl, even if we don't have a child.
11380
11381 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11382
11383         * gdk/gdkrgb.c: If possible, create only a single shm segment and
11384         use multiple parts of it instead of creating a bunch of separate
11385         segments, since the maximum number of segments per system is not
11386         large. (This might be worth backporting to GTK+-1.2.x if we make a
11387         new release )
11388
11389         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
11390         structure in preparation for per-colormap GdkRGB.
11391
11392         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
11393         to False when we get EINVAL from shmget so that the caller of
11394         gdk_image_new can retry with a smaller segment size.
11395
11396 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
11397
11398         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
11399
11400 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
11401
11402         * configure.in: make the current version number 1.3.1 (binary age 0,
11403         interface age 0).
11404         
11405         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
11406         gtkcompat.h is all we want.
11407
11408         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
11409         GLib primitive types. fixed g_type_register_fundamental() argument
11410         ordering.
11411
11412         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
11413         compiles.
11414
11415         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
11416         object code cleanup, comment trigraph fixes, etc...
11417
11418 2000-06-23  Havoc Pennington  <hp@redhat.com>
11419
11420         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
11421         instead of making up a bogus name for first_para_mark
11422
11423         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
11424         0 as a context ID
11425
11426 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
11427
11428         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
11429
11430 2000-06-21  Havoc Pennington  <hp@pobox.com>
11431
11432         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
11433         we didn't check window->bg_pixmap != GDK_NO_BG.
11434
11435         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
11436         gdk-pixbuf
11437
11438 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
11439
11440         * docs/faq/gtk-faq.sgm: Move file to here.
11441           TODO: Update Makfile.am 
11442
11443 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
11444
11445         * docs/gtk-faq.sgm: Add Section 2
11446
11447 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
11448
11449         * docs/gtk-faq.sgm: New file. Start of DocBook
11450           version of the FAQ.
11451
11452 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
11453
11454         * configure.in (GDK_PIXBUF_MAJOR): Define version
11455         numbers for GDK_PIXBUF_*, as they get substituted
11456         into a header file. Need to consider versioning
11457         for gdk-pixbuf more carefully later.
11458
11459 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
11460
11461         Work with srcdir != builddir.   
11462         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
11463         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
11464         * demos/testpixbuf.c: Likewise.
11465         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
11466         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
11467         <gdk/x11/gdkx.h>.
11468         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
11469         "gdk-pixbuf.h".
11470         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
11471
11472 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
11473
11474         * TODO.xml: Change 1.4 version numbers to 2.0.
11475
11476 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
11477
11478         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
11479         fixups to GTK+ standard.
11480
11481 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
11482
11483         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
11484         gdk-pixbuf.
11485
11486         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
11487         fixups for GObject.
11488
11489         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
11490         gdk-pixbuf with GDK dependencies moved into GDK.
11491         
11492         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
11493         move gdk-pixbuf-loader here until GObject has signals.
11494
11495         * demos/: New directory of demos. Move demos from
11496         gdk-pixbuf here.
11497
11498         * demos/pixbuf-init.c: Small bit of code to check for
11499         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
11500         set GDK_PIXBUF_MODULEDIR appropriately.
11501
11502         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
11503         define which no longer makes sense.
11504
11505 2000-06-21  Havoc Pennington  <hp@redhat.com>
11506
11507         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
11508         gtk_get_default_language
11509
11510         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
11511         new function to get the default language
11512
11513         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
11514         s/gtk_text_view_style_values/gtk_text_style_values/
11515
11516         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
11517         Add a "language" field to tags.
11518
11519         (gtk_text_tag_set_arg): Fix bug in setting
11520         "bg_full_height_set" tag.
11521
11522 2000-06-21  Havoc Pennington  <hp@redhat.com>
11523
11524         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
11525         in the interfaces
11526
11527         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
11528         stuff instead when possible.
11529
11530         * gtk/gtktexttypes.h: Delete some unused constants
11531
11532         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
11533         testtextbuffer.c: use glib instead of custom unicode routines
11534
11535 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
11536
11537         * docs/es/: Removed mistakenly added generated sgml
11538
11539         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
11540         Remove outdated info files.
11541
11542         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
11543         Moved tutorial files into subdir
11544
11545         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
11546         subdir.
11547
11548         * docs/man/gtk_button.pod: Remove. (contents will be
11549         integrated into gtk-reference button page.)
11550
11551         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
11552         docs/faq/Makefile.am: Adjust for new organization
11553
11554 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
11555
11556         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
11557         not $(MKINSTALLDIRS)
11558
11559 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
11560
11561         * gtk/testgtk.c (create_text): Finish the job Elliot started
11562         of removing font setting test for text widget. (Since text widget
11563         and GdkFont are not deprecated, and cause portability problems.)
11564
11565 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
11566
11567         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
11568         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
11569         Remove use of libunicode in favor of new GLib functions.
11570
11571         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
11572         nano-x, framebuffer. The X11 include is just a hack until we get
11573         the necessary functions in gdkcolor.h, so there is no reason to
11574         add other includes of platforms.
11575
11576         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
11577         window bigger than the screen change.
11578
11579         * gtk/testgtk.c: Revert some random changes from Elliot
11580         that had no particular point and were causing testgtkrc
11581         not to function correctly.
11582         
11583         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
11584         because GdkSegment and GdkRegionBox have the same fields,
11585         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
11586         results in clearer code.
11587
11588         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
11589         gdk_input_translate_coordinates): Fix missed GdkObjectification
11590
11591 2000-06-18  Elliot Lee  <sopwith@redhat.com>
11592
11593         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
11594         * gtk/gtk{plug,socket}.h: Missed commits from previous.
11595
11596 2000-06-20  Havoc Pennington  <hp@redhat.com>
11597
11598         * modules/linux-fb/Makefile.am: Make this compile
11599         without framebuffer enabled
11600
11601         * gdk/linux-fb/Makefile.am: Add conditional to not build
11602         framebuffer unless specified in configure
11603
11604         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
11605         the size of the target instead of source if -1 was passed for
11606         width/height
11607
11608         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
11609         width/height confusion.
11610
11611 2000-06-19  Havoc Pennington  <hp@redhat.com>
11612
11613         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
11614         GDK_DRAWABLE_XID. In the future, we probably want to make it
11615         faster with G_DISABLE_CHECKS turned on.
11616
11617 2000-06-14  Havoc Pennington  <hp@redhat.com>
11618
11619         * gdk/Makefile.am: add gdkpixmap.c
11620
11621         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
11622         s/gdk_image_init/_gdk_windowing_image_init
11623
11624         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
11625         ref/unref
11626
11627         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
11628
11629         * gdk/gdkcompat.h: remove GdkWindowType compat, since
11630         GdkWindowType is now non-deprecated; 
11631         change gdk_window_get_type() compat to be
11632         gdk_window_get_window_type().
11633
11634         * gdk/gdkdnd.h: make GdkDragContext a GObject.
11635
11636         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
11637         virtual GObject. Make all functions call into the vtable.
11638         Move gdk_image_put() guts in here. Remove GdkDrawableType
11639         and gdk_drawable_get_type(), these are now GdkWindow-specific.
11640         draw_image, get_depth, get_size, set_colormap, get_colormap,
11641         get_visual added to the vtable.
11642         
11643         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
11644         GObject. Virtualize everything. 
11645         (gdk_gc_new_with_values): remove check for destroyed window,
11646         because now GdkWindow::create_gc will check this.
11647         (gdk_gc_set_values): New function to set GC values, this 
11648         was already implemented but wasn't in the header
11649
11650         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
11651
11652         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
11653         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
11654         remove _gdk_window_class; add _gdk_window_impl_get_type() and
11655         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
11656         _gdk_windowing_window_init, rename gdk_image_init to
11657         _gdk_windowing_image_init.
11658         
11659         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
11660         (gdk_draw_layout): Remove check for destroyed window, 
11661         because all the drawable methods already check it.
11662         
11663         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
11664         Add gdkpixmap.c which contains implementation of GdkDrawable
11665         virtual table (by chaining to a platform-specific implementation
11666         object).
11667         
11668         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
11669         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
11670         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
11671         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
11672         GdkColormapPrivate. 
11673
11674         * gdk/gdktypes.h: #include <glib-object.h>
11675
11676         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
11677         Move most functionality to platform-specific implementation
11678         object. GdkWindow itself now handles the backing store, then
11679         chains to the platform-specific implementation.
11680         (gdk_window_get_window_type): return GdkWindowType of the window.
11681         (gdk_window_peek_children): New routine, returns the children of 
11682         a GdkWindow
11683         (gdk_window_get_children): Was in X11-specific code and did 
11684         XQueryTree. Changed to simply return a copy of window->children; 
11685         so it can go in cross-platform code.
11686         
11687         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
11688
11689         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
11690         GdkColormap; just changed to use the new private data instead
11691         of casting to GdkColormapPrivate.
11692
11693         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
11694         gdk_cursor_new().
11695
11696         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
11697         (private data member in the GObject). 
11698         (xdnd_manager_source_filter): Function had broken 
11699         error handling, fix it (use gdk_error_trap_push).
11700
11701         * gdk/x11/gdkdrawable-x11.c: This file now implements
11702         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
11703         base class is purely for the convenience of the X port,
11704         and not part of the interface to cross-platform GDK.
11705
11706         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
11707         
11708         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
11709         specific to X, and returned by the create_gc virtual method
11710         of GdkDrawableImplX11. 
11711         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
11712         rather than gchar, this was also changed in the GdkGC vtable.
11713         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
11714         mask is 0, return immediately, instead of checking every flag.
11715         This is faster, and keeps us from segfaulting if values is NULL
11716         and the mask contains some nonzero flags.
11717
11718         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
11719         GdkWindow.
11720
11721         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
11722         GdkWindowPrivate is gone.
11723
11724         * gdk/x11/gdkim-x11.c: rename things that got renamed.
11725
11726         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
11727         remove the image_put stuff that got transferred to GdkDrawable.
11728         
11729         * gdk/x11/gdkinput.c: renamings
11730
11731         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
11732
11733         * gdk/x11/gdkpixmap-x11.c: GObject conversion
11734
11735         * gdk/x11/gdkprivate-x11.h: indentation fixes
11736
11737         * gdk/x11/gdkproperty-x11.c: renamings
11738
11739         * gdk/x11/gdkselection-x11.c: renamings
11740
11741         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
11742         implements the platform-specific "impl" object.
11743         Moved gdk_window_get_children to gdk/gdkwindow.c
11744
11745         * gdk/x11/gdkx.h: Remove all the private structs and private datas
11746         that no longer exist. Add declaration of GdkGCX11 object here.
11747         Fix all the macros to still work. 
11748
11749         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
11750         GdkDragContext from the boxed types since they are now GObjects.
11751
11752         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
11753         moved xthickness/ythickness into the instance. GtkStyleClass
11754         functions are now in the standard vtable for GtkStyle, so you have
11755         to create a GObject subclass to write a theme engine.
11756         (gtk_style_copy): fixed a leaked PangoFontDescription
11757         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
11758         can be the standard GObject function.
11759         
11760         * Throughout GTK:
11761         s/style->klass->[xy]thickness/style->[xy]thickness
11762         s/pango_layout_unref/g_object_unref/
11763
11764         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
11765         
11766         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
11767         accessing GDK internals.
11768
11769         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
11770         accessing GDK internals.
11771
11772 2000-06-18  Elliot Lee  <sopwith@redhat.com>
11773
11774         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
11775
11776         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
11777         problem by calculating event position relative to the trough
11778         rather than the slider.
11779         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
11780
11781         * gdk/gdkgc.h: Add GDK_NOR.
11782
11783         * configure.in, Makefile.am: Add modules top level dir
11784         * configure.in: Only use pangox library if building x11 target.
11785         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
11786
11787 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
11788
11789         * gtk/gtkcolorsel.c: Change private class member to be named
11790         private_data throughout the file.
11791
11792         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
11793         private_data to avoid clashing with keyword.
11794
11795 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
11796
11797         * gdk/gdkdnd.h: Add comment to remove warning.
11798
11799 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
11800
11801         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
11802         Byelorussian language; changed the Makefile and file names 
11803         to reflect that.
11804
11805 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
11806
11807         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
11808         rather than gdk_window_hide; this makes things work
11809         correctly if the window is programmatically hidden while
11810         iconified.
11811
11812 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
11813
11814         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
11815         cut and paste typo where wrong pixmap was being
11816         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
11817
11818 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
11819
11820         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
11821         Add helper function to compute format / bytes 
11822         relationship. Use in a couple places to fix up
11823         errors which assume 8 * format.
11824
11825         * gtk/gtkselection.c (gtk_selection_request): Use 32
11826         rather than 8 * sizeof (GdkAtom), to work correctly
11827         on Alpha.
11828
11829 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
11830
11831         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
11832         libgtk.la
11833         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
11834         versions
11835
11836         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
11837         checking macros return NULL since the function has a return value.
11838
11839 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
11840
11841         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
11842         GTK+ from building at all.
11843
11844         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
11845
11846 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
11847
11848         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
11849         gtk/Makefile.am: make it possible to configure gtk for different
11850         targets on the same platform. The library name is now 
11851         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
11852         flag. Only the x11 target compiles right now.
11853         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
11854         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
11855         * gdk/nanox/gdk*generic*: delete generic region code.
11856         * gdk/linux-fb/gdk*generic*: delete generic region code.
11857         * README.nanox: update information.
11858         
11859 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
11860
11861         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
11862         prepend not append. (Pointed out by Brett Hall.)
11863
11864 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
11865
11866         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
11867
11868 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
11869
11870         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
11871         need this later, and this makes sure that the atexit for
11872         glib gets called after that for GDK, so atexits are
11873         properly ordered for object leak checking.
11874
11875         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
11876
11877         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
11878         pango_x_shutdown_display()
11879
11880         * gtk/simple.c (main): Close window on destroy.
11881
11882 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
11883
11884         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
11885         to treat initial creation different from setting with 
11886         regards to the graphics-exposures parameter, so add a parameter
11887         indicating whether this is initial or not.
11888
11889 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
11890
11891         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
11892         to sort of work by adding an extra return_exposes arg
11893         to gdk_event_translate() - it might be better to simply
11894         deprecate the function altogether and force people to rewrite
11895         without it. gdk_window_scroll() handles most of it, and where
11896         gdk_window_scroll() doesn't work, simply redrawing more does.
11897
11898         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
11899         assertion.
11900
11901         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
11902
11903         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
11904         bunch of pretty much useless /* Print debugging info */ comments 
11905         which had drifted away from the code they were commenting.
11906
11907 2000-06-02  Havoc Pennington  <hp@pobox.com>
11908
11909         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
11910         is in working order.
11911         
11912         * gtk/testtext.c: Change to reflect anonymous mark API
11913
11914         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
11915
11916         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
11917         field, which was unused.
11918
11919         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
11920         saves some typing.
11921
11922         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
11923
11924         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
11925         flag on the insertion point and selection bound
11926
11927         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
11928         make mark-manipulation functions take a GtkTextMark* instead of a
11929         mark name.
11930         
11931         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
11932         GtkTextMarkBody; will be used to detect attempts to delete
11933         the permanent marks (insert and selection bound)
11934
11935         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
11936
11937 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
11938
11939         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
11940         flag to on.
11941
11942         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
11943         Honor DOUBLE_BUFFRED_FLAG
11944
11945         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
11946         function to set the DOUBLE_BUFFERED flag.
11947
11948         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
11949         or not exposes done on the widget should be double-buffered.
11950
11951         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
11952         to be what would be expected. (Fixes problem with a
11953         g_return_if_fail() validating a TextDirection enumeration)
11954
11955 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
11956
11957         * gtk/gtkwidget.c: Remove all references to 
11958         offscreen flag which was no longer used.
11959
11960         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
11961
11962         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
11963         for non-null label_widget->parent.
11964
11965         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
11966         which no longer was used.
11967
11968         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
11969
11970         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
11971         for null arguments.
11972
11973         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
11974         check for destroyed windows.
11975
11976 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
11977
11978         * gtk/gtkimmulticontext.c: Add a finalize method and unref
11979         the slave context there.
11980
11981         * gtk/gtkinvisible.[ch]: Make reference counting behavior
11982         identical to GtkWindow.
11983
11984 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
11985
11986         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
11987         pangox to here, so we can write them independent of rendering
11988         system, using GDK primitives.
11989
11990         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
11991         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
11992         since we have a rendering-system independent implementation in
11993         terms of draw_glyphs().
11994         
11995         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
11996         function to render a single line.
11997
11998         * gdk/x11/gdkpango.c: Move the guts of this file mostly
11999         into ../gdkpango.c, which simplifies things, since we
12000         don't have to deal with raw X gc's.
12001
12002 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
12003
12004         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
12005         get the logical attributes for a given GtkTextLine.
12006
12007 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
12008
12009         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
12010         g_locale_get_codeset() to g_get_codeset() change.
12011
12012 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
12013
12014         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
12015         descriptions.
12016
12017         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
12018         the entry.
12019
12020         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
12021         redoing (vastly simplifying) for Pango. Still needs quite
12022         a bit of work. (Size selection is currently poor. List of 
12023         predefined sizes is not a good idea, since all of these
12024         sizes won't necessarily be distinct.)
12025
12026 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
12027
12028         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
12029         CODESET results for LANG=C.
12030
12031 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
12032
12033         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
12034         which takes a stringized pango font description;
12035         ignore the older 'font' and 'fontset' declarations.
12036
12037         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
12038         field with a GdkFont derived via gdk_font_from_description(),
12039         for compatibility. (Should we just remove it entirely?
12040         Probably too much compatibility breakage, but people
12041         should be migrating to the new Pango stuff as quickly
12042         as possible.)
12043
12044 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
12045
12046         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
12047
12048 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
12049
12050         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
12051         redoing; there are some bugs in size allocation right
12052         now, the semi-existant distinction between header / day
12053         fonts was removed, but, with Pango, could actually
12054         be made functional in a nice way.
12055         
12056         * gtk/testcalender: Move calender from examples into this
12057         directory as a test program. (We really need to restrcture
12058         testgtk into a whole directory full of tests for every
12059         widget or functionality group, separated into multiple .c
12060         files.)
12061
12062 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
12063
12064         * gtk/testgtk.c (file_exists): Fix stupid typo that
12065         was keeping RC file from being loaded.
12066
12067         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
12068         RC file font code.
12069
12070 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
12071
12072         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
12073         Add function to load a GdkFont from a PangoFontDescription.
12074
12075 2000-05-29  Tor Lillqvist  <tml@iki.fi>
12076
12077         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
12078         variable should be of type GdkEventPrivate.
12079
12080 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
12081
12082         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
12083         to have any widget for the label, use a GtkLabel widget
12084         to display the text. (Based partially on a patch from
12085         Anders Carlson.)
12086
12087         (Quite a bit of code reorganization - strip 90% of the
12088         guts out of gtkaspectframe and add a single virtual
12089         func to GtkFrameClass - compute_child_allocation.)
12090
12091 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
12092
12093         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
12094         (Removed clist->row_center_offset field because caching
12095         it wasn't saving time or code, added private function
12096         _gtk_clist_create_cell_layout()).
12097
12098 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
12099
12100         * gtk/gtkaccellabel.c: Pangoized.
12101
12102         * gtk/[hv]ruler.c: Pangoized
12103
12104 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
12105
12106         * gtk/gtkfilesel.c (gtk_file_selection_init):
12107         Use gtk_clist_set_column_auto_resize() to remove need
12108         need for manual column width computations.
12109
12110 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
12111
12112         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
12113         ensuring Pango correctness, and considerably simplifying the
12114         code.
12115         
12116         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
12117
12118         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
12119         getting of numbers of lines.
12120
12121         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
12122         to the actual requested width of the lable, not to the wrap
12123         width we set.
12124
12125         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
12126
12127         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
12128           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
12129
12130         * gtk/gtktextview.c: Fix structure inheritance.
12131
12132         * gtk/gtkprogressbar.c: Pangoize.
12133
12134 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
12135
12136         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
12137         in a function.
12138
12139         * gtk/gtktextlayout.c (find_display_line_above): Fixed
12140         bug with computing line tops.
12141
12142         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
12143
12144 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12145
12146         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
12147         and y_offset coordinates to do what we need now. (The offset between
12148         buffer and layout coordinates has been reintroduced, but is a 
12149         bit different than before.)
12150
12151         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
12152         handle the adjustments ourselves, and scroll as necessary using
12153         the new gdk_window_scroll().
12154         
12155         The advantage of this is that when we are incrementally revalidating,
12156         we are essentially rearranging things around the visible portion
12157         of the screen. With the old setup, the visible portion of the
12158         screen was moved around in the layout, so scrolling and redrawing
12159         to track that caused jumping of the display. Since we now
12160         control the scrolling ourselves, we can suppress this and
12161         only redraw when things actually change.
12162
12163 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
12164
12165         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
12166         the region not just redisplay it after-all, since we store the
12167         cursors in the LineDisplay. (Ugly interactions here between
12168         GtkLayout and GtkTextBTree here.)
12169         
12170         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
12171
12172 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12173
12174         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
12175         Added function to scroll contents of a window while keeping the
12176         window constant. Works by XCopyArea or guffaw-scrolling depending
12177         on the details of how the window is set up. (guffaw-scrolling
12178         still needs to be filled in.)
12179
12180 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
12181
12182         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
12183         move the debugging that was tied to a global variable
12184         to that.
12185
12186         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
12187
12188         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
12189         validated flag, in line data instead of setting height/width to
12190         -1. This allows us to perform operations with partially invalid
12191         buffer (using the old size for invalid lines) and thus to do
12192         incremental vaidation. Keep height/width aggregates up to date
12193         when deleting text and rebalancing the tree.
12194
12195         * gtk/gtktextbtree.[ch]: Add functions validate a line
12196         (gtk_text_btree_validate_line), and to validate up
12197         to a number of pixels (gtk_text_btree_validate).
12198
12199         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
12200         that indicates that something is changed and a revalidation
12201         pass is needed. Change ::need_repaint to ::changed, and
12202         make it take old and new yranges instead of a rectangle.
12203
12204         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
12205         the line_data_destroy() function from 
12206         gtk_text_btree_add_view() to a virtual function in 
12207         GtkTextLayout
12208
12209         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
12210         since we are handling partial repaints in a different fashion
12211         now.
12212
12213         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
12214         of the selection instead of queueing a repaint on the
12215         entire widget.
12216
12217         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
12218         get_selection_bounds() down to btree, make the function
12219         in buffer a wrapper around the btree function.
12220
12221         * gtk/gtktextlayout.[ch]: Add functions to check if the
12222         layout is valid and to recompute either a range of pixels
12223         aroudn a line or a certain total number of pixels.
12224
12225         * gtk/gtktextlayout.[ch]: Cache a single line display;
12226         now that we only redraw the needed portions, the hit rate
12227         for this cache is quite high.
12228         
12229         * gtk/gtktextview.[ch]: Keep track of the first paragraph
12230         on the screen so that when re-laying-out the buffer, we can
12231         keep the same place. This requires connecting to ::value_changed
12232         on the adjustments
12233
12234         * gtk/gtktextview.[ch]: Add idle functions to revalidate
12235         the buffer after we receive an ::invalidated signal.
12236         
12237 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
12238
12239         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
12240         to max of allocation and layout size, not just to the
12241         layout size.
12242
12243         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
12244         Invalidate window so it gets redrawn properly.
12245
12246         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
12247         to mean the entire window.
12248
12249         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
12250         into public header.
12251
12252 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
12253
12254         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
12255         to get the name of a mark.
12256
12257         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
12258         to find the paragraph from a y position.
12259
12260 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
12261
12262         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
12263         nodes have width/height >= 0, not > 0.
12264
12265 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
12266
12267         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
12268         Add a size_only flag, so when we only need the size, we don't create
12269         useless appearance attributes.
12270
12271         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
12272         duplicate setting of font description.
12273
12274         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
12275
12276 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
12277
12278         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
12279         EXTRA_DIST. It does not work well when the file that
12280         everything depends on is not in the tarball.
12281
12282 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
12283
12284         * gtk/testgtk.c: Some hacks and fixes so that it basically
12285         works when not sitting in the GTK+ build tree.
12286
12287 2000-05-03  Havoc Pennington  <hp@redhat.com>
12288
12289         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12290         Properly determine the ordering of the tag root and the current
12291         line within the tree. Previous algorithm only worked if the tag
12292         root's immediate parent was the common root of both the current
12293         line and the tag root.
12294
12295 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
12296
12297         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
12298         alignment.
12299
12300         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
12301         the widget text directional dynamically.
12302
12303         * gtk/gtktextview.[ch]: Added functions to get and set default
12304         wrap mode.
12305
12306 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
12307
12308         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
12309         in cursor location computation.
12310
12311 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
12312
12313         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
12314         vadjusment values properly when layout gets smaller.
12315
12316         * gtk/gtktextview.c (need_repaint_handler): Areas being
12317         passed in are far completely inaccurate, and sometimes
12318         too small, so, for now, just queue a redraw on the
12319         whole visible region.
12320
12321 2000-04-25  Havoc Pennington  <hp@redhat.com>
12322
12323         * gtk/gtktextbtree.c (summary_destroy): new function to 
12324         destroy tag summary nodes
12325         (gtk_text_line_next_could_contain_tag): this function was 
12326         totally broken if the line passed in wasn't below the tag
12327         root. Fix it.
12328         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
12329         "wildcard" case, we have to do a linear scan. Blah.
12330         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
12331         we have to do the linear scan
12332         (tag_removed_cb): When a tag is removed from the tag table, 
12333         remove the GtkTextTagInfo node from the btree.
12334         (gtk_text_btree_spew): Implement the spew function, for 
12335         our debugging pleasure.
12336
12337 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
12338
12339         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
12340         a problem with referring to the wrong buffer.
12341
12342         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
12343
12344         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
12345         font description to gtk_style_new() - otherwise things
12346         don't work without a .gtkrc file.
12347
12348         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
12349         tags table if we create it ourself, too.
12350
12351         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
12352         it was conflicting with XKB modifiers.
12353
12354         * gtk/gtktextview.[ch]: Add simple support for 
12355         GtkIMContext.
12356
12357 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
12358
12359         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
12360         with deletion from last commit.
12361
12362 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
12363
12364         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
12365         in the context from the current locale.
12366         
12367         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
12368         context, not hardcoded value.
12369
12370         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
12371         not logical.
12372
12373 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12374
12375         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
12376         attributes - that doesn't handle partial-glyph selection
12377         properly. Instead use new pango_layout_line_get_x_ranges()
12378         functionality to draw the selection.
12379
12380         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
12381         now properly handles out-of-range coordinates.
12382
12383         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
12384
12385         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
12386         public.
12387
12388         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
12389         for paragraphs opposite to the base direction of the widget.
12390
12391         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
12392
12393         * gtk/gtktextlayout.c: Don't split segments on marks, since that
12394         causes Arabic words to reshape as you cursor through.
12395
12396         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
12397         cursor position when moving vertically with the arrow keys and
12398         scrolling with page-up/page-down. (Arrow keys save only the X,
12399         scrolling saves both X and Y.)
12400
12401         This means you can line-up / line-down or page-up / page-down
12402         without losing your place, and also that moving vertically
12403         with the cursor keys keeps the same X position, not the same
12404         character count:
12405
12406         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
12407         arrow keys move by display lines, not paragraphs.
12408
12409 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
12410
12411         * gtk/gtklayout.c: Make sure that the bin window is at least
12412         as big as the allocation. (Should we also make sure that the
12413         bin window is big enough to completely cover widget->window?)
12414
12415         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
12416         function to get the onscreen rectangle.
12417
12418         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
12419         for offsets in window coordinates.
12420
12421 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
12422
12423         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
12424         confusion.
12425
12426         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
12427         from the widget direction.
12428
12429         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
12430         Add a "direction" attribute.
12431
12432         * gtk/gtktextview.c: global s/tkxt/text_view/.
12433
12434         * gtk/testtext.c: Added long block of text in Arabic, to test out
12435         the direction attributes. (Some problems with the shaping system
12436         for arabic become obvious - like the fact the cursor splits words
12437         into unjoined pieces.)
12438
12439 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
12440
12441         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
12442
12443         * gtk/gtktextlayout.c: Fix up alignment.
12444
12445         * gtk/testtext.c: Add some tests for centering, wrapping.
12446
12447 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
12448
12449         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12450         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
12451         If we wrote GTK+-specific layout-render function this could just replace
12452         the draw_layout() operation in the vtable.
12453
12454         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
12455         pango_layout_get_cursor_pos() and use that function.
12456
12457         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
12458         is a non-static symbol.
12459
12460         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
12461         with gtk_text_btree_find_line_by_y()
12462
12463         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
12464         renderer that handles GtkTextAppearance attributes.
12465
12466         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
12467
12468           - Move the values in the style that don't affect geometry into a
12469             GtkTextAppearance structure.
12470           - Change underline to take a PangoUnderline and "font" a string
12471             representation of a font description
12472           - Add a "font_desc" attribute which takes a FontDescription structure.
12473
12474         * gtk/gtktextlayout.[ch]:
12475
12476           - Get rid of the display-line list per each line. Instead, we
12477             generate, on demand, a GtkTextLineDisplay structure which]
12478             contains a PangoLayout * and other necesary information
12479             (offsets, cursor locations) for displaying a paragraph.
12480           - Get rid of the code to wrap lines, create display chunks,
12481             etc. Instead, we just go through a paragraph and convert
12482             it into the necessary inputs to a PangoLayout.
12483           - Implement a new attribute type, GtkTextAttrAppearance. This
12484             holds a GtkTextAppearance, and is used to pass colors, 
12485             stipple, etc, through from the layout to the display without
12486             having to use lots and lots of individual attributes.
12487           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
12488             in terms of PangoLayout functions.
12489         
12490         * gtk/gtktextview.c: 
12491          
12492           - Handle passing the necessary PangoContext to the layout
12493           - Some fixups in painting to deal with the automatic backing store
12494             and offsetting of GTK+-1.4
12495           - Add a style_set handler so that the default style reacts
12496             properly to theme changes.
12497         
12498         * gtk/gtktext?*.[ch]: Random code-style fixes.
12499
12500         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
12501
12502 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
12503
12504         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
12505         in original form preparatory to Pango-ization and gdkimcontext-ization.
12506
12507 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
12508
12509         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
12510         so that we can derive from gtkimcontext in language bindings properly.
12511
12512 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
12513
12514         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
12515         Add a compose table including (almost) all the compose combinations
12516         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
12517         data in the XIM implementation.
12518
12519         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
12520         Moved functions to convert keyvalues from and to unicode here from
12521         the win32 port and made them public.
12522
12523 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12524
12525         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
12526
12527 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
12528
12529         * gtk/gtkimcontext.[ch]: Base class for new input context system
12530
12531         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
12532         the real input context implementation to be loaded from modules
12533         and switched on the fly.
12534
12535         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
12536         context that just does direct keysymbol => unicode translation.
12537
12538         * gtk/gtkentry.[ch]: Start switching editing over to using
12539         GtkInputContext. (No handling of preedit yet.)
12540
12541 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
12542
12543         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
12544         many substitutions. (klass should not be subsituted.)
12545
12546 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
12547
12548         * configure.in: Add checks for Pango
12549
12550         * configure.in docs/Makefile.am: Add test for sgml2html
12551         and allow 'make dist' without building html, but print out
12552         warnings in that case. (For making snapshots)
12553
12554         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
12555         Add Pango libraries and C flags
12556
12557         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12558         Add function (gdk_draw_layout) to draw a pango layout.
12559
12560         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
12561         for getting Pango contexts for GDK.
12562
12563         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
12564
12565         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
12566         editing.
12567
12568         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
12569         keysym => unicode translations. More languages can be added
12570         here, but real input-method support is needed.
12571
12572         * docs/Changes-1.4.txt: Added note about entry behavior.
12573         
12574         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
12575         to set the reading direction for a widget and the global direction.
12576         Add test which allows toggling the global direction. Two private
12577         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
12578
12579         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
12580           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
12581
12582         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
12583
12584         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
12585         underlining now handled by Pango.
12586
12587         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
12588         to RCStyle and Style. (Having both this and the old font name and GdkFont 
12589         is temporary.)
12590
12591         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
12592         convenience functions for creating contexts and layouts for widgets.
12593
12594         * gtk/testgtk.c: Enhance label tests with multilingual labels.
12595
12596 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
12597
12598         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
12599         titles to be active, even if they aren't visible.
12600         (gtk_clist_column_titles_passive):  Ditto.
12601
12602 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
12603
12604         * gtkmenu.c:
12605         * gtkmenu.h:
12606         * gtktypeutils.h: Spelling/grammar fixes in comments.
12607
12608 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
12609
12610         * gdk/nanox/*.h: add missing header files.
12611
12612 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
12613
12614         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
12615         send_event to TRUE.
12616         (gtk_drawing_area_size): queue a resize.
12617
12618 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
12619
12620         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
12621         the handlers, also invalidate them. bug nailed down by Karl Nelson
12622         <kenelson@ece.ucdavis.edu>.
12623
12624 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
12625
12626         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
12627         "(nil)" foundries, patch from Grigorios Magklis.
12628
12629         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
12630         on non-available fonts, based on a patch by Grigorios Magklis
12631         <maglis@cs.rochester.edu>.
12632
12633 2000-05-18  Elliot Lee  <sopwith@redhat.com>
12634
12635         * gdk/x11/gdkregion-generic.c: If a region does not have any
12636         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
12637         instead of GDK_OVERLAP_RECTANGLE_IN.
12638
12639 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
12640
12641         * gtk/gtklayout.c (gtk_layout_map): Remove references to
12642         OFFSCREEN, as it is no longer necessary.
12643
12644 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
12645
12646         * gtk/gtkcolorsel.c: Patch from David Santiago
12647         <mrcooger@cyberverse.com> to change things so that the 
12648         indicator of the active palette entry is done independently,
12649         not via the focus, since it should always be visible.
12650
12651 2000-05-17  Tor Lillqvist  <tml@iki.fi>
12652
12653         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
12654         refcount leaks as in the X11 backend.
12655
12656         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
12657         cosmetics.
12658
12659         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
12660         backend. Add _gdk_windowing_window_destroy().
12661
12662         * gtk/gtkcolorsel.c: Include correct backend-specific header.
12663         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
12664         either, but these probably do exist on nanox?)
12665         
12666         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
12667         which isn't necessarily defined by <math.h>.
12668
12669         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
12670         ancestry past GtkObject.
12671
12672         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
12673         from DLL on Win32.
12674
12675         * gtk/gtk.def: Update corresponding to recent changes.
12676
12677         * gtk/makefile.{cygwin,msc}: Updates.
12678
12679 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
12680
12681         * docs/Changes-1.4.txt: A bit of editing.
12682
12683         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
12684         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
12685         to clear the update area for the window, and clear it
12686         when hiding a window.
12687
12688         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
12689         if window destroyed.
12690
12691         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
12692
12693         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
12694         gdk_window_destroy() to the generic code, since there was a lot of 
12695         window-system-independent logic it in. Add a function:
12696         
12697          _gdk_window_destroy() 
12698
12699         to the internal API to destroy a window without unreferencing it.
12700         Add a function:
12701
12702          _gdk_windowing_window_destroy()
12703
12704         That does the windowing-system-dependent part of destroying 
12705         the window.
12706
12707 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
12708
12709         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
12710
12711 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
12712
12713         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
12714         Make gtk_widget_shape_combine_mask() keep a reference count on
12715         the pixmap since it keeps it around.
12716
12717 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
12718
12719         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
12720         leak.
12721
12722         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
12723         leak with event filters.
12724
12725 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
12726
12727         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
12728         signal handlers with the right data arguments. (Fixes
12729         some warnings when a widget was repeatedly set as a drag
12730         destination.)
12731
12732         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
12733         window so we can avoid avoid setting the DND properties on the
12734         toplevel window repeatedly.
12735
12736 2000-05-13  Tor Lillqvist  <tml@iki.fi>
12737
12738         * gdk/win32/gdkwin32.h: Define more message types missing from
12739         mingw headers.
12740
12741         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
12742         call gdk_window_destroy_notify(). It was never called. This
12743         probably meant that the GdkWindow was never freed. Thanks Owen for
12744         noticing (!).
12745
12746         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
12747         window as destroyed before calling DestroyWindow(). DestroyWindow()
12748         causes a call to the window procedure (gdk_WindowProc), which
12749         calls gdk_event_translate(), which calls
12750         gdk_window_destroy_notify(), which gets confused unless the window
12751         is set as destroyed.
12752
12753         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
12754         this function to indicate it's win32 only. Put inside #ifdef
12755         G_ENABLE_DEBUG.
12756
12757         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
12758         debugging function. (gdk_event_translate:) Add a default branch
12759         that uses the above function to print debug messages with all
12760         Windows messages symbolically.
12761
12762         * gdk/win32/gdkprivate-win32.h: Declare it, and
12763         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
12764
12765 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
12766
12767         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
12768         public header file.
12769
12770 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
12771
12772         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
12773
12774         * gtk/gtktext.c: made the adjustments no-construct args, simply
12775         provide default adjustments.
12776         (gtk_text_destroy): release adjustments.
12777
12778         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
12779         adjustment argument non-construct.
12780
12781         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
12782         instead of in finalize.
12783         (gtk_progress_get_text_from_value): 
12784         (gtk_progress_get_current_text): 
12785         (gtk_progress_set_value): 
12786         (gtk_progress_get_percentage_from_value): 
12787         (gtk_progress_get_current_percentage): 
12788         (gtk_progress_set_percentage): 
12789         (gtk_progress_configure): ensure an adjustment is present.
12790
12791 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
12792
12793         * gtk/gtkcolorsel.[hc]:
12794         * gtk/gtkcolorseldialog.[hc]:
12795         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
12796         their parent implementation, use bit fields for boolean values, don't
12797         create unused widgets, usage of glib types, braces go on their own
12798         lines, function argument alignment, #include directives etc. etc. etc..
12799
12800         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
12801
12802 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
12803
12804         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
12805
12806         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
12807         of NULL.
12808
12809         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
12810         to freed data.
12811         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
12812
12813         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
12814         to NULL when the toplevel is getting destroyed.
12815         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
12816         (gtk_menu_destroy): 
12817         (gtk_menu_init): store the information of whether we have to
12818         readd the initial child ref_count during destruction in a new
12819         GtkMenu field needs_destruction_ref_count.
12820
12821         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
12822         here, those reading: learn from my mistake! ;)
12823         in order for set_?adjustment to support a default adjustemnt if
12824         invoked with an adjustment pointer of NULL, the code read (pseudo):
12825         if (v->adjustment) unref (v->adjustment);
12826         if (!adjustment) adjustment = adjustment_new ();
12827         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
12828         now imagine the first unref to actually free the old adjustment and
12829         adjustment_new() creating a new adjustment from the very same memory
12830         portion. here, the latter comparision will unintendedly fail, and
12831         all hell breaks loose.
12832         (gtk_viewport_set_hadjustment):
12833         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
12834         after unreferencing it.
12835
12836         * gtk/gtkcontainer.[hc]: removed toplevel registration
12837         functions: gtk_container_register_toplevel(),
12838         gtk_container_unregister_toplevel() and
12839         gtk_container_get_toplevels() which had wrong semantics
12840         anyways: it didn't reference and copy the list.
12841
12842         * gtk/gtkwindow.c: we take over the container toplevel registration
12843         bussiness now. windows are registered across multiple destructions,
12844         untill they are finalized. the initial implicit reference count
12845         users are holding on windows is removed with the first destruction
12846         though.
12847         (gtk_window_init): ref & sink and set has_user_ref_count, got
12848         rid of gtk_container_register_toplevel() call. add window to
12849         toplevel_list.
12850         (gtk_window_destroy): unref the window if has_user_ref_count
12851         is still set, got rid of call to
12852         gtk_container_unregister_toplevel().
12853         (gtk_window_finalize): remove window from toplevel list.
12854         (gtk_window_list_toplevels): new function to return a newly
12855         created list with referenced toplevels.
12856         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
12857
12858         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
12859         adjustment a non-construct arg.
12860         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
12861         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
12862         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
12863
12864         * gtk/gtkrange.c: added some realized checks.
12865         (gtk_range_destroy): get rid of the h/v adjustments in the
12866         destroy handler instead of finalize. remove timer.
12867         (gtk_range_get_adjustment): demand create adjustment.
12868
12869         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
12870         we simply create them on demand now and get rid of them in
12871         the destroy handler.
12872         (gtk_viewport_destroy): get rid of the h/v adjustments in the
12873         destroy handler instead of finalize.
12874         (gtk_viewport_get_hadjustment): 
12875         (gtk_viewport_get_vadjustment): 
12876         (gtk_viewport_size_allocate): demand create h/v adjustment
12877         if required.
12878
12879         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
12880         gtk_widget_real_destroy () functionality.
12881         (gtk_widget_real_destroy): reinitialize with a new style, instead
12882         of setting widget->style to NULL.
12883
12884 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
12885
12886         * gtk/gtkcalendar.c:
12887         * gtk/gtkbutton.c: ported _get_type() implementation over to
12888         GType, either to preserve memchunks allocation facilities,
12889         or because Gtk+ 1.0 GtkTypeInfo was still being used.
12890
12891         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
12892         over. prepare for ::destroy to be emitted multiple times.
12893         removed reference tracer magic. chain into GObjectClass.shutdown()
12894         to emit ::destroy signal.
12895
12896         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
12897         fundamental.
12898
12899         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
12900         cludge.
12901
12902         * gtk/gtksocket.c:
12903         * gtk/gtkplug.c:
12904         * gtk/gtklayout.c:
12905         * gtk/gtklabel.c:
12906         * gtk/gtkargcollector.c:
12907         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
12908         not being a fundamental anymore, and to work with the new
12909         type system (nuked fundamental type varargs clutter).
12910
12911         * gtk/*.c: install finalize handlers in the GObjectClass
12912         part of the class structure.
12913         changed direct GTK_OBJECT()->klass accesses to
12914         GTK_*_GET_CLASS().
12915         changed direct object_class->type accesses to GTK_CLASS_TYPE().
12916
12917         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
12918         GType. made most of the GTK_*() type macros and Gtk* typedefs
12919         simple wrappers around macros and types provided by GType.
12920         most notably, a significant portion of the old API vanished:
12921         GTK_TYPE_MAKE(),
12922         GTK_TYPE_SEQNO(),
12923         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
12924         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
12925         GTK_TYPE_ARGS,
12926         GTK_TYPE_CALLBACK,
12927         GTK_TYPE_C_CALLBACK,
12928         GTK_TYPE_FOREIGN,
12929         GtkTypeQuery,
12930         gtk_type_query(),
12931         gtk_type_set_varargs_type(),
12932         gtk_type_get_varargs_type(),
12933         gtk_type_check_object_cast(),
12934         gtk_type_check_class_cast(),
12935         gtk_type_describe_tree(),
12936         gtk_type_describe_heritage(),
12937         gtk_type_free(),
12938         gtk_type_children_types(),
12939         gtk_type_set_chunk_alloc(),
12940         gtk_type_register_enum(),
12941         gtk_type_register_flags(),
12942         gtk_type_parent_class().
12943         replacements, where available are described in ../docs/Changes-1.4.txt.
12944         implemented compatibility functions for the remaining API.
12945
12946         * configure.in: depend on glib 1.3.1, use gobject module.
12947
12948 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
12949
12950         * TODO.xml: Various updates to current status.
12951
12952 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
12953
12954         * gtk.m4: Print out version when test succeeds.
12955
12956 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
12957
12958         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
12959         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
12960         
12961         (Original triangle color selector from Simon Budig
12962         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
12963         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
12964         Santiago <mrcooger@cyberverse.com>)
12965
12966         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
12967         out into a separate widget.
12968
12969         * gtk/testgtk.c: Add some checkbuttons for toggling palette
12970         and opacity controls.
12971
12972 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
12973
12974         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
12975         snuck in prematurely.
12976
12977 2000-05-07  Tor Lillqvist  <tml@iki.fi>
12978
12979         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
12980         had deleted a ! operator by mistake, which caused
12981         GDK_SELECTION_CLEAR events never to be generated, which caused
12982         only the first copy to the clipboard from an gtkeditable to
12983         actually cause a copy to the Windows clipboard.
12984
12985 2000-05-06  Tor Lillqvist  <tml@iki.fi>
12986
12987         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
12988         compilation, too. Current mingw gcc distributions include the
12989         necessary headers. Also the necessary IIDs are now in mingw
12990         headers/libraries, and own definitions unnecessary.
12991
12992         More hacking on OLE2 DND, still doesn't work though, and thus
12993         ifdeffed out.
12994
12995         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
12996         here, too.
12997
12998 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
12999
13000         * gdk/nanox/*: nano-X port work in progress.
13001         * gdk/simple.c: simple test for Gdk.
13002         * README.nanox: notes about the port: read this first!
13003         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
13004         with nano-X.
13005
13006 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
13007
13008         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
13009         gdk_window_clear() into common code, implement in terms of
13010         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
13011         not redirected to the backing rectangle.
13012
13013 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13014
13015         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13016         EXTRA_DIST. It does not work well when the file that
13017         everything depends on is not in the tarball.
13018
13019 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
13020
13021         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
13022         with recursion where process_updates() is called from
13023         an expose handler. (GtkTextView is highly broken in
13024         doing this, but it should work, so it is a nice test
13025         case.)
13026
13027 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13028
13029         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
13030         handle the case where updates are queued during processing of
13031         updates.
13032
13033 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13034
13035         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
13036         window is on gdk_display - use that instead of segfaulting.
13037
13038 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
13039
13040         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
13041         broken and require an empty arg, give it to them.
13042
13043 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
13044
13045         * gtk/gtklabel.h: indentation fixes.
13046
13047 2000-05-02  Tor Lillqvist  <tml@iki.fi>
13048
13049         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
13050         draw too narrow or too low arcs, they seem to fail, at least with
13051         some display drivers.
13052
13053         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
13054
13055         Large changes to the Win32 backend, partially made necessary by
13056         the changes to the backend-independent internal
13057         structures. Attempts to implement similar backing store stuff as
13058         on X11. The current (CVS) version of the Win32 backend is *not* as
13059         stable as it was before the no-flicker branch was merged. A
13060         zipfile with that version is available from
13061         http://www.gimp.org/win32/. That should be use by "production"
13062         code until this CVS version is usable. (But note, the Win32
13063         backend has never been claimed to be "production quality".)
13064
13065         * README.win32: Add the above comment about versions.
13066
13067         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
13068
13069         * gdk/gdk.def: Update.
13070
13071         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
13072         presumably be replaced by some more better mechanism as 1.4 gets
13073         closer to release shape.
13074
13075         * gdk/makefile.{cygwin,msc}: Update.
13076
13077         * gdk/win32/*.c: Correct inclusions of the backend-specific and
13078         internal headers. Change code according to changes in these. Use
13079         gdk_drawable_*, not gdk_window_* where necessary.
13080
13081         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
13082         our old DND.
13083
13084         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
13085         to interpret single characters as UTF-8. Thanks to Hans Breuer.
13086         Use correct function name in warning messages.
13087
13088         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
13089         GSourceFuncs gdk_event_prepare and gdk_event_check.
13090         (gdk_event_get_graphics_expose): Do implement, use
13091         PeekMessage. Thanks to Hans Breuer.
13092         (event_mask_string): Debugging function to print an GdkEventMask.
13093         (gdk_pointer_grab): Use it.
13094
13095         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
13096         (old) book I used claimed was Hangul actually is CJK Unified
13097         Ideographs Extension A. Also, Hangul Syllables were missing.
13098         Improve logging.
13099
13100         * gdk/win32/gdkgc-win32.c: Largish changes.
13101
13102         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
13103         g_win32_getlocale() from GLib, and not setlocale() to get current
13104         locale name.
13105
13106         * gdk/win32/gdkprivate-win32.h
13107         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
13108         gdkwin32.h, similarily as in the X11 backend.
13109
13110         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
13111         assignment was used instead of equals in if test. Thanks to Hans
13112         Breuer.
13113
13114         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
13115         the X11 version.
13116
13117         * gdk/win32/makefile.{cygwin,msc}
13118         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
13119         path to the Win32 headers that works also with the mingw compiler.
13120
13121         * gtk/gtkstyle.c: Include <string.h>.
13122
13123 2000-04-26  Havoc Pennington  <hp@redhat.com>
13124
13125         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
13126         replacing the broken gtk_label_get ()
13127
13128 2000-04-15  Havoc Pennington  <hp@pobox.com>
13129
13130         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
13131         this keeps scanner scripts from getting confused.
13132
13133         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
13134         data, rather than void
13135
13136 2000-04-15  Tor Lillqvist  <tml@iki.fi>
13137
13138         * gtk/gtkclist.c (gtk_clist_motion)
13139         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
13140         with is_hint FALSE, get x and y from the event. They used to be
13141         used uninitialised. The Win32 backend never sends motion events
13142         marked as hints. This for instance fixes the annoying file and
13143         font selector behaviour in the Win32 version.
13144
13145 2000-04-14  Tor Lillqvist  <tml@iki.fi>
13146
13147         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
13148         gtk_private_n_signals variables, they are used by some software,
13149         sigh.
13150
13151         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
13152         installation directory from the Registry, where the installer
13153         should have put it.
13154
13155 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
13156
13157         * gdk/x11/Makefile.am: Fix problem with installation directory for
13158         gdkx.h
13159
13160         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
13161         <mrcooger@cyberverse.com> so that when selecting menus with the
13162         mouse, the first item will not be selected, but when selecting
13163         with an accelerator, or navigating left-right on a menubar with
13164         the menus popped up, the first item will be selected.
13165
13166 2000-04-05  Dan Damian  <dand@dnttm.ro>
13167
13168         * configure.in: Added "ro" to ALL_LINGUAS.
13169
13170 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
13171
13172         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
13173         indentation.
13174
13175         * Makefile.am (EXTRA_DIST): Fix typo.
13176
13177         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
13178         to catch gdkconfig.h
13179
13180         * gtk/gtkitemfactory.c: Added FIXME.
13181
13182 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
13183
13184         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
13185         s/return_if_fail/return_val_if_fail/g and add a return value.
13186
13187 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13188
13189         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
13190         merge slipup.
13191
13192         * gdk/gdkinput.h: Fix missing line from merge.
13193
13194 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
13195
13196         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
13197         instead of gdkprivate.h.
13198
13199 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
13200
13201         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
13202         parent class to correctly be GtkDialogClass.
13203
13204 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
13205
13206         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
13207         toplevel windows and their immediate children by their parents,
13208         since the size of toplevel windows is out of our immediate
13209         control and we don't get any real benefit from trying to track
13210         this size for clipping.
13211
13212         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
13213         for input_only windows.
13214
13215         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
13216         to fix some hacks and make sure that we don't try to set the
13217         background of input only windows.
13218
13219 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
13220
13221         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
13222         the _really_ internal stuff, and leave gdkprivate.h for the fake private
13223         stuff that we've traditionally exposed.
13224
13225         * gdk/**.c: Use gdkinternals.h where appropriate.
13226
13227         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
13228         not include gdkprivate-x11.h, move all stuff of conceivable public
13229         interest into gdkx.h; keep all really private stuff in
13230         uninstalled header gdkprivate-x11.h.
13231
13232         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
13233         image->image_put on windows through a new function _gdk_window_draw_image()
13234         to allow us to do backing store for images. (Sort of ugly)
13235
13236         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
13237         contexts locally so that we can offset them properly when drawing 
13238         onto backing pixmaps.
13239
13240         * gdk/gdkinput.h: Reindented
13241
13242         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
13243         pixmap or color for the window, so we can properly initialize
13244         our double-buffer pixmaps, and also so that we temporarily set
13245         a background of None while scrolling.
13246
13247         * gdk/gdkregion.h: Revise region boolean operators to have an
13248         interface that is actually convenient - switch from creating new
13249         regions on every op, to "methods" that modify existing regions
13250         (A = A OP B). 3 argument forms which allow dest == src, would also
13251         be possible, but the current interfaces seem to map nicely
13252         onto what needs to be done. (There is quite a lot of region
13253         code in GDK now.)
13254
13255         * gdk/gdkregion.h: Add constructor from rectangle and a copy
13256         operator.
13257
13258         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
13259         gdkpoly-generic.h: Copy region code from Xlib, switch it over
13260         to 32 bit coordinates, modify it to be mostly GTK+ style
13261         and to have interfaces that match gdkregion.h.
13262
13263         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
13264         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
13265         create a backing pixmap and redirect all drawing to
13266         that backing pixmap until a matching gdk_window_end_paint().
13267
13268         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
13269         Create a special drawable class for GtkWindow's that 
13270         redirects the drawing to the backing pixmap as necessary
13271         and then calls the real operations in _gdk_windowing_window_class.
13272
13273         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
13274         Store invalid region for each window. Generate expose events for invalid
13275         region in an idle. This replaces both the expose compression
13276         and the redrawing queuing in GTK+. It is both more efficient and
13277         simpler than either one individually and far more so then the
13278         combination.
13279
13280         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
13281         Emulate 32 bit coordinates for windows with 16 bit coordinates
13282         by offsetting drawing, guffaw scrolling techniques and
13283         mapping/unmapping child windows as necessary.
13284
13285         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
13286         where, when invalid regions are processed, the region is stored,
13287         and if expose events come in that are detectably duplicate
13288         the processed exposes (by comparison of event serial numbers),
13289         the stored region is subtracted out of those exposes.
13290
13291         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
13292         regions newly exposed when scrolling or resizing windows.
13293         This, combined with forcing processesing of queued invalidated
13294         regions, gives nice flicker-free scrolling.
13295
13296         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
13297         invalidated regions after every scroll.
13298
13299         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
13300         emulation in GDK. Its, for all practical purposes just a
13301         GtkViewport/GtkFixed hybrid now.
13302
13303         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
13304         (16-bit) structures as necessary instead of just casting.
13305
13306         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
13307         in terms of the structures from gdkregion-generic.c, using appropriate
13308         offsets from GDK to X11 coordinates. Cache clip mask and
13309         origin and ts origin locally and only flush to the server
13310         when drawing, to avoid constantly setting and resetting these
13311         values when offsetting GC's for scrolling and backing pixmaps.
13312
13313         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
13314
13315         * gtk/gtkcontainer.c: Call process_all_updates at end
13316         of resizing to reduce flicker. (Avoids having redraw
13317         lag arbitrarily behind resize under some circumstances)
13318
13319         * gtk/gtkentry.c: Remove old backing store code, and simply take
13320         advantage of the new backing store capabilities of GDK.
13321
13322         * gtk/gtkmain.c: Simple implementation of widget backing
13323         store - simply push a paint while handling each expose.
13324         (Should really be configurable widget for widget.)
13325         
13326         * gtk/gtkwidget.c: Remove all the old complicated redraw
13327         code, and simply invalidate the GDK windows from
13328         gdk_window_queue_clear(), etc. (Sigh, so much carefully
13329         debugged complexity ... gone to the winds.)
13330
13331         Remove all the code for suppressing expose events while
13332         resizes are pending; this isn't needed since the invalid
13333         areas won't be processed until after the resizes are
13334         processed, since they are in a lower priority idle.
13335
13336 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
13337
13338         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
13339         and height of dest rectangle for non-intersecting rectangles.
13340
13341 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
13342
13343         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
13344         for GdkRectangle.
13345
13346 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
13347
13348         * gdk/gdk{events,image,private,types,window}.h
13349          gdk/x11/gdkinputprivate.h: Change all coordinates
13350          from int16 to int. Also, Change width and height from
13351          unsigned to signed to avoid all the stupid C 
13352          signedness bugs.
13353
13354 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
13355
13356         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
13357         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
13358         Add some more detailed checking.
13359
13360         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
13361         New function to retrieve the depth of a drawable.
13362
13363         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
13364         field, reorder fields to save memory. 
13365
13366 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
13367
13368         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
13369         of the background image instead of scaling the background down to
13370         a line.
13371
13372         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
13373         which temporarily set slider to wrong size.
13374
13375         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
13376         queue_clear().
13377
13378 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
13379
13380 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
13381
13382         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
13383
13384 2000-03-17  Tor Lillqvist  <tml@iki.fi>
13385
13386         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
13387         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
13388
13389         * gdk/win32/gdkfont-win32.c
13390         * gdk/win32/gdkproperty-win32.c
13391         * gdk/win32/gdkselection-win32.c
13392         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
13393         now declared such.
13394
13395 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
13396
13397         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
13398
13399 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
13400
13401         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
13402         is called without trapping X errors.
13403
13404 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
13405
13406         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
13407         way into the fontset lists.
13408
13409 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
13410
13411         * gtk/gtkthemes.h: add extern "C" scope.
13412
13413 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
13414
13415         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
13416         to make appends to the list constant. (gtk-guy-990901-0.patch)
13417
13418 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
13419
13420         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
13421         for the typename hash table.
13422
13423 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
13424
13425         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
13426         to make sure we never divide by zero. 
13427         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
13428
13429 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
13430
13431         * gtk/gtkfontsel.c: Apply patch from
13432         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
13433         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
13434
13435         Also, some cleanups in atom handling.
13436
13437 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
13438
13439         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
13440         not GtkWidget.
13441
13442 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
13443
13444         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
13445         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
13446         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
13447         more guint wrap-around bugs before going to bed.
13448
13449 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
13450
13451         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
13452         guint wrap arounds in allocation.width.
13453
13454         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
13455         process untill we fit the allocation given.
13456
13457 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
13458
13459         * gtk/gtkwidget.c:
13460         (gtk_widget_unrealize): guard widget access with ref/unref
13461         around signal emission.
13462         (gtk_widget_hide): same here, but also check its destroyed
13463         state before queueing a resize.
13464
13465 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
13466
13467         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
13468         of gtk_default_insensitive_bg as insensitive base color.
13469
13470         * gtk/gtktext.c (gtk_text_style_set): set the background color according
13471         to the widget's state.
13472         (gtk_text_realize): same here.
13473         (gtk_text_state_changed): same here.
13474         (draw_bg_rect): compare background color against base[] from
13475         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
13476
13477 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
13478
13479         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
13480         grabs are active, unless a delete event is send to the toplevel
13481         of the currently grab holding widget.
13482
13483 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
13484
13485         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
13486         debugging g_print's.
13487
13488 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
13489
13490         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
13491         ever make the scrolled-window requisition ever depend on the 
13492         visibility state of the scrollbars for the AUTOMATIC policy. 
13493         This breaks the GTK+ requisition model, and causes loops.
13494
13495 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
13496
13497         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
13498         the default font to avoid problems with XFree86-4.0 where the
13499         default charset is iso10646-1, not iso8859-1.
13500
13501 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
13502
13503         * acinclude.m4
13504         * config.guess
13505         * config.sub
13506         * ltconfig
13507         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
13508
13509         * gtk/Makefile.am: minor cosmetic consistency tweak
13510
13511 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
13512
13513         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
13514         the activate_time to 0, so that we handle a quick
13515         press/release press/release properly and don't suppress
13516         the second release. (Red Hat bug #7545)
13517
13518 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
13519
13520         * gtk/gtkctree.c (row_delete):
13521         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
13522         bugs with destruction notifier, *always* update internal
13523         structures *before* calling user code.
13524
13525 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
13526
13527         A few more fixes for bug #5487, #2051, #2677.
13528         * gtk/gtkclist.c : 
13529         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
13530         not GDK_BUTTON_PRESS.
13531         (resync_selection): resync only if selection_mode is
13532         GTK_SELECTION_EXTENDED
13533         * gtk/gtkctree.c (resync_selection): same here
13534
13535 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
13536
13537         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
13538         gdk_drag_get_selection() and gtk_menu_detach().
13539
13540         [ From Jeroen Ruigrok/Asmodai ]
13541
13542 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
13543
13544         * gtk/gtknotebook.c (gtk_notebook_size_request): 
13545         page->tab_label can be NULL.
13546
13547 2000-01-25  Havoc Pennington  <hp@pobox.com>
13548         
13549         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
13550         arg is boolean
13551
13552         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
13553
13554         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
13555
13556         * gdk/gdkproperty.c (gdk_property_get): return boolean
13557
13558         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
13559
13560         * gdk/gdkim.c (gdk_im_ready): return boolean
13561
13562         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
13563
13564         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
13565         glib clash, should fix glib)
13566
13567         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
13568         (gdk_get_show_events): return gboolean, and canonicalize 
13569         to TRUE/FALSE
13570
13571         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
13572         colormap is private
13573         (gdk_colors_alloc): gboolean whether to be contiguous
13574         (gdk_color_equal): return gboolean since we are a predicate
13575         and not a qsort() (this looks semi-wrong due to glib breakage,
13576         IMO glib should be fixed)
13577         
13578         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
13579         (gdk_get_use_xshm): return gboolean
13580         (gdk_pointer_is_grabbed): return gboolean
13581
13582         * gdk/gdk.h: Change prototypes to match all the above changes,
13583         and re-run egtk-format-protos as required.
13584
13585 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
13586
13587         * gtk/gtkctree.c (resync_selection): 
13588         * gtk/gtkclist.c (resync_selection):
13589
13590         Return immediately if clist->drag_pos < 0. This is a workaround
13591         for the corrupt state that the clist gets into when a
13592         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
13593
13594         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
13595         
13596         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
13597         variable from recent commit.
13598
13599 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
13600
13601         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
13602
13603 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
13604
13605         * gtk/Makefile.am: prefix all autogenerated source that get build in
13606         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
13607         in builddir. since we subsequently cd into srcdir for autogeneration,
13608         the paths have to be stripped from the target file names, thusly we
13609         use $(@F) as target names now.
13610         put a comment about configure.in's --disable-rebuilds option,
13611         which can be used for non-writable source directories, for development
13612         setups though, srcdir has to be *writable*.
13613
13614 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
13615
13616         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
13617           Finish the job of allowing event to be NULL.
13618           (Fixes bug #4283, reported by Chris Blizzard)
13619
13620         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
13621           things so that the cursor appears on screen, properly
13622           take into account INNER_BORDER.
13623           (Fixes bug #4754, reported by Antonio Campos)
13624
13625 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
13626
13627         * gtk/gtknotebook.c (gtk_notebook_map): Don't
13628           show the tab_label unless it itself is visible.
13629
13630           gtk/gtknotebook.c (gtk_notebook_size_request):
13631           Do a better job of making sure that the visibility
13632           of the tab label corresponds to whether it should
13633           be mapped or not.
13634
13635 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
13636
13637         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
13638           Use the requisition, not the allocation, since the
13639           allocation has not necessarily been computed yet.
13640           (Pointed out by Eugene Osintsev)
13641
13642 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
13643
13644         * gtk/gtkstyle.c (gtk_style_new): Dont' set
13645           style/base[GTK_STATE_INSENSITIVE] both to
13646           gtk_default_insensitive_bg!
13647           (Bug #2187, reported by Jonathan Blandford)
13648
13649         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
13650           Add Alt_L, Alt_R to list of invalid accelerators.
13651           (Bug #3736, reported by Vlad Harchev)
13652
13653 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
13654
13655         * gtk/gtkfilesel.c (open_ref_dir): Fix several
13656         bugs which occured after an attempt to open 
13657         invalid home directory left cmpl_state->reference_dir == NULL.
13658
13659          - completion on files in home directory didn't work
13660          - completion on an empty string caused  segfault
13661
13662          (Bug #3678, reported by Steve Ratcliffe)
13663
13664         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
13665         cut and paste error that was causing scales to
13666         be incorrectly positioned.
13667         (Bug #2956,
13668          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
13669
13670 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
13671
13672         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
13673         when checking for dcgettext, if we've found we needed
13674         it for dgettext.
13675 +
13676 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
13677
13678         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13679         queue_clear on NO_WINDOW widgets during a reparent,
13680         since at that point the window and widget heirarchies
13681         are out of sync. This stops crashing in some cases
13682         (the scrolled window reparent test, for instance), and
13683         _probably_ won't cause drawing errors.
13684
13685         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
13686         test do what it was supposed to do and be robust against
13687         window closings, etc. (Bug #2443)
13688
13689 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
13690
13691         * gtk/gtkentry.c: Fix return values on mouse events.
13692         (Bug #2686, Sky <seb_sky@yahoo.com>)
13693
13694         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
13695         (pointed out by George Lebl)
13696
13697         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
13698         (From Ettore Perazzoli  <ettore@helixcode.com>)
13699  
13700 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
13701
13702         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
13703         clicks between rows or outside calender area correctly.
13704         (Patch from Damon Chaplin)
13705
13706         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
13707         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
13708           Call destroy function when overwriting existing data. 
13709           (Pointed out by Damon Chaplin)
13710
13711 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
13712
13713         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
13714           which was causing problems on various systems with Xmu.
13715           This hasn't been needed for a very long time.
13716           (Fixes #1185 3167)
13717
13718 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
13719
13720         * gdk/gdki18n.h: Include <ctype.h> when defining
13721           gdk_isw* in terms of is* as a fallback.
13722           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
13723
13724 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
13725
13726         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
13727           realize the widget when it is size allocated!
13728           (old, old bug)
13729
13730         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
13731           Removed unused call to gdk_window_get_size() that
13732           showed up when the above was fixed.
13733
13734 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
13735
13736         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
13737           fix up widget->window when the widget is a
13738           NO_WINDOW container widget.
13739
13740 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
13741
13742         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
13743           to account for the fact that feof() does _not_ 
13744           return TRUE on errors, and thus avoid infinite loops
13745           when trying to use gdk_pixmap_create_from_xpm()
13746           on unreadable values.
13747
13748 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
13749
13750         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
13751
13752 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
13753
13754         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
13755           gdk_gc_set_dashes to take gint8 instead of gchar to
13756           make it clearer that it is _not_ a NULL terminated string.
13757
13758         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
13759           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
13760           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
13761           arguments.
13762
13763 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
13764
13765         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
13766         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
13767         background size relative to our allocation, guard against small
13768         allocations, we may have not yet been size allocated.
13769
13770 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
13771
13772         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
13773         not just version == 3. We implement all 3 + most of 4 - 
13774         (we don't support matching text/plain;charset=iso-8859-1
13775         to a dest that expects text/plain). We'll still advertise
13776         3 to be safe, but any client implementing version >= 3
13777         must interoperate with 3.
13778         
13779 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13780
13781         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
13782         background and gc members, add a warning in gtk_tooltips_set_color()
13783         indicating that this function is deprecated.
13784
13785 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
13786
13787         * docs/gtkfaq.sgml: FAQ Update:
13788           - Minor cleanups (Emmanuel, me)
13789           - New questions:
13790                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
13791                 How can I retrieve the text from a GtkMenuItem? (timj)
13792                 How do I validate/limit/filter the input to a GtkEntry? (me)
13793                 Memory does not seem to be released when I free the list
13794                         nodes I've allocated (timj)
13795
13796 2000-03-07  Tor Lillqvist  <tml@iki.fi>
13797
13798         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
13799         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
13800         for which it is no use to call GetLastError onWin9x.
13801         (gdk_other_api_failed) New function, for general error
13802         reporting without calling GetLastError.
13803         (gdk_win32_api_failed) OTOH, this function always calls
13804         GetLastError. (gdk_win32_last_error_string) Remove this function,
13805         GLib has the equivalent now.
13806
13807         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
13808         call them with function name, file name and line number in the
13809         arguments.
13810
13811         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
13812         functions.
13813         
13814         * gtk/gtk.def: Add some missing entry points.
13815
13816         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
13817         gtk_paned_set_gutter_size, which don't exist any longer, as void.
13818         
13819         Fixes by Hans Breuer:
13820
13821         * gdk/makefile.msc: Update for debugging.
13822
13823         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
13824         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
13825         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
13826         in the dash_list.
13827
13828         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
13829         the x11 backend.
13830
13831         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
13832
13833         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
13834
13835 2000-03-04  Tor Lillqvist  <tml@iki.fi>
13836
13837         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
13838         just pixel value of background colour.
13839
13840         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
13841         containing code snippet previously duplicated in a couple of
13842         places.
13843         
13844         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
13845         gdk_colormap_color.
13846
13847         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
13848         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
13849         events for autorepeated Shift, Control and Alt keys. Use
13850         gdk_colormap_color.
13851
13852         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
13853         pointer is inside the window the cursor of which we are setting,
13854         call SetCursor immediately.
13855
13856         * gdk/win32/makefile.cygwin
13857         * gtk/makefile.cygwin: If we don't have the build number stamp
13858         file, use zero.
13859
13860         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
13861         gtk_paned_set_gutter_size as empty.
13862
13863         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
13864         
13865 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
13866
13867         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
13868           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
13869           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
13870           docs/gtk_tut.sgml docs/gtk.texi TODO:
13871
13872           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
13873
13874 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
13875
13876         * gtk/gtkcalendar.c: Implement num_marked_dates,
13877           and don't emit mutiple day_selected signals on
13878           month_prev.
13879
13880 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
13881
13882         * docs/make-todo (lineno): let title and logo be configurable so
13883         that GNOME can use this script too.
13884
13885         * TODO.xml: added logourl and a title
13886
13887 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
13888
13889         * TODO.xml: Added some UI items, and an explanatory
13890         comment at the top of the file.
13891
13892 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
13893
13894         * TODO.xml: some updates, added abunch of new entries.
13895         a note for those fiddeling with this file, when done
13896         with it, invoke:
13897         $ ./docs/make-todo TODO.xml >/dev/null
13898         and correct output errors before comitting changes.
13899
13900 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
13901
13902         * TODO.xml: Added XML-structured TODO file.
13903         * docs/make-todo: python script to turn TODO.xml into
13904           pretty XML output. 
13905
13906 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
13907
13908         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
13909         the function to let it draw the seven dots, instead of the old,
13910         much maligned, method.
13911         (draw_dot): New function to draw a dot.
13912
13913         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
13914         to draw the handle inside the border width as opposed to outside.
13915         Use paint function instead of gdk_draw_point.
13916
13917         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
13918         to draw the handle inside the border width as opposed to outside.
13919         Use paint function instead of gdk_draw_point.
13920
13921         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
13922         Change indenting to be more GTK like.
13923
13924 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
13925
13926         * docs/gtk_tut.sgml: New section on GtkCalendar
13927         * examples/calendar: Update example code
13928
13929 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
13930
13931         * docs/gtkfaq.sgml: FAQ Update
13932
13933 2000-02-19  Anders Carlsson  <andersca@gnu.org>
13934
13935         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
13936         to prevent the scroll event to be propagated upwards.
13937
13938 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
13939
13940         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
13941         OwnerGrabButtonMask from button entries for
13942         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
13943
13944         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
13945         to the event mask (which will result in button/press release
13946         being added to the event mask on Unix) so scrolling works
13947         for layouts in scroll windows.
13948
13949         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
13950
13951         Patch from Anders Carlsson  <andersca@gnu.org> to add
13952         a scroll event.
13953
13954         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
13955         scrolling to the "Test Scrolling" part of testgtk.
13956  
13957         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
13958  
13959         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
13960         it against GDK_SCROLL.
13961  
13962         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
13963         way of mouse wheel scrolling.
13964  
13965         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
13966  
13967         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
13968  
13969         * gtk/gtkmain.c: Removed previous mouse wheel hack.
13970  
13971         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
13972         gdk_event_mask_table.
13973  
13974         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
13975         GdkEventScroll handler.
13976  
13977         * gdk/gdkevents.h: Added GdkEventScroll structure.
13978  
13979 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
13980
13981         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
13982         and Anders Carlsson to change the Paned widgets so that they
13983         can be dragged from anywhere along the length. Also change
13984         the way that this is drawn to make this apparent.
13985
13986         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
13987         from George Lebl to check that option_menu->menu is present
13988         before getting history.
13989
13990 2000-02-14  Tor Lillqvist  <tml@iki.fi>
13991
13992         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
13993         before the assertion for non-NULL segment list.
13994
13995         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
13996         Seems that pattern brushes *must* be 8x8 pixels! At least on my
13997         machine, but it might be display driver dependent. Sigh, so make
13998         sure the stipple is that size. Does Windows suck or what?
13999
14000         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
14001         places.
14002
14003 2000-02-13  Havoc Pennington  <hp@pobox.com>
14004
14005         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
14006         refcount to 1
14007         (gdk_cursor_new): init refcount to 1
14008
14009         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
14010
14011 2000-02-13  Tor Lillqvist  <tml@iki.fi>
14012
14013         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
14014         so that we don't have to do unnecessary settings to the HDC.
14015
14016         * gdk/win32/gdkdrawable-win32.c
14017         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
14018         gdk_gc_predraw.
14019
14020         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
14021         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
14022         GDI paths, call WidenPath to get the outline of the stroken path,
14023         and then fill the outline (with the brush that was built from the
14024         stipple).
14025
14026         * gdk/win32/gdkgc-win32.c: Factor out common code from
14027         _gdk_win32_gc_new and gdk_win32_gc_set_values into
14028         gdk_win32_gc_values_to_win32values. Use correct colour for
14029         SetBkColor() (Until now the code actually used a random colour in
14030         the call to SetBkColor()... but that didn't show up as not many
14031         GDI APIs use the background colour. Pattern (opaque stippled)
14032         brushes do.)
14033
14034         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
14035         gdk_win32_api_failed): New functions for error logging.
14036
14037         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
14038         WIN32_API_FAILED to call them, passing function or file name and
14039         line number.
14040
14041         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
14042
14043         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
14044         GdkColor for foreground and background in GdkGCWin32Data.
14045
14046         * gdk/makefile.cygwin: Link in the resource object separately.
14047
14048         * gdk/win32/rc/gdk.rc
14049         * gtk/gtk.rc (New file)
14050         * gdk/win32/makefile.cygwin
14051         * gtk/makefile.cygwin: Update build number in DLLs automatically,
14052         as in GLib.
14053
14054 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
14055
14056         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
14057         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
14058         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
14059         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
14060         parameters given and cursor->ref_count. coding style fixups.
14061
14062         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14063         not GtkWidget.
14064         
14065         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
14066         fix up widget macros and add _GET_CLASS() variant.
14067         
14068         * gtk/*.c: some GtkType fixups.
14069
14070 2000-02-09  Tor Lillqvist  <tml@iki.fi>
14071
14072         * gdk/win32/gdkproperty-win32.c
14073         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
14074         were reversed.
14075
14076 2000-02-04  Tor Lillqvist  <tml@iki.fi>
14077
14078         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
14079         g_filename_to_utf8 to convert the font names Windows gives us from
14080         whatever is the default codepage to UTF-8.
14081         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
14082         in the other direction.
14083
14084         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
14085         error in debugging output.
14086
14087 2000-02-02  Tor Lillqvist  <tml@iki.fi>
14088
14089         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
14090         and height parameters to gdk_window_clear_area(). Not minus one.
14091
14092 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
14093
14094         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
14095         checks if the widget passed to gtk_drag_get_data() was not the
14096         dest widget.
14097
14098 2000-02-01  Tor Lillqvist  <tml@iki.fi>
14099
14100         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
14101         g_filename_from_utf8 functions (which were added a moment ago to
14102         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
14103         size buffers.
14104
14105         gtk_file_selection_get_filename returns the filename in the C
14106         runtime encoding. It calls g_filename_from_utf8, but copies the
14107         returned string to a static buffer, which is returned. I think
14108         this is better than returning the result from g_filename_from_utf8
14109         directly, which would mean all apps that use it would have to free
14110         the return value. Or should this function care about this issue at
14111         all? Maybe a new function with clearly defined semantics.
14112
14113         * gtk/gtkfilesel.h: Add comment about
14114         gtk_file_selection_get_filename returning the filename in the C
14115         runtime's encoding.
14116
14117         * README.win32
14118         * gdk/gdk.def
14119         * gdk/makefile.{cygwin,msc}
14120         * gtk/gtk.def: Updates.
14121
14122         * gdk/gdkcursor-win32.c: Initialise refcount.
14123
14124 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
14125
14126         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
14127
14128 2000-01-30  Havoc Pennington  <hp@pobox.com>
14129
14130         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
14131         destroy
14132
14133         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
14134
14135         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
14136         implemented in platform-specific code
14137
14138         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
14139
14140         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
14141         underscore in front
14142
14143         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
14144         put an underscore in front
14145
14146         * gdk/gdkcursor.c: new file, implements
14147         gdk_cursor_ref/gdk_cursor_unref
14148
14149         * gdk/gdkcursor.h: Refcount GdkCursor
14150
14151         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
14152
14153 2000-01-29  Tor Lillqvist  <tml@iki.fi>
14154
14155         * gdk/gdkwindow.h
14156         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
14157
14158 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14159
14160         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
14161         structures to properly inherit from GtkWidget not GtkBin.
14162
14163 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
14164
14165         * gtk+.spec.in: Added lib/gtk+/include/* to %files
14166         (bug #5178 - Peter Wainright)
14167         
14168         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
14169         so that it will be installed.
14170         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
14171
14172 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
14173
14174         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
14175         for the GtkStyleClass vtable const.
14176
14177         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
14178         take a const string argument like GtkTranslateFunc. This will
14179         require changes in use code.
14180
14181 2000-01-19  Tor Lillqvist  <tml@iki.fi>
14182
14183         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
14184         semantics (to mimic the X11 backend, which just calls XClearArea)
14185         is to check for zero width (and height), and in that case use the
14186         window's width minus x (height minus y). This fixes for instance
14187         some redraw problems with gtkclist, which were easily noticeable
14188         in the gtk file selection widget.
14189
14190         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
14191         windows.
14192
14193 2000-01-13  Tor Lillqvist  <tml@iki.fi>
14194
14195         * configure.in
14196         * gdk/Makefile.am
14197         * gdk/x11/Makefile.am
14198         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
14199         (bug #5177).
14200         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
14201         out later.
14202
14203 2000-01-09  Tor Lillqvist  <tml@iki.fi>
14204
14205         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
14206         WM_MOVE for iconified or invisible windows. This fixes various
14207         problems when minimising windows. Thanks to Bernd Herd.
14208
14209 2000-01-05  Tor Lillqvist  <tml@iki.fi>
14210
14211         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
14212         backend's draw_lines method, not draw_points.
14213
14214 2000-01-02  Tor Lillqvist  <tml@iki.fi>
14215
14216         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
14217         before Owen's reorganisation: Don't have queued_events and
14218         queued_tail statics in this file, but use gdk_queued_events and
14219         gdk_queued_tail. This makes exposure event compression work again.
14220
14221         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
14222         seem to be needed?
14223
14224 1999-12-30  Tor Lillqvist  <tml@iki.fi>
14225
14226         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
14227         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
14228         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
14229         doesn't do anything.
14230
14231         * gdk/gdk.def: Add gdk_xid_table_insert.
14232
14233         * gdk/win32/gdkprivate-win32.h
14234         * gdk/win32/gdkevents-win32.c
14235         * gdk/win32/gdkinput-win32.c
14236         
14237         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
14238         extension_events field in the GdkWindowWin32Data struct. Use only
14239         the extension_events field in GdkWindowPrivate. Previously one was
14240         set, and the other one tested, which broke tablet
14241         functionality. Thanks to Keishi Suenaga for pointing this out.
14242
14243 1999-12-18  Tor Lillqvist  <tml@iki.fi>
14244
14245         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
14246         When handling a single character (text length == 1), don't handle
14247         it as if it was UTF-8.
14248
14249 1999-12-11  Tor Lillqvist  <tml@iki.fi>
14250
14251         * Makefile.am: Distribute README.win32.
14252         
14253         * gdk/Makefile.am
14254         * gdk/win32/Makefile.am: Distribute Win32 files.
14255
14256         * gdk/makefile.msc: New file.
14257
14258         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
14259         after label).
14260
14261         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
14262         gdk_error_code as GDKVAR, as they are referred outside GDK.
14263
14264         * gdk/win32/makefile.msc: Update.
14265
14266         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
14267         tweaks. Check only if at least one of those Unicode subrange bits
14268         we care for is set. If no code page bits are set, guess (wildly)
14269         based on the charset.
14270
14271         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
14272
14273         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
14274         non-NULL.
14275
14276         * gtk/gtkdnd.c
14277         * gtk/gtklayout.c
14278         * gtk/gtkplug.c
14279         * gtk/gtkselection.c
14280         * gtk/gtksocket.c
14281         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
14282         appropriate. There must be a cleaner way to handle this?
14283
14284         * gtk/gtkrc.c: Must include windows.h on Win32.
14285
14286         * gtk/testgtk.c: No need to include gdkx.h.
14287
14288         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
14289
14290 1999-12-07  Tor Lillqvist  <tml@iki.fi>
14291
14292         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
14293         the rbearing is set to the same as the width, but this should be
14294         fixed.
14295
14296 1999-12-06  Tor Lillqvist  <tml@iki.fi>
14297
14298         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
14299         function. If Windows doesn't tell us what Unicode subranges a font
14300         covers, guesstimate based on the codepages it covers. This will
14301         hopefully help those Windows versions or fonts that don't give us
14302         any useful Unicode subrange information with GetTextCharsetInfo.
14303         Call this function in gdk_font_load_internal.
14304
14305         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
14306         minor changes.
14307
14308 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
14309
14310         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
14311         New function, long needed.
14312
14313 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
14314
14315         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
14316         only_if_exists argument of gdk_atom_intern to
14317         bool.
14318
14319 1999-11-25  Tor Lillqvist  <tml@iki.fi>
14320
14321         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
14322         Fix two copy&paste errors.
14323
14324         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
14325         win32 has changed.
14326
14327         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
14328         GdkWin32SingleFont struct.
14329
14330         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
14331         subranges of loaded fonts. Clear font signature first, in case
14332         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
14333         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
14334
14335         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
14336         Unoffset clip region.
14337
14338 1999-11-23  Tor Lillqvist  <tml@iki.fi>
14339
14340         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
14341         event->any.window before calling filter functions.
14342
14343 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
14344
14345         * gtk/gtkgamma.h: Adapt cast macros to standard.
14346
14347 [ Merges from 1.2 ]
14348
14349 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
14350
14351         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
14352         If translation does not include a '/', use entire
14353         translation instead of crashing.
14354
14355 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
14356
14357         * docs/gtk_tut.sgml:
14358         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
14359
14360 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
14361
14362         * gtk/gtkselection.c (gtk_target_list_remove): Use
14363         g_list_remove_link, not g_list_remove.
14364
14365         [ From Geert Bevin <gbevin@thunderstorms.org> ]
14366         
14367 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
14368
14369         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
14370         statement upon unselection (how the heck did that slip in?).
14371
14372 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
14373
14374         * gtk/gtktext.c (gtk_text_freeze): 
14375         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
14376         in frozen state (and aparently crashes). patch provided by Anders
14377         Melchiorsen <and@kampsax.dtu.dk>.
14378
14379 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
14380
14381         * fix insensitive default/focus widget activation,
14382         reported by Matt Goodall <mgg@isotek.co.uk>.
14383
14384         * gtk/gtkwindow.c (gtk_window_key_press_event): 
14385         (gtk_window_activate_default):
14386         (gtk_window_activate_focus):
14387         return handled=FALSE for actiavtion of insensitive default
14388         widgets. return handled=TRUE for activation of insensitive
14389         focus widgets. don't activate in either case.
14390
14391 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
14392
14393         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
14394         and $glib_cflags to match library order and in the
14395         theory that an old version of GLib is more likely to
14396         be in the include directory for X then vice-versa.
14397         (Bug #2776)
14398
14399 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
14400
14401         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
14402         to determine the locale for fontsets, not LC_MESSAGES;
14403         the user may want English messages with a handling
14404         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
14405         will still be broken) (Bug #2891)
14406
14407 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
14408
14409         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
14410
14411 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
14412
14413         * gtk/gtkrc.ko: Changed the Korean default fontset.
14414
14415 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
14416
14417         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
14418         where when scrolling to the left or top double exposes
14419         were done, causing major slowdowns.
14420
14421 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
14422
14423         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
14424         names to lowercase and alphanumeric, before looking
14425         them up.
14426
14427         * gtk/Makefile.am: Install codeset variant gtkrc files
14428         with normalized names.
14429
14430 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
14431
14432         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
14433         popup menus when the menu is already visible, but its parent
14434         is still hidden, (happens after tornoff window got hidden).
14435
14436 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
14437
14438         * gtk/Makefile.am (install-data-local): Fix
14439         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
14440         deleted, causing error messages on install.
14441
14442 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
14443
14444         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
14445         the handle as well, since we now sometimes ignore
14446         exposes on the handle while resizing.
14447
14448 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
14449
14450         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
14451         extra g_free introduced in one of the last one or two 
14452         commits.
14453
14454 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
14455
14456         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
14457         consistent, put each style that a gtkrc.* file creates
14458         in a unique namespace, remove old files before installing.
14459
14460 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
14461
14462         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
14463         gtk_rc_init is called multiple times. (Yes, people who
14464         do that have bugs in their code.)
14465
14466 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
14467
14468         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
14469         Remove it since it's generated by the Makefile anyway
14470
14471 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
14472
14473         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
14474         device->info.axes for core pointer.
14475
14476 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
14477
14478         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
14479         idle_id, to deal with obsolete, broken C libraries.
14480
14481 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
14482
14483         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
14484         allocation->x/y twice!
14485
14486         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
14487         consistent with gtk_vscale_pos_trough().
14488
14489 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
14490
14491         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
14492         be queueing a resize on a toplevel container between
14493         the time we show it and when we map it. So, we need
14494         to test GTK_WIDGET_VISIBLE() for toplevels, and only
14495         use GTK_WIDGET_DRAWABLE() for child windows.
14496
14497 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
14498
14499         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
14500         (fixes bug #2144)
14501
14502 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
14503
14504         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
14505         container DRAWABLE (instead of VISIBLE), so we don't queue
14506         resizes on non-toplevel containers.
14507
14508 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
14509
14510         * gtk/gtkselection.[ch]: Make the data argument
14511         const guchar *.
14512
14513 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
14514
14515         * gtk/gtkwindow.c: Try to behave sensibly if 
14516         the focus widget is the window itself. (Should
14517         we allow this at all?)
14518
14519 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14520
14521         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
14522         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
14523         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
14524         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
14525         in prototypes and implementations consistent (Tomas Ogren).
14526
14527         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
14528         before the widget is unparented (reported by damon).
14529
14530         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
14531         since we provide unsigned data anyways.
14532
14533 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
14534
14535         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
14536         the call to gtk_tooltips_layout_text() until later.
14537
14538         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
14539         Call gtk_widget_ensure_style() before using the style.
14540
14541 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
14542
14543         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
14544         for old widgets that don't propagate draws to all
14545         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
14546
14547 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
14548
14549         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
14550         for a redraw but just the widget that requested the resize.
14551
14552 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
14553
14554         * gtk/gtkcontainer.c: added new widget level method
14555         gtk_container_set_reallocate_redraws() and a GtkContainer flag
14556         reallocate_redraws : 1 to reflect the setting, exported this through
14557         the argument system as a boolean ::reallocate_redraws.
14558
14559         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
14560         on the widget because the allocation changes, do so as well for
14561         widget->parent if the parent has reallocate_redraws set to TRUE.
14562         with that containers requesting reallocation redraws get automatically
14563         redrawn if their children changed allocation (this unfortunately
14564         affects also other children that didn't change allocation, but we
14565         cannot work around that before 1.3).
14566
14567 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14568
14569         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
14570         _and_ height are >0 (not _or_).
14571
14572         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
14573         instead of gtk_container_queue_resize(), which is a core gtk internal
14574         function (must have been on crack when i queued that).
14575
14576         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
14577         we can check more reliably if we want to discard expose events.
14578         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
14579         flag.
14580         
14581         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
14582         we simply trust these events. for deciding whether to discard exposes,
14583         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
14584         
14585 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
14586
14587         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14588         queues of areas that are completely off screen.
14589
14590         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
14591         logic for handleboxes.
14592
14593         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
14594         check on width/height.
14595
14596 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
14597
14598         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
14599         we are fine with using $@ the way we do (if we actually encounter
14600         brokeness with $@ in VPATH builds because of additional path prefixes,
14601         we need to use $(@F) actually).
14602
14603 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
14604
14605         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
14606         short lived bugs, that would allow language bindings to do surgeries
14607         to our guts.
14608
14609 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
14610
14611         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
14612         where comparison was being done against an uninitialized
14613         value causing intermittant results depending on
14614         compiler flags. Also make it clearer that we aren't
14615         ever initializing the child as 0x0 (though this will
14616         be caught in gtk_widget_size_allocate())
14617
14618 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
14619
14620         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
14621         gtk_window_unset_transient_for() call after we do checks
14622         involving the old transient parent.
14623         [ From Lance Capser <lmc@cyberhighway.net> ]
14624
14625 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
14626
14627         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
14628         an empty file.
14629
14630 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
14631
14632         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
14633         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
14634
14635 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
14636
14637         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
14638         `$@' is valid only in the build dir, not after we've done 
14639         `cd $srcdir'.  Also use `test -f' instead of less portable
14640         `test -e'.
14641
14642 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
14643
14644         * gtk/gtktext.c (correct_cache_insert): Rewrite
14645          for simplicity, and hopefully correctness.
14646          (Fixes bug #1322, which was a segfault when
14647           on some insertions with the properties around
14648           the insertion set up just wrong.)
14649
14650         * gtk/gtktext.c (gtk_text_adjustment): When we receive
14651          a "changed" signal, clamp the new value to the adjustment
14652          bounds to avoid segfaulting if someone tries to change
14653          the adjustment to a bogus value. (Bug #1795)
14654
14655 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14656
14657         * gtk/gtkmain.c: Ignore unexpected destroy notifies
14658         for children, for toplevel windows handle them
14659         like delete_event.
14660
14661         * gtk/gtkplug.c: Add an unrealize handler so that
14662         we unref plug->socket_window when we are done
14663         with it.
14664
14665 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
14666
14667         * gtk/gtktext.c (clear_area): Fix stupid signedness
14668          problem that was causing background to sometimes
14669          be misaligned.
14670
14671 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
14672
14673         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
14674         
14675         * gtk/gtkmenu.c (gtk_menu_position): Make
14676          sure we never position menus with negative x, y,
14677          since gtk_widget_set_uposition() can't handle that.
14678
14679         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
14680          Modify the positioning code a bit so that we always
14681          put the top-left corner onscreen. (This is for
14682          UI reasons, gtk_menu_position() now takes care of
14683          gtk_widet_set_uposition() brokeness.)
14684
14685 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
14686
14687         * gtk/Makefile.am: fixed up things for -jx, x > 1.
14688
14689 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
14690
14691         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
14692           RC style that is passed in. The lack of the ref
14693           before was a bug. If people worked around this
14694           bug, this will introduce a slight memory leak
14695           in their code. The code should typically look like:
14696
14697             rc_style = gtk_rc_style_new ();
14698             [...]
14699             gtk_widget_modify_style (widget, rc_style);
14700             gtk_rc_style_unref (rc_style);
14701
14702         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
14703           the style if it was already set.
14704
14705         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
14706           style if it was set before.
14707
14708 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14709
14710         * gtk/testgtk.c (main): Add a check to see if we
14711           are being run from the correct directory and
14712           to quit nicely if we are not.
14713
14714         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
14715           static.
14716
14717 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
14718
14719         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
14720
14721         * gtk/gtkwindow.c:
14722         queue resizes unconditionally (gtk_widget_queue_resize will figure
14723         what to do if the window is not realized).
14724         (gtk_window_move_resize): only recenter the window
14725         for GTK_WIN_POS_CENTER_ALWAYS.
14726         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
14727         the same way as GTK_WIN_POS_CENTER.
14728
14729 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
14730
14731         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
14732         with (!(info->last_flags & GDK_HINT_POS)) instead of
14733         (!info->last_flags & GDK_HINT_POS).
14734
14735         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
14736         new_height unconditionally, because we use these values even if
14737         !default_size_changed && !hints_changed.
14738         comented the (default_size_changed || hints_changed) case with
14739         respect to resize rejects from the window manager.
14740
14741         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
14742         in the zvt condition hack, since this includes the window hints, set
14743         the hints after the handling_resize case.
14744
14745         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
14746         window is initially shown with to the geometry.
14747
14748 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
14749
14750         * gtk/gtkwindow.c (gtk_window_move_resize):
14751         s/size_changed/default_size_changed/g so i know what's
14752         really going on (frying brain on smaller flame now).
14753
14754 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
14755
14756         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
14757         we have size_changed upon handling_resize. this is a gross
14758         workaround for the broken zvt widget and should be removed in
14759         1.3 again (search for FIXME).
14760         Owen provided an accurate comment for this:
14761
14762         /* We could be here for two reasons
14763          *  1) We coincidentally got a resize while handling
14764          *     another resize.
14765          *  2) Our computation of size_changed was completely
14766          *     screwed up, probably because one of our children
14767          *     is broken. It's probably a zvt widget.
14768          *
14769          * For 1), we could just go ahead and ask for the
14770          * new size right now, but doing that for 2)
14771          * might well be fighting the user (and can even
14772          * trigger a loop). Since we really don't want to
14773          * do that, we requeue a resize in hopes that
14774          * by the time it gets handled, the child has seen
14775          * the light and is willing to go along with the
14776          * new size. (this happens for the zvt widget, since
14777          * the size_allocate() above will have stored the
14778          * requisition corresponding to the new size in the
14779          * zvt widget)
14780          *
14781          * This doesn't buy us anything for 1), but it shouldn't
14782          * hurt us too badly, since it is what would have
14783          * happened if we had gotten the configure event before
14784          * the new size had been set.
14785          */
14786
14787 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
14788
14789         * gtk/gtkrc.c: deal properly with the fact that RC
14790           style lists may include rc styles more than once.
14791
14792         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
14793           unused static function.
14794
14795         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
14796           stack of directories of RC files currently being
14797           parsed and implicitely add them to pixmap path.
14798           
14799           This fixes a bug where the directory would get
14800           appended then overwritten by pixmap_path declarations.
14801
14802           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
14803
14804         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
14805           theme's exit function. (Patch from Peter Wainwright,
14806           bug #1454)
14807
14808         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
14809           Add a destroy() handler to take care of removing
14810           group for menu item. (Fixes bug #1197)
14811
14812         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
14813           in warning message.
14814
14815 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
14816
14817         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
14818         roundtrip to figure window's width and height, since we know that
14819         anyways from widget->allocation.
14820
14821 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
14822
14823         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
14824           the hints after we request the new size.
14825
14826 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
14827
14828         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
14829           GTK_WIDGET_REALIZED() assertion - we can compute the
14830           hints before we are realized.
14831
14832         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
14833           hint changing so that we have a value of hints_changed
14834           when we decide whether to constrain the window size.
14835
14836         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
14837
14838         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
14839         change back to G_MAXINT.
14840
14841 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
14842
14843         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
14844         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
14845         contain uncluttered values.
14846         (gtk_window_compute_hints): simply assert that window is realized
14847         and that geometry_info is valid, since we rely on this anyways.
14848         (gtk_window_constrain_size): major cleanups to the code.
14849         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
14850         for the base size, instead of the minimums. use 32767 as max width
14851         and height (like in gtkwindow.c) instead of G_MAXINT.
14852
14853 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
14854
14855         * cleaned up the GtkContainer.need_resize flag handling mess, we
14856         only need to force resize requests when we were prematurely
14857         realized, or our widget tree was modified when we were temporarily
14858         hidden. handling these cases directly upon showing the window (i.e.
14859         while the GdkWindow is still unmapped) avoids the need to wait for
14860         a configure event response and therefore makes the GUI more snappier
14861         and avoids blank windows during the roundtrip.
14862
14863         * gtk/gtkwidget.c:
14864         (gtk_widget_hide): 
14865         (gtk_widget_show): don't queue resizes on toplevels, they know how
14866         to deal with matters.
14867
14868         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
14869         flag directly for not visible resize containers and spare us unecessary
14870         signal emissions.
14871
14872         * gtk/gtkwindow.c:
14873         (gtk_window_realize): if we need to enforce premature size allocation,
14874         queue a container resize so we are correctly resized later on.
14875         (gtk_window_init):
14876         (gtk_window_size_request):
14877         don't freak around with the ->need_resize flag,
14878         gtk_container_queue_resize() will care about that.
14879         (gtk_window_show):
14880         handle initial resizing issues here, we can handle matters better in
14881         this place, especially since we know that our GdkWindow is still
14882         unmapped.
14883         (gtk_window_move_resize):
14884         don't care about ->need_resize at all.
14885         handle size changes properly that occoured while we waited for a
14886         configure event.
14887
14888 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
14889
14890         * gtk/gtkwidget.c (gtk_widget_set_uposition):
14891         * gtk/gtkwindow.[hc] (gtk_window_reposition):
14892         Move the hint setting code from gtk_widget_set_uposition
14893         to here; set the hints so that we respect any previously
14894         set geometry hints.
14895
14896         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
14897         change the window hints here or move the window here,
14898         let that happen in gtk_window_move_resize().
14899
14900 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
14901
14902         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
14903         to already queued resizes (and therefore redraws) on a widget, check
14904         its anchestry as well.
14905
14906         * gtk/gtkcontainer.c:
14907         (gtk_container_queue_resize): clear resize widgets for resize
14908         containers before aborting prematurely. this is especially important
14909         for toplevels which may need imemdiate processing or their resize
14910         handler to be queued.
14911         (gtk_container_dequeue_resize_handler): added new internal function for
14912         gtkwindow.c.
14913
14914         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
14915         configure event, take possible changes in window position into account
14916         as well.
14917         if we request a new window size, queue up a resize handler that will
14918         last until the configure event response arrives.
14919         combined the ->need_resize case (initial show) with the general size
14920         (hints) changed case and added even more comments.
14921         if !auto_shrink, only revert to the old allocation if the new size
14922         is smaller than the current allocation.
14923
14924 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
14925
14926         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
14927                            gtk_window_set_geometry_hints
14928                            gtk_window_set_default_size):
14929         When hints are set, queue a resize so that the hints will
14930         be eventually reset on the toplevel.
14931
14932         * gtk/gtkwindow.c (gtk_window_show): Use
14933         gtk_window_compute_default_size(). Clear the need_resize flag
14934         on the initail map so that we don't unnecessarily trigger the
14935         resize code.
14936
14937         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
14938         into separate functions. Compare the hints we are setting
14939         with what we set last time so that we can accurately
14940         tell when we need to reset the hints.
14941
14942         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
14943         function to figure out the size from requisition
14944         and default_size.
14945
14946         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
14947         from fvwm to constrain a size to the geometry hints.
14948
14949         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
14950         to compare two sets of geometry hints.
14951
14952         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
14953         from gtk_window_set_hints(), just compute the hints,
14954         don't set them.
14955
14956         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
14957         code from gtk_window_move_resize() to separate function,
14958         rationalize a bit.
14959
14960 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
14961
14962         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
14963         structure into a new private structure.
14964
14965         * gtkrc.c: Split GtkRcStyle into public/private.
14966         In the private part, add a list of pointers to the
14967         RcStyle lists this RcStyle participates in.
14968
14969         * gtkrc.c: When a RcStyle is free, remove all
14970         lists referencing it from the 
14971         realized_style_ht hash, and free those lists.
14972         
14973         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
14974         gtk_rc_init(), since that adds the default styles
14975         to the list of parsed RC files again.
14976
14977         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
14978         
14979 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
14980
14981         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
14982         checks that ensure that a widget's allocation is at least 1 in width
14983         and height. (GNOME note: this doesn't affect old panel code anymore,
14984         because GtkSocket will request width and height of at least 1 since
14985         Fri Jul 23).
14986
14987         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
14988         allocated yet (happens if the user realizes the window prematurely),
14989         size request and allocate it.
14990         (gtk_window_size_allocate): guard against guint underflows.
14991
14992 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
14993
14994         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
14995         in gtk_built_sources, so gtk.defs gets built prior to all other
14996         sources.
14997
14998 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14999
15000         * gtk/Makefile.am:
15001         invoke indent on gtkmarshal.*. 
15002         rewrote source generation rules, use COPYING as oldest source tag for
15003         a piggyback rule to generate all sources from (don't touch it ;).
15004         major cleanups, strip spaces on build rules for GNU Make.
15005
15006         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
15007         source and target files from commandline arguments. don't invoke indent.
15008
15009 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15010
15011         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15012         notebook after switch to avoid drawing problems.
15013         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15014         
15015         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15016         show them instead. 
15017         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15018
15019 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15020
15021         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15022         notebook after switch to avoid drawing problems.
15023         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15024         
15025         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15026         show them instead. 
15027         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15028
15029 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
15030
15031         * gtk/gtkwindow.c:
15032         we use window->need_resize from configure_event now, to indicate that
15033         the gtkwindow should keep its allocation (e.g. because the user resized
15034         the window through window manager handles). resize_count is now reliably
15035         used to figure whether we got the allocation we requested from the
15036         window manager.
15037         configure events get queued as resizes now, the real stuff (size
15038         computation and allocation) now only goes on in gtk_window_move_resize().
15039         GtkWindow's requisition now contains its *real* requisition (like all
15040         other widgets), *not* taking usize into account.
15041         geometry_info->last_{width|height} is now updated from set_hints() only
15042         so it always contains the last hints we set for the window manager.
15043         made some event handlers return TRUE instead of FALSE.
15044         the overall code should be much more straight forward now, and the
15045         significant code portions are accompanied by comments now.
15046         (gtk_window_set_hints):
15047         removed requisition argument and made it
15048         fetch the requisition through gtk_widget_get_child_requisition.
15049         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
15050         does that now.
15051         (gtk_window_show):
15052         ensure that the widget is realized before calling 
15053         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
15054         ensure that we got properly size requested and allocated before
15055         realization.
15056         (gtk_window_configure_event):
15057         ignore plain window moves, or reallocate the widget tree through the
15058         resize queue otherwise.
15059         (gtk_window_move_resize):
15060         mostly rewrote this function to figure window manager hints more
15061         reliably, coalesce window moves and resizes to reduce configure events
15062         and do actuall size allocations.
15063
15064 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15065
15066         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
15067         that have a resize pending, because a redraw is already queued for them.
15068
15069         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
15070         hack to clear resize_widgets.
15071
15072         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
15073         for resize containers prior to size allocation. (this is also a bit
15074         ugly, but avoids side effects for stopped emissions and is thus more
15075         reliable).
15076         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
15077
15078         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
15079         function from gtk_tooltips_expose, as we connect to ::expose_event
15080         *and* ::draw now.
15081
15082 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15083
15084         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
15085         checks.
15086         (gtk_target_list_unref): Likewise.
15087
15088         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
15089
15090 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
15091
15092         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
15093         guard against division by zero. (Fixes bug #1339)
15094
15095 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
15096
15097         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
15098         Prevent the trivial leak of information of allowing
15099         word motion when the entry is not visible.
15100
15101 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
15102
15103         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
15104         modality to error dialog as well as confirmation dialogs.
15105         (Bug #1803, reported by Rosanna Wing Sze Yuen)
15106
15107 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15108
15109         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
15110         tree->view_lines.
15111         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
15112
15113         * gtk/Makefile.am (install-data-local): Solaris apparently
15114         has various troubles with ln -f; use rm first instead.
15115         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
15116
15117 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
15118
15119         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
15120         use `cp' followed by `rm' (the `rm' was already there).
15121
15122 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15123         
15124         * configure.in: Fix autoconf warnings about cross compilation by
15125         trying to provide sane defaults for AC_TRY_RUN.
15126         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
15127         put them into $(srcdir) when generated. Also add a dependency of
15128         gtksignal.h on gtkmarshal.h for -j builds. 
15129         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
15130
15131 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
15132
15133         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
15134         GDK_THREADS_{LEAVE,ENTER} pair.
15135         (From Paul Fisher <pnfisher@redhat.com>)
15136
15137 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
15138
15139         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
15140         width and height are always >0 (owen).
15141
15142 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
15143
15144         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
15145         change that assured that a widget's allocated with and height are
15146         always >1, since this breaks *buggy* panel code. unfortunately this
15147         back-breaks the gimp's color selector.
15148
15149         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
15150         allocation is always >0 in width and height, before sending the
15151         configure event; this is a *gross* hack to get the gimp back to work.
15152         
15153         * marked both cases with TODO-1.3
15154
15155 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
15156
15157         * gtk/gtktext.c: Don't display wrap indicators when
15158         text is not editable and word wrap is on.
15159
15160 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
15161
15162         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
15163         option menus here as they are not derived from menu shell, assure that
15164         the option menu has a menu we can add items to.
15165
15166 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
15167
15168         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
15169         width/height to (gint) before calculations and check against < 0 to
15170         avoid guint wraparounds.
15171
15172 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
15173
15174         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
15175         width and height is never zero. sanity check both dimensions against
15176         32767 and issue a warning if the allocation is greater than that.
15177
15178 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
15179
15180         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
15181         to g_main_pending() as well.
15182
15183 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
15184
15185         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
15186         call to g_main_iteration() - since that will regrab
15187         GTK+ lock to process events.
15188
15189 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
15190
15191         * gtk/gtkwindow.c
15192         - Regularize with the rest of GTK+ by making widget->requisition
15193           not reflect the set_usize()
15194         - Always recompute geometry hints, then check if they
15195           changed before sending them to the X server. The
15196           previous checks for changes would fail in a number
15197           of circumstances. 
15198
15199 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
15200
15201         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
15202
15203 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
15204
15205         * gtk/gtkdnd.c:
15206         - Code cleanups
15207         - Instantaneously update on modifier key presses
15208         - Allow cancellation of the drag with Escape.
15209
15210 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
15211
15212         * gtk/testgtk.c (create_handle_box): Set the policy
15213         to auto_shrink - otherwise the appearance is rather
15214         strange when flipping between horizontal and vertical.
15215
15216 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
15217
15218         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
15219         (gtk_window_set_default_size): don't change a value if it's < 0.
15220         queue a resize.
15221
15222 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
15223
15224         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
15225
15226 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
15227
15228         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
15229         add an extra "/" when concating "/" + filename.
15230         (From Matt Grossman <mattg@oz.net>)
15231
15232 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
15233
15234         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
15235         for fg_gc if we set it for drawing pixmap.
15236
15237 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
15238
15239         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
15240         
15241         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
15242         already set, call old engine's destroy function and
15243         unref the old engine.
15244
15245 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
15246
15247         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
15248
15249 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
15250
15251         * gtk/gtkaccelgroup.h: mark certain functions as internal.
15252
15253 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
15254
15255         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
15256         expand behaviour changed.
15257
15258         * gtk/gtklabel.c (gtk_label_set_pattern):
15259         (gtk_label_set_justify):
15260         (gtk_label_set_line_wrap):
15261         don't bother invoking queue_clear, the reallocation does
15262         that for us, always free_words so the upcoming resize will
15263         relayout the label's contents.
15264
15265 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
15266
15267         * applied argument implementation patches from Elena Devdariani
15268         <elena@cogent.ca>.
15269
15270         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
15271         ::space_style, ::relief
15272         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
15273         * gtk/gtkpreview.c: ::expand
15274         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
15275         * gtk/gtknotebook.c: ::homogeneous
15276         * gtk/gtklabel.c: ::wrap
15277         * gtk/gtklist.c: ::selection_mode
15278         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
15279         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
15280         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
15281         * gtk/gtkclist.c: ::sort_type
15282         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
15283         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
15284
15285 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
15286
15287         * gtk/gtkstyle.c: Removed ill-thought-out part of last
15288         comment.
15289
15290 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
15291
15292         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
15293         counting right when we have to attach a new style
15294         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
15295
15296         * gtk/gtkstyle.c: Documented the refcounting
15297         peculularities of gtk_style_attach.
15298
15299 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15300
15301         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
15302         window types.
15303
15304         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
15305         of GTK_TOPLEVEL for creating the window.
15306
15307 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15308
15309         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
15310         the last argument (reported by Per Winkvist).
15311         
15312 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
15313
15314         Fixes for invisible XOR lines (Frank Loemker
15315         <floemker@TechFak.Uni-Bielefeld.DE>)
15316         
15317         * gtk/gtkclist.c (gtk_clist_realize): Always use
15318         a non-zero pixel for GDK_XOR.
15319
15320         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
15321         Use GDK_INVERT instead of GDK_XOR.
15322
15323 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
15324
15325         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
15326         signals if h/voffsets differ from adjustment values.
15327         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
15328
15329 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
15330
15331         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
15332         ::selection-done emissions up to the topmost menu shell.
15333
15334 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
15335
15336         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
15337         the user data on the window before destroying it.
15338
15339         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
15340         unrealize handler to take care of destroying 
15341         notebook->panel properly. 
15342         (Bug #1198 - Morten Welinder <terra@diku.dk>)
15343
15344         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
15345         of g_new and g_realloc to stop memory leak. (Actually,
15346         we could just use g_realloc(), but I'm not 100% sure
15347         that is portable).
15348         (Bug #1196 - Morten Welinder <terra@diku.dk>)
15349
15350 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15351
15352         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
15353
15354         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15355         for fontsets.
15356
15357         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
15358         with bin/button confusion.
15359
15360 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
15361
15362         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
15363         and show how preselection of radio items is done.
15364
15365 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
15366
15367         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
15368         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
15369         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
15370         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
15371         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
15372         * gtk/gtktable.c (gtk_table_attach): 
15373         * gtk/gtklist.c (gtk_list_insert_items): 
15374         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
15375         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
15376         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
15377         * gtk/gtkbin.c (gtk_bin_add): 
15378         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
15379         * gtk/gtkfixed.c (gtk_fixed_put): 
15380         * gtk/gtklayout.c (gtk_layout_put):
15381         general fixups to container_add logic. always realize child if
15382         child->parent is realized, only map the child and queue a resize
15383         if child and child->parent are both visible.
15384
15385 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
15386
15387         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
15388         instead of gtk_container_foreach to walk and unrealize children, so
15389         composite children get also unrealized.
15390         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
15391         (gtk_widget_map): assert that the widget is visible (basic constrain).
15392         (gtk_widget_real_map): assert that the widget is realized (basic
15393         constrain).
15394
15395 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
15396
15397         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
15398
15399 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
15400
15401         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
15402         file for iso-8859-2 locales.
15403
15404         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
15405
15406 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
15407
15408         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
15409          (Pointed out by andy@rz.uni-karlsruhe.de and others).
15410          Remove some suspicious and useless lines. 
15411
15412 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
15413
15414         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
15415         width,height = 0, 0 to mean - here to edge of window,
15416         instead of -1, -1, since the former is all we support.
15417
15418 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
15419
15420         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
15421         when removing from quit_functions list.
15422
15423 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
15424
15425         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
15426
15427 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
15428
15429         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
15430          When redrawing characters on non-visible entry, use appropriate
15431          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
15432
15433 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
15434
15435         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
15436         from drag coordinates.
15437         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
15438         use drag_dest_cell.
15439
15440         * gtk/gtktree (drag_dest_cell)
15441         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
15442         (Bug #1129)
15443
15444 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
15445
15446         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
15447         translate_* fields.
15448         (gtk_item_factory_finalize): invoke translate_notify independant from
15449         translate_data.
15450         (gtk_item_factory_set_translate_func): likewise.
15451         (gtk_item_factory_destroy): only remove ifactory pointer from those
15452         widgets that belong to us (stupid me).
15453
15454 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
15455
15456         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
15457         rc_style list when lookup succeeeds.
15458
15459 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
15460
15461         * gtk/gtkctree.c (resync_selection): 
15462         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
15463         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
15464         bug.
15465
15466 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
15467
15468         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
15469         Add some missing GDK_THREADS_ENTER()/LEAVE around
15470         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
15471
15472 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
15473
15474         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
15475         rather than emit_by_name.
15476
15477         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
15478         on the widget across multiple signal emissions.
15479         (gtk_editable_delete_text): same here.
15480         (gtk_editable_class_init): set widget_class->activate_signal after
15481         editable_signals[ACTIVATE] has been created.
15482
15483 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
15484
15485         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
15486         position here prematurely -- we might not have the
15487         right ->min_position and ->max_position yet.
15488
15489 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15490
15491         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
15492         Add error traps so if the other end of the connection
15493         dies, we survive.
15494
15495         * gtk/gtkselection.c (gtk_selection_notify): Clean
15496         up properly when selection property retrieval fails.
15497         
15498         * gtk/gtkselection.c (gtk_selection_request): Correctly
15499         reject SelectionRequest notifies where the handler
15500         returns no data.
15501
15502 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15503
15504         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
15505         when we've previously highlighted.
15506
15507         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
15508         emit two "drag_leave" signals for Motif drops.
15509
15510         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
15511         back the correct status messages when dropping from
15512         Motif onto a proxy window that is rejecting the
15513         drop.
15514
15515 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
15516
15517         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
15518         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
15519         to compare two argument values. added gtk_arg_to_valueloc() to set a
15520         variable from an arg through its location (pointer).
15521
15522         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
15523         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
15524         as gfloat*, uchars are collected as guchar*, ints are collected as
15525         gint*, etc...
15526
15527 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
15528
15529         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
15530         Include <string.h> instead of <strings.h>.
15531
15532         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
15533         (actually, a lot more duplicate includes occur if
15534          you trace through the sequence of #include's)
15535         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
15536         
15537 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15538
15539         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15540         gtk-a-higuti-990322-[0-3]
15541
15542         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15543         that was causing -DX_LOCALE not to work.
15544
15545         * gtk/gtkrc.c (gtk_rc_init):
15546         X_LOCALE will never have LC_MESSAGES defined
15547
15548 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
15549
15550         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
15551         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
15552
15553         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
15554         left/right as well (gtk-michael-980726-0.patch.gz).
15555
15556         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
15557         for pointer values, use gchar instead of char. fixed uline allocation
15558         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
15559         chunks instead of G_ALLOC_ONLY.
15560         (gtk_label_size_request): always alter requisition as passed and leave
15561         widget->requisition alone.
15562         (gtk_label_set_text): allow NULL strings.
15563         (gtk_label_new): likewise.
15564
15565 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
15566
15567         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
15568
15569 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
15570
15571         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
15572         *and* mapped (i.e. drawable).
15573         (gtk_bin_expose): only send exposes to drawable children.
15574
15575         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
15576         (gtk_box_expose): only send exposes to drawable children.
15577
15578         * gtk/gtkhscale.c (gtk_hscale_draw): 
15579         * gtk/gtkvscale.c (gtk_vscale_draw):
15580         hm, this is an ugly one. we first compute the size of our trough area
15581         here (window relative) and then check intersection with the draw_area
15582         which is parent relative because we're a NO_WINDOW widget, so we need
15583         to offset the trough area by allocation.x and allocation.y before the
15584         check. (this must not be done for the background area though, since
15585         that's already computed parent relative).
15586
15587 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
15588
15589         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
15590         unrealize title buttons.
15591
15592 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
15593
15594         * gtk/gtkclist.c (gtk_clist_column_title_passive)
15595         (gtk_clist_column_title_active): 
15596         only connect/disconnect to GtkWidgetClass::event to block mouse events.
15597
15598         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
15599         zero initialize event, removed superfluous gdk_window_get_pointer call
15600
15601         * gtk/gtklist.c (gtk_list_vertical_timeout)
15602         (gtk_list_horizontal_timeout): removed superfluous
15603         gdk_window_get_pointer call
15604
15605 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15606
15607         * plugging problems reported by "Bruce Mitchener, Jr."
15608         <bruce@puremagic.com> due to a purify session.
15609
15610         * gtk/gtkstyle.c:
15611         (gtk_style_ref): 
15612         (gtk_style_unref): assert ref_count to be > 0.
15613
15614         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
15615         the requisition.
15616         (gtk_clist_set_shift): likewise.
15617
15618         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
15619         adjustments.
15620
15621         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
15622         event before sending it and set send_event to TRUE (which needs to
15623         be done for *all* synthesized events).
15624         (gtk_list_vertical_timeout): likewise.
15625
15626         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
15627         leaks.
15628
15629         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
15630         to TRUE when synthesizing events.
15631
15632 [ *** end of merges from 1.2 *** ]      
15633         
15634 1999-11-21  Tor Lillqvist  <tml@iki.fi>
15635
15636         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
15637         (or copied from gdkconfig.h.win32 on Win32, sigh).
15638
15639         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
15640
15641         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
15642
15643         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
15644
15645         * gdk/gdkconfig.h.win32: New file.
15646
15647         * gdk/win32/makefile.cygwin: Build just a static archive here.
15648
15649         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
15650         for the DLL from the static archive built above.
15651
15652         * gdk/gdk.def: Moved here from the win32 subdirectory.
15653
15654         * gdk/win32/*: Adapt for the changed private struct organisation.
15655
15656         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
15657
15658 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
15659
15660         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
15661         for wheel mice (buttons 4 and 5).
15662
15663 1999-11-18  Tor Lillqvist  <tml@iki.fi>
15664
15665         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
15666         drawables use just the pixel field in the foreground and
15667         background GdkColor of the GdkGC.
15668
15669         gdk_gc_set_{fore,back}ground() are called in the GIMP with
15670         GdkColors containing uninitialized (red,green,blue) fields, and
15671         just the pixel field filled in, and furthermore in the
15672         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
15673         It thus turns out that we really don't need to have the full
15674         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
15675         it later to have just the pixel values.
15676
15677 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
15678
15679         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
15680
15681 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
15682
15683         * docs/gtkfaq.sgml: threads example from Erik Mouw.
15684         New question on GtkLabel background colors.
15685
15686         * docs/gtk_tut.sgml:
15687           - Correct the example code callback
15688             function definitions.
15689           - Update the gtkdial example code, from Frans van Schaik.
15690           - Update setselection.c to current API.
15691
15692         * examples/Makefile examples/*/*.c: Update to code
15693         listed in tutorial.
15694
15695 1999-11-10  Tor Lillqvist  <tml@iki.fi>
15696
15697         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
15698         subrange table (from the "Developing International Software for
15699         WIndows 95 and Windows NT" book) was missing the Hangul syllable
15700         block... Get the loaded font's charset correctly.
15701
15702         (Note that this, and the other *-win32.c files, still really are
15703         the old ones, the win32 subdirectory is not ready for compilation
15704         yet after the reorg.)
15705
15706 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
15707
15708         * gtk/gtkclist.c: Fix off-by-one bug in parameter
15709         check.
15710
15711 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
15712
15713         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
15714         on results of XQueryDeviceState().
15715
15716 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
15717
15718         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
15719         we need to accesss only ->children. We need an accessor
15720         for the children.
15721
15722         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
15723         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
15724         to get rid of gdkx.h include.
15725         
15726         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
15727         and random references to 'None'.
15728
15729         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
15730         Get rid of unused #include <gdk/gdkx.h>
15731
15732         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
15733         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
15734         gdkconfig.h.
15735
15736 1999-11-08  Tor Lillqvist  <tml@iki.fi>
15737
15738         * gdk/win32/gdkdraw.c
15739         * gdk/win32/gdkfont.c
15740         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
15741         following yesterday's changes. (Unrelated to Owen's reorg.)
15742
15743 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
15744
15745         * gdk/x11/gdkinput-gxi.c: Add missing include,
15746           fix GdkWindowPrivate => GdkDrawablePrivate.
15747
15748         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
15749
15750         * gdk/x11/Makefile.am (xinput_sources): Add missing
15751         backslash to fix building with --with-xinput=none
15752
15753 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
15754
15755         Move all X specific code into the x11/ directory.
15756         Aside from shuffling things around, did the following:
15757
15758        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
15759          gdk_arg_context_* - a simple argument parsing system
15760          in the style of popt.
15761
15762        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
15763          gdk/x11/gdkprivate-x11.h:
15764          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
15765          add ->klass and ->klass_data fields. The klass_data
15766          field points to an auxilliary structure that is
15767          windowing system dependent.
15768
15769        * gdk/gdkfont.c: Make most of the measurement functions
15770          simply wrappers around gdk_text_extents().
15771
15772        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
15773          _gdk_font_strlen() function that hides the weird
15774          behavior in gtk+-1.[02] where a string is interpreted
15775          differently for 8-bit and 16-bit fonts.
15776
15777        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
15778          to store common code for synthesizing double/triple
15779          press events.
15780         
15781        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
15782          Make all the function that modify an existing GC
15783          simply wrappers around gdk_gc_set_values().
15784          
15785        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
15786          for throwing out later.
15787
15788        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
15789          GdkImagePrivate and GdkColormapPrivate to have a
15790          windowing system dependent part (GdkFontPrivateX etc.)
15791          that "derives" from the system-independent part.
15792
15793        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
15794          Got rid of the included-source-files for XInput in
15795          favor of automake conditionals. (Which didn't exist
15796          when XInput support was originally added.)
15797
15798        * gdk/gdkrgb.c: Remove the visual id from the debugging
15799          statements since that is X11 specific; print out
15800          type/depth info instead.
15801          
15802
15803 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
15804
15805         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
15806         loading duplicates of hashed fonts.
15807
15808         * gdk/gdk.c (gdk_keysym_convert_case): rename
15809         gdk_XConvertCase to gdk_keysym_convert_case, allow
15810         results to be NULL in the GTK+ style.
15811
15812         * gdk/gdkcompat.h: Started compatibility header
15813         for renames.
15814
15815 1999-11-07  Tor Lillqvist  <tml@iki.fi>
15816
15817         * gdk/win32/gdkprivate.h: New font private structures, related to
15818         fontsets.
15819
15820         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
15821         gdk_font_list_free(). On X11, will just be wrappers to
15822         XListFonts() and XFreeFontNames(). On Win32, the code previously
15823         in gtkfontsel.c is now here.
15824
15825         New function gdk_font_xlfd_create(). On X11 will get the FONT
15826         property of the font (for GDK_FONT_FONTs), or call
15827         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
15828         builds a XLFD style name from the font information in the LOGFONT
15829         struct(s).
15830
15831         New function gdk_font_xlfd_free(), which correspondingly frees the
15832         string returned by gdk_font_xlfd_create().
15833
15834         Implement fontsets on Win32. Add a function that iterates over a
15835         wide char string and calls a callback function for each substring
15836         of wide chars from the same Unicode subrange (and thus probably
15837         available in the same real font).
15838
15839         Improve the XLFD emulation a bit.
15840
15841         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
15842
15843         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
15844         Beta3, WM_IME_CHAR messages don't seem to contain the composed
15845         multi-byte char as with the Active IMM on Win9x. Oh well, handle
15846         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
15847         ImmGetCompositionStringW() to get the composed Unicode chars.
15848
15849         * gdk/win32/gdkgc.c
15850         * gdk/win32/gdkdraw.c: Changes needed because of the font private
15851         struct changes.
15852
15853         * gdk/win32/gdk.def: Add the new functions.
15854
15855 1999-11-04  Tor Lillqvist  <tml@iki.fi>
15856
15857         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
15858         get the Platform SDK to get <dimm.h>.
15859
15860         * gdk/win32/gdkevents.c: More event handling fixes and
15861         simplification. Never generate motion events with is_hint true. We
15862         used to do that on bogus grounds earlier. Windows sends
15863         WM_MOUSEMOVE messages on button events even if the mouse hasn't
15864         moved, ignore these.
15865
15866         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
15867
15868         * gdk/win32/gdkglobals.c
15869         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
15870         the TrackMouseEvent function, and use it.
15871
15872         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
15873         char before calling WideCharToMultiByte in order to get a string
15874         for the window title.
15875
15876         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
15877
15878         * gdk/win32/gdk.def: Remove obsolete functions.
15879
15880         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
15881         /nodefaultlib and /defaultlib switches.
15882
15883         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
15884
15885 1999-10-31  Tor Lillqvist  <tml@iki.fi>
15886
15887         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
15888         EuroSign).
15889
15890         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
15891         same type as GdkWChar, especially on Win32.
15892
15893         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
15894
15895         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
15896         before passing to Windows GDI for drawing etc. Convert to the
15897         system default codepage before passing to Windows as window
15898         titles.
15899
15900         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
15901         support changing input locale on the fly.
15902
15903         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
15904         on-the-fly changes. Convert incoming characters from the current
15905         codepage to Unicode (and then to a UTF-8 multi-byte string) based
15906         on the current input language. Use keysym<->Unicode mapping tables
15907         and functions borrowed from xterm sources.
15908
15909         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
15910         editions of Win9x, use the ActiveX-based Active IMM (Input Method
15911         Manager) if available. IMEs and the Active IMM are available under
15912         the disguise of Chinese, Korean and Japanese support for IE and
15913         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
15914         support is present in all editions (as long as you install it).
15915
15916         Call DispatchMessage from gdk_events_queue() (and thus
15917         gdk_WindowProc()), instead of duplicating the code in
15918         gdk_WindowProc().
15919
15920         Reworked the grab handling and propagation code, factored out
15921         duplicated code snippets into separate functions. Other cleanups,
15922         too.
15923
15924         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
15925         the <dimm.h> header describing the Active IMM.
15926
15927         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
15928         just do the same as for "single" fonts.
15929
15930         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
15931         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
15932         the new keysyms from gdkkeysyms.h.
15933
15934         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
15935         fontset, so that gtkentry uses wide characters.
15936
15937         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
15938         GTk+'s system directory "gtk+", not "gtk".
15939
15940 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
15941
15942         * docs/gtkfaq.sgml: FAQ update
15943
15944 1999-10-21  Tor Lillqvist  <tml@iki.fi>
15945
15946         * gdk/win32/gdkprivate.h: Add more font private data.
15947
15948         * gdk/win32/gdkfont.c
15949         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
15950         fonts and strings. Now works much better. You still have to
15951         have a correct font selected, though. No fontset emulation yet.
15952
15953 1999-10-19  Tor Lillqvist  <tml@iki.fi>
15954
15955         * gtk/maketypes.awk: Use G_OS_WIN32.
15956
15957         * gtk/gtk.def: Add some missing entry points. Also some non-public
15958         ones, but PyGTK porter claims to need them.
15959
15960         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
15961         built-in type generation.
15962
15963 1999-10-14  Tor Lillqvist  <tml@iki.fi>
15964
15965         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
15966         GDK_FONT_FONT fonts (which is all we have for now, we don't
15967         emulate fontsets). The X11 version uses plain XDrawString in that
15968         case, too. The string passed to gdk_draw_text_wc seems to be in
15969         fact (at least, when used by gtkentry and gtktext) either in a
15970         single-byte charset, or a DBCS. Not Unicode.
15971
15972         This fixes the problem in gtkfontsel, where even if you had
15973         selected a font with a non-Latin1 charset (windows-greek, for
15974         instance), the preview still used Latin-1 glyphs.
15975
15976         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
15977         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
15978         (gdk_font_load): Recognize the demibold etc weights, even if we
15979         don't have the corresponding constants in the headers.
15980         (gdk_font_hash_insert): Use same hash mechanism as in the X11
15981         version. Should save font resources a bit, when we don't have
15982         multiple HFONTs for the same font.
15983
15984         * gdk/win32/gdkprivate.h: Add the names field as in the X11
15985         version.
15986
15987 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
15988
15989         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
15990         X values
15991
15992 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
15993
15994         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
15995         layout support (as mentioned on
15996         http://www.jcinteractive.com/gnome-ui/software/widgets/)
15997
15998 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
15999
16000         * gtk/fnmatch.c
16001         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
16002
16003 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
16004
16005         * configure.in (ALL_LINGUAS): Added Galician (gl)
16006
16007 1999-10-05  Tor Lillqvist  <tml@iki.fi>
16008
16009         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
16010
16011         * gdk/win32/gdkcompat.c: New file, actually provide an
16012         implementation for the deprecated functions. (Just temporarily.)
16013
16014         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
16015
16016         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
16017
16018         * gdk/win32/gdk.def gtk/gtk.def: Updates.
16019
16020 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
16021
16022         * configure.in: Added "uk" to ALL_LINGUAS.
16023         
16024 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
16025
16026         * configure.in: correct checking for BeOS check
16027
16028         * gdk/gdktypes.h
16029         * gtk/fnmatch.c
16030         * gtk/gtkfilesel.c
16031         * gtk/gtkitemfactory.c
16032         * gtk/gtkmain.[ch]
16033         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
16034
16035 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16036
16037         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
16038         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
16039         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
16040         by Bulgarian). 
16041
16042 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
16043
16044         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
16045         Fix a reference to window_private->destroyed.   
16046
16047         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
16048         (ugly) setting of an internal GdkWindow member to use
16049         a _slightly_ cleaner macro.
16050
16051         * gdk/gdkprivate.h: Split GdkWindowPrivate into
16052         GdkDrawablePrivate and GdkWindowPrivate.
16053         Add extra macros for accessing GDK_DRAWABLE_ components.
16054
16055         * *.[ch]: Massive adjustments for the above, use the
16056         new macros in a lot of places.
16057
16058 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
16059
16060         * gdk/gdktypes.h: Make GdkDrawable the base type,
16061         not GdkWindow.
16062
16063 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
16064
16065         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
16066
16067 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
16068
16069         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
16070
16071 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
16072
16073         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
16074         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
16075
16076         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
16077
16078         * docs/gtk-config.1: Now autogenerated.
16079         * docs/Changes-1.4.txt: started
16080         
16081 1999-10-03  Tor Lillqvist  <tml@iki.fi>
16082
16083         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
16084         to #ifdef also here.
16085
16086         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
16087         Owen did to the X11 backend.
16088
16089         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
16090         ScrollWindowEx when blitting inside a window, it can't be correct
16091         in the general case.
16092
16093         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
16094         WM_GETMINMAXINFO is easier.
16095
16096         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
16097         depth equal to the bitspixel value, not the visual's depth.
16098
16099         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
16100         to 24 even if the bitspixel value is 32.
16101
16102         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
16103         need to check for depth==32 when bpp==32, depth will always be 24.
16104
16105 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
16106
16107         * docs/Changes-1.4.txt: Started
16108         
16109         * gtk/Makefile.am (gdk_headers): Include all the new headers.
16110
16111         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
16112         
16113         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
16114         into C file.
16115         
16116         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
16117         header to gdkinputprivate.h.
16118
16119         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
16120         unused since before 1.2.
16121
16122 1999-09-30  Tor Lillqvist  <tml@iki.fi>
16123
16124         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
16125         expand possible hex escapes in the font family (put there by
16126         logfont_to_xlfd if the font name isn't a legal XLFD font family,
16127         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
16128         On Win32, add hex escapes here, too.
16129
16130 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
16131
16132         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
16133         to #ifdef GDK_WINDOWING_X11.
16134
16135 [ Merges from gtk-1-2 ]
16136
16137 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
16138
16139         * configure.in: fixed "GNU Make" check to pass with new make version
16140         3.77.95.
16141
16142 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
16143
16144         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
16145         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
16146         AM_PATH_GTK() macros don't get confused by the -pre1.
16147
16148 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16149
16150         * configure.in (REBUILD): Change check for perl5
16151           to check explicitely for v >= 5.002. (5.001
16152           does not work with our scripts.)
16153
16154 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
16155
16156         * configure.in: evaluate $PERL for the perl version check. added
16157         --disable-rebuilds to give the user an option to completely disable
16158         any source autogeneration rules.
16159
16160 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
16161
16162         * configure.in: evaluate $ac_make when checking for GNU Make.
16163
16164 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16165
16166         * docs/Makefile.am: added generation.txt.
16167
16168         * Makefile.am: require automake 1.4, build README from README.in and
16169         INSTALL from INSTALL.in in dist-hook.
16170         
16171         * README.in:
16172         * INSTALL.in: new files to autogenerate README and INSTALL from.
16173
16174         * configure.in: figure whether we have GNU Make
16175
16176         * docs/generation.txt: minor additions/corrections.
16177
16178 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16179
16180         * docs/gtkfaq.sgml: FAQ Update
16181
16182 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16183         
16184         * configure.in: Fix autoconf warnings about cross compilation by
16185         trying to provide sane defaults for AC_TRY_RUN.
16186
16187 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
16188
16189         * ltconfig
16190         * ltmain.sh: upgrade to libtool 1.3.3
16191
16192 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
16193
16194         * INSTALL: Indicate that the --with-glib= configure
16195         time flag is unsupported.
16196
16197 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
16198
16199         * docs/generation.txt: Added a file that gives
16200         documenation about the autogeneration process for
16201         various autogenerated files.
16202         
16203 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16204
16205         * configure.in (LIBS): Look for libgmodule in the
16206         right location.
16207
16208 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
16209
16210         * docs/gtk_tut.sgml: Removed references to
16211         code examples in my directory on gtk.org as
16212         they should all be in the tutorial now.
16213
16214         * docs/gtk_tut.sgml: Added sources for dial-test
16215         and scribble-xinput programs that were previously
16216         missing.
16217
16218 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
16219
16220         * TODO: Added entry about menu keyboard navigation, removed
16221         some finished items.
16222
16223 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
16224
16225         * acinclude.m4: Standardize on func_dgettext
16226         not func_gettext, so that the checks for dgettext
16227         actually are paid attention to.
16228
16229 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
16230
16231         * configure.in (LIBS): Add $INTLLIBS into $LIBS
16232         directly, rather than repeating the checks for
16233         gettext.
16234
16235         * INSTALL: Added information about gettext and
16236         NLS support.
16237
16238         * acinclude.m4 (LIBM): Check for dgettext, not
16239         just gettext. This should hopefully fix things wrt
16240         systems with old versions of GNU gettext installed.
16241
16242 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16243
16244         * configure.in (LIBS): Look for libgmodule in the
16245         right location.
16246
16247 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16248
16249         * autogen.sh: add --enable-maintainer-mode
16250
16251         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
16252
16253 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
16254
16255         * docs/gtk-config.1.in:
16256           docs/Makefile.am:
16257           configure.in: gtk-config is now generated.
16258
16259         * docs/gtk-config.1: Removed, now generated.
16260
16261 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
16262
16263         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
16264         handle CreateNotify itself, still put out a debuging message for
16265         --gdk-debug=events. made the ReparentNotify debugging message more
16266         verbose.
16267         wrap xcoords translation for ConfigureEvents into an error trap,
16268         a destroy event may already be pending, and in that case, the
16269         actuall coordinate values are not at all critical.
16270
16271 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
16272
16273         * gdk/gdkcc.c: Stop leaking the color_hash all over
16274         the place. Simplify and improve the logic.
16275
16276 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
16277
16278         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
16279         for prototypes and function implementations consistent (reported
16280         by Tomas Ogren).
16281
16282 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
16283
16284         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
16285         send_event set in debugging output.
16286         (gdk_compress_exposures): default initialize the event so we don't
16287         operate on bogus values (namely send_event).
16288
16289 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
16290
16291         * gdk/gdkwindow.c: When we receive an unexpected
16292         destroy notify on one of our windows, don't just
16293         warn about it, also mark our windows as destroyed.
16294
16295 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
16296
16297         * gdk/gdkfont.c (gdk_font_hash_insert): Add
16298           name => font and name => fontset hashes. The 
16299           name => fontset hash is a _big_ win since we
16300           weren't previously caching fontsets at all and loading
16301           fontsets is expensive. The name => font hash
16302           is less of a win, but it does save us from doing
16303           repeated XQueryFont calls on the same font.
16304
16305         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
16306           list so we can remove font/fontset from hash.
16307
16308 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16309
16310         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
16311           and slightly confusing test. [ XInternAtom (,,TRUE)
16312           will never return None ].
16313
16314 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
16315
16316         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
16317           gdk/gdkwindow.c (gdk_window_set_hints):
16318
16319         Don't omit setting the properties if flags == 0 -
16320         there may be an existing set of properties there
16321         already. (Very old bug. Would it be better to
16322         delete the property instead?)
16323
16324         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
16325           spelling error in comment.
16326
16327 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
16328
16329         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
16330           to avoid stomping over gdk_error_warnings.
16331
16332         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
16333           as (bits_per_pixel + 7) / 8. This gives the same
16334           result as before for multiples of 8, but actually
16335           a "reasonable" value for 1bit or 4bit displays.
16336
16337 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16338
16339         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
16340         GNU Make.
16341
16342 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
16343
16344         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
16345         discarding configure events.
16346
16347 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
16348
16349         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
16350         refcount is greater than zero.
16351
16352         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
16353
16354         * gdk/gdkfont.c (gdk_font_unref): Likewise.
16355
16356         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
16357
16358         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
16359
16360 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
16361
16362         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
16363         that format 32 => sizeof(item) == 4. It really is
16364         sizeof(long).
16365
16366 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
16367
16368         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
16369         core dump at all on X IO errors, only core dump
16370         if --enable-debug for X errors.
16371
16372 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
16373
16374         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
16375         unknown window:" message. disabled ConfigureNotify discarding code,
16376         because it led to events being processed out of order.
16377
16378 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
16379
16380         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
16381
16382         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
16383         we export this function, supress error warnings and don't reset the
16384         error code in the first half of this function.
16385
16386         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
16387         code (instead of just -1) so gdk_error_trap_pop() reveals something
16388         actually informative about the error that happened.
16389
16390         * gdk/*.c:
16391         don't rely on gdk_error_code being -1 if an error occoured, but just
16392         gdk_error_code != 0.
16393
16394 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
16395
16396         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
16397         pointer *before* invoking the filter function, so we at least don't
16398         crash if a filter is removed that is currently executed. window filters
16399         *really* need to be made truely reentrant at some point.
16400
16401 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
16402
16403         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
16404         PropertyNotify debug messages.
16405
16406 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
16407         
16408         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
16409         
16410         * gdk/gdkim.c: Fix cut-and-paste errors for 
16411         x/y and PreeditAttributes/StatusAttributes.
16412
16413 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16414
16415         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
16416         G_MAXINT to 2^16 to alleviate overflow problems in
16417         various window managers.
16418
16419 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16420
16421         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16422         for fontsets.
16423
16424 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
16425
16426         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
16427         Initialize size_hints.x and size_hints.y because kwm
16428         brokenly pays attention to them.
16429         (Bug #1181 -  Lars Heete <hel@admin.de>)
16430
16431 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
16432
16433         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
16434         return value of gdk_list_visuals(). 
16435         (Bug #1193 - Morten Welinder <terra@diku.dk>)
16436
16437 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
16438
16439         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
16440         XSetIMValues to (void *) when comparing to NULL, to workaround
16441         the problem of some compilers barfing since older X headers don't
16442         have the prototype for it.
16443
16444 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
16445
16446         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
16447         for pseudocolor where colormap->colors was double
16448         allocated.
16449
16450         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
16451         color value in the hash table with the pixel filled
16452         in so when we do later hash table lookups, the color
16453         value is correct.
16454         
16455 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
16456
16457         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
16458         making the call
16459
16460 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
16461
16462         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
16463         pointed out by Morten Welinder <terra@diku.dk>.
16464
16465 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16466
16467         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16468           default filter from the list
16469
16470 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16471
16472         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16473           default filter from the list
16474
16475 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
16476
16477         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
16478
16479         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
16480         g_strdup_printf instead of calcing the length separately
16481
16482 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
16483
16484         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
16485         that we don't do in many other places. (Fixing duplicate 
16486         #include of config.h)
16487
16488         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
16489         Otherwise, #ifndef XINPUT_NONE check in the latter
16490         doesn't work. (Bug #546)
16491
16492 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
16493
16494         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
16495         "None" case insensitive.
16496
16497 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16498
16499         * gdk/gdkselection.c: 
16500         Add error traps so if the other end of the connection
16501         dies, we survive.
16502
16503 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16504
16505         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
16506         dest_xid field into two fields - one for the window
16507         to send in messages, one to indicate the last looked
16508         up window for caching purposes. This is needed, so
16509         that Leave messages get the correct window.
16510
16511 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
16512
16513         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
16514         Fix warning created by people mucking around
16515         with the gsource API.
16516
16517         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
16518         Change mapping between GIOCondition and GdkInputCondition
16519         to match the way the Linux kernel does it. This should
16520         fix problems where closed pipes were no longer signalling
16521         GDK_INPUT_READ on systems with a native poll().
16522
16523 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
16524
16525         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
16526         explicitly for the string "None" - it is in the XPM
16527         spec and some servers treat unknown colors in odd ways
16528         (like asking the user!)
16529
16530 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16531
16532         * gdk/gdkevents.c: made "->" into a "." of previous change so
16533         it compiles
16534
16535 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
16536
16537         * gdk/gdkevents.c (gdk_compress_exposures): Set the
16538         window field of the event structure before calling
16539         user filters.
16540
16541 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16542
16543         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
16544         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
16545
16546 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
16547
16548         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
16549         intermediate text property - prevents major memory
16550         leak when gdk_use_mb.
16551         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
16552
16553 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16554
16555         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16556         gtk-a-higuti-990322-[0-3]
16557
16558         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
16559         sizeof(wchar_t) != sizeof (GdkWChar)
16560
16561         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16562         that was causing -DX_LOCALE not to work.
16563
16564         * gtk/gtkrc.c (gtk_rc_init):
16565         X_LOCALE will never have LC_MESSAGES defined
16566
16567         * gdk/gdk.c (gdk_init_check):
16568         Remove --xim-preedit and --xim-status from argv properly.
16569
16570         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
16571         that the client window is present on the X server
16572         before we pass it to the input method.
16573
16574 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
16575
16576         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
16577         if --display is specified on the command line, than
16578         the drag window will not be created on that display.
16579         
16580 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
16581
16582         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
16583         lookups with only_if_exists == TRUE were inserting
16584         bogus values into the atom cache.
16585
16586 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16587
16588         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
16589         then reset it to NULL.
16590
16591         * gdk/gdkcolor.c:
16592         (gdk_colors_free): 
16593         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
16594         key for g_hash_table_remove() in both functions, this prevents us
16595         from accessing possibly uninitialized portions of a GdkColor structure
16596         where we are only interested in its pixel value.
16597
16598 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16599
16600         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16601         font hash table, if we have a GdkFontPrivate entry for this font
16602         already, simply increment its reference count, provided by Olaf Dietsche
16603         <olaf.dietsche+list.gtk@netcologne.de>.
16604
16605 1999-09-21  Tor Lillqvist  <tml@iki.fi>
16606
16607         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
16608         just to be sure.
16609
16610         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
16611         unused variables, leftovers from the X11 version.
16612
16613         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
16614
16615         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
16616         downcase fields on X11.
16617
16618 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16619         
16620         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
16621         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
16622
16623 1999-09-17  Tor Lillqvist  <tml@iki.fi>
16624
16625         * gdk/win32/gdk.def: Add gdk_threads_mutex.
16626
16627         * gtk/makefile.msc: Correct path to libintl.
16628
16629         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
16630         use of gint vs. int, and gint vs. gboolean in headers and
16631         definitions. Use GtkType for the *_get_type functions. Note that
16632         these changes preserve binary compatibility.
16633
16634         * gdk/gdk.c
16635         * gdk/win32/gdk.c
16636         * gdk/gdk.h: Fix inconsistencies: gint vs int.
16637
16638         * gtk/gtkmain.c
16639         * gtk/gtkclist.c
16640         * gtk/gtkmenufactory.c
16641         * gtk/gtknotebook.c
16642         * gtk/gtkwidget.c: Fix inconsistencies, also gint
16643         vs. gboolean.
16644
16645         * gtk/gtkcolorsel.[ch]
16646         * gtk/gtkcombo.[ch]
16647         * gtk/gtkdrawingarea.[ch]
16648         * gtk/gtkgamma.[ch]
16649         * gtk/gtkhandlebox.[ch]
16650         * gtk/gtkhpaned.[ch]
16651         * gtk/gtkhruler.[ch]
16652         * gtk/gtkplug.[ch]
16653         * gtk/gtkpreview.[ch]
16654         * gtk/gtkruler.[ch]
16655         * gtk/gtksocket.[ch]
16656         * gtk/gtkstatusbar.[ch]
16657         * gtk/gtktoolbar.[ch]
16658         * gtk/gtkvbbox.[ch]
16659         * gtk/gtkvpaned.[ch]
16660         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
16661         functions.
16662
16663         * gtk/gtkgamma.h: Fix bug, missing () in call of
16664         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
16665
16666 1999-09-14  Tor Lillqvist  <tml@iki.fi>
16667
16668         * gdk/gdkcolor.c (gdk_colormap_new)
16669         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
16670         colormap->colors was allocated twice.
16671
16672         * gdk/win32/gdk.c: Remove some unused stuff.
16673
16674         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
16675         colormap.
16676
16677         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
16678         * gtk/gtklabel.h (gtk_label_get_type)
16679         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
16680         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
16681         in a couple of places, not guint.
16682
16683 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
16684
16685         * configure.in,po/et.po: added Estonian language file
16686
16687 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
16688
16689         * configure.in,po/da.po: added Danish file
16690
16691 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
16692
16693         * docs/gtkfaq.sgml: Minor FAQ Update
16694
16695 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
16696
16697         * docs/gtkfaq.sgml: FAQ update
16698
16699 1999-08-27  Tor Lillqvist  <tml@iki.fi>
16700
16701         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
16702         way to get window contents continually refreshed while resizing. I
16703         didn't like the effects myself, so it's not on by default.
16704
16705         * gdk/win32/gdkprivate.h: New flag variable
16706         gdk_event_func_from_window_proc, FALSE by default.
16707
16708         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
16709         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
16710         are passed --gdk-event-func-from-window-proc.
16711
16712         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
16713         and we have am event_func, call it instead of enqueing the event.
16714
16715 1999-08-23  Tor Lillqvist  <tml@iki.fi>
16716
16717         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
16718         Kelley: Set expose_count in GdkEventExposes correctly.
16719
16720         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
16721         MULTIPLE_WINDOW_CLASSES).
16722
16723         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
16724         for bug in NT, apparently NT *does* draw the end pixel, too, in
16725         LineTo with a one-pixel pen, so we don't have to do it ourselves.
16726
16727 1999-08-21  Tor Lillqvist  <tml@iki.fi>
16728
16729         Improvements by Hans Breuer: 
16730
16731         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
16732
16733         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
16734         CS_?REDRAW flags as they cause lots of (late) redraws when "show
16735         window contents while dragging" is turned on. Allocate at least
16736         one unique class for every GdkWindowType. If support for single
16737         window-specific icons is ever needed (eg. Dialog specific), every
16738         such window should get its own class.
16739
16740 1999-08-19  Tor Lillqvist  <tml@iki.fi>
16741
16742         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
16743         error that caused crashes.
16744
16745 1999-08-17  Tor Lillqvist  <tml@iki.fi>
16746
16747         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
16748         window, use ScrollWindowEx, and call UpdateWindow. This prevents
16749         bugs when for instance part of the window was outside the
16750         display. Thanks to Philippe Colantoni for finding and fixing this.
16751
16752 1999-08-16  Tor Lillqvist  <tml@iki.fi>
16753
16754         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
16755         endpoint calculations which were totally wrong. (A little RTFMing
16756         helps a lot ;-)
16757
16758         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
16759         from a separate directory, not from gettext, because of licensing
16760         issues (we want to use the LGPL version).
16761
16762         * README.win32: Mention the intl from glibc vs from gettext issue.
16763
16764 1999-08-13  Tor Lillqvist  <tml@iki.fi>
16765
16766         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
16767         in the key event handling: Now AltGr chars work again. Also,
16768         now Alt-digits are passed up as well as Control-digits.
16769         Pass keypad plus and minus as normal plus and minus.
16770
16771 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16772
16773         * docs/gtkfaq.sgml: FAQ Update
16774
16775 1999-07-25  Tor Lillqvist  <tml@iki.fi>
16776
16777         * README.win32
16778         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
16779         the Wintab SDK.
16780
16781         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
16782         OK, but getting closer. Guard against bogus tilt data from Wacom
16783         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
16784         enable easier building without Wintab.
16785
16786         * gdk/win32/gdkinput.h
16787         * gdk/win32/gdkevents.c 
16788         * gdk/win32/gdkwindow.c: Minor changes related related to above.
16789         
16790         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
16791         code. As we have just one visual on Win32, no sense to have it in a
16792         table, and no need for the hash table.
16793
16794         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
16795         better on white background.
16796
16797 1999-07-21  Tor Lillqvist  <tml@iki.fi>
16798
16799         * README.win32: Update gcc build instructions. Mention gettext is
16800         GPL.
16801
16802         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
16803         supported cursor size with GetSystemMetrics.
16804
16805         * gdk/win32/gdkfont.c
16806         * gtk/gtkfontsel.c: Guard against some font weight and charset
16807         symbols being undefined (in mingw32 headers).
16808
16809         * gdk/win32/makefile.cygwin
16810         * gtk/makefile.cygwin
16811         * gtk/gtkthemes.c: No longer need to have differently named
16812         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
16813
16814 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
16815
16816         * docs/gtkfaq.sgml: Long awaited FAQ update.
16817
16818 1999-07-15  Tor Lillqvist  <tml@iki.fi>
16819
16820         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
16821         it. Obscure bit manipulation needed.
16822
16823         * gdk/win32/gdkevents.c: Logging.
16824         
16825         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
16826         style (file name include compiler name) for theme engines.
16827
16828 1999-07-13  Tor Lillqvist  <tml@iki.fi>
16829
16830         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
16831
16832         * gdk/win32/gdkevents.c: Fix long-standing bug in key
16833         events. The key.string wasn't zero-terminated, still we strdup'ed
16834         it in gdk_event_copy(). Synthesize crossing events for button
16835         events before possible propagation.
16836
16837         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
16838
16839         * gdk/win32/makefile.cygwin
16840         * gtk/makefile.cygwin: Use new DLL naming style for the
16841         GCC-compiled ones.
16842
16843         * gdk/win32/makefile.msc
16844         * gtk/makefile.msc: Cosmetics mostly.
16845
16846         * gtk/gtk.def: Add missing entry points.
16847
16848         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
16849
16850 1999-07-09  Tor Lillqvist  <tml@iki.fi>
16851
16852         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
16853         or height is zero. Don't print a warning if Pie or Arc fails, they
16854         always fail (?) for very narrow ellipses.
16855
16856         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
16857         the part or the destination window corresponding to source area
16858         outside of the source drawable's boundary.
16859
16860         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
16861         anything if less than two points.
16862
16863         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
16864         return NULL. Gtk cut-and-paste inside a single program works
16865         better this way. (It always gets the clipboard contents from
16866         Windows, not from its own copy, which is cleared anyway. I can't
16867         say I fully understand what happens... Emulating the X selection
16868         and property stuff is a bit of a mess.)
16869
16870         * gdk/win32/gdkevents.c
16871         * gdk/win32/gdkproperty.c: A bit more verbose logging.
16872
16873         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
16874         that never got deleted). Revamp gdk_region_shrink.
16875
16876         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
16877         after use.
16878
16879         * gtk/gtk.def: Add some missing entry points.
16880
16881         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
16882         component.
16883
16884 1999-07-04  Tor Lillqvist  <tml@iki.fi>
16885
16886         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
16887         Control-digits specially.
16888
16889 1999-07-03  Tor Lillqvist  <tml@iki.fi>
16890
16891         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
16892
16893 1999-06-28  Tor Lillqvist  <tml@iki.fi>
16894
16895         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
16896         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
16897         finding this.)
16898
16899 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
16900
16901         * gtk+.spec.in: Corrected some typos in files section.
16902         
16903 1999-06-15  Tor Lillqvist  <tml@iki.fi>
16904
16905         * README.win32: Mention using GNU gettext.
16906         * config.h.win32: Enable NLS stuff.
16907         * gtk/makefile.msc: Use GNU gettext.
16908         * gdk/win32/gdkdnd.c: Minor header reorg.
16909         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
16910         cosmetics.
16911         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
16912         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
16913
16914 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
16915
16916         * acinclude.m4
16917         * config.guess
16918         * config.status
16919         * ltconfig
16920         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
16921
16922 1999-05-30  Tor Lillqvist  <tml@iki.fi>
16923
16924         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
16925         SafeAdjustWindowRectEx. Don't override all calls to
16926         AdjustWindowRectEx by it, but use it only in two places: When
16927         creating a new top-level window and when moving a top-level
16928         window.
16929
16930         Use screen coordinate rectangle, not client rectangle, in
16931         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
16932         when we try to place a window so that the decoration (mainly,
16933         title bar) isn't visible.
16934
16935         These changes fix the bug that showed up for instance as the
16936         GIMP's saved top-level windows moving right and down (by an amount
16937         equal to the window decoration) for each session. This bug showed
16938         up also in testgtk's "Saved Position".
16939
16940         gdk_window_resize also redone a bit.
16941
16942 1999-05-25  Tor Lillqvist  <tml@iki.fi>
16943
16944         * gtk/testgtkrc: Add (commented out) Windows-style theme
16945         include line.
16946
16947         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
16948
16949 1999-05-18  Tor Lillqvist  <tml@iki.fi>
16950
16951         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
16952         gdkx.h to a gdk subdirectory, so that applications can include
16953         these with <gdk/*.h> without trouble.
16954
16955         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
16956         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
16957         have their bitmap destroyed.
16958
16959         * gdk/win32/gdk.def: Add gdk_root_parent.
16960
16961 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
16962
16963         * configure.in
16964           gtk-config.in
16965           ltconfig
16966           ltmain.sh     
16967           gtk/Makefile.am: changes to compile nicely (with xlib) 
16968           on BeOS
16969
16970 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
16971
16972         * acinclude.m4
16973         * config.guess
16974         * config.sub
16975         * ltconfig
16976         * ltmain.sh: upgrade to libtool 1.3
16977
16978 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
16979
16980         * gtk/gtkclist.c:
16981         * gtk/gtkctree.c: merges from gtk-1-2
16982
16983 1999-04-25  Tor Lillqvist  <tml@iki.fi>
16984
16985         Support added for building using a GNU toolchain on Win32,
16986         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
16987
16988         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
16989         * config.h.win32: Changes for gcc.
16990         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
16991         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
16992         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
16993         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
16994         Protect shl stuff unavaiilable with mingw32 headers.
16995         * gdk/win32/gdkevents.c: Fix typo.
16996         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
16997         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
16998         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
16999         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
17000         the mingw32 headers.
17001         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
17002         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
17003         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
17004         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
17005         Test for NATIVE_WIN32, not _MSC_VER.
17006         * gtk/gtkmain.c: No use warning about developer version on Win32,
17007         there aren't any non-developer versions anyhow.
17008         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
17009         * gtk/makefile.msc: Use pthread from another directory. Minor other
17010         changes. 
17011
17012 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17013
17014         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17015           default filter from the list
17016
17017 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
17018
17019         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
17020          when gtk_widget_grab_default() is called for a widget that
17021          is not within a GtkWindow.
17022
17023 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
17024
17025         * docs/gtk_tut.sgml, examples/clist.c: use a
17026           scrolled window in the clist example. Minor
17027           tutorial fixes.
17028
17029 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
17030
17031         * docs/gtk_tut.sgml: Style check from David King
17032           <dking@youvegotmail.net>
17033
17034 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
17035
17036         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
17037         compile with unknown value of GDK_WINDOWING
17038
17039 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
17040
17041         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
17042         after the rule is fired.
17043         (install-exec-local): Install gdkconfig.h only if the contents are
17044         different from the currently installed gdkconfig.h.
17045
17046 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
17047
17048         * gdk/Makefile.am (configexecincludedir): Rename from 
17049         configincludedir so that gdkconfig.h will be installed 
17050         as part of `make install-exec'. 
17051
17052 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
17053
17054         * acinclude.m4
17055         * config.guess
17056         * config.sub
17057         * ltconfig
17058         * ltmain.sh: upgrade to libtool 1.2f
17059
17060         * autogen.sh: libtool is not required to autogen gtk+
17061
17062         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
17063         needed)
17064
17065 1999-03-18  Tor Lillqvist  <tml@iki.fi>
17066
17067         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
17068         declaring gdk variables exported/imported from the DLL. New image
17069         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
17070         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
17071         GDK_DRAG_PROTO_OLE2.
17072
17073         * gdk/gdk.h: Merge in Win32 version: Two new functions,
17074         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
17075         declared only for the Win32 version, but could be in the X11
17076         version as well. (Needed for a Xlib-less gdk_imlib.)
17077         gdk_color_hash should have only one parameter. Declare
17078         gdk_threads_mutex with GDKVAR.
17079         
17080         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
17081         just one parameter.
17082
17083         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
17084         per pixel, not bits.
17085
17086         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
17087         Fetch bpp (which means bits-per-pixel here) from another place on
17088         Win32. Accept also depth==32 (which we might get on Win32) with
17089         bpp==32.
17090
17091         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
17092         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
17093         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
17094         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
17095         in the backend-dependent directory, not in the common gdk
17096         directory.
17097
17098         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
17099         headers.
17100
17101 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
17102
17103         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
17104         want to use the Gtk+ devel version (which is true, and yes - even i am
17105         currently working with the 1.2.x branch). so everyone reading this, you
17106         probably want to issue
17107         cvs checkout -r glib-1-2 glib
17108         and
17109         cvs checkout -r gtk-1-2 gtk+
17110         as your next two comands.
17111
17112 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
17113
17114         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
17115         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
17116
17117         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
17118         file. strongly deprecated the GTK_HAVE_* macros, we provide
17119         GTK_CHECK_VERSION() for people that need to check for certain
17120         Gtk+ versions.
17121
17122         * gtk/gtkcompat.h: removed this from CVS.
17123         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
17124         idea right from the start, it just didn't seem like that back then.
17125
17126 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
17127
17128         * merges from gtk-1-2:
17129
17130 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
17131
17132         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
17133         item factory class has been created.
17134         (gtk_item_factory_parse_rc): likewise.
17135
17136         * gtk/gtkmenu.c:
17137         keep proper references for old_active_menu_item.
17138         (gtk_menu_reparent): unset the usize of the new parent,
17139         so the menu can sanely be size requested and we don't get nasty screen
17140         artefacts upon next reparentation.
17141         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
17142         enter notify. only synthesize enter notifies if the pointer really is
17143         inside the event window.
17144         (gtk_menu_popdown): use gtk_menu_shell_deselect().
17145         (gtk_menu_popup): move the background setting stuff into
17146         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
17147
17148         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
17149         gtk_menu_shell_select_item() to select the new item.
17150         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
17151         do the right thing for deselection as well.
17152
17153 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
17154
17155         * gtk/gtkwidget.[hc]:
17156         (gtk_widget_accelerators_locked): return whether a widget's accelerators
17157         are locked.
17158
17159         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
17160         existing accelerators if the widget's accelerators are locked.
17161
17162 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
17163
17164         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
17165
17166         * gtk/gtkmenu.c: truely forward key press and key release events to
17167         the menu widget from the toplevel or tearoff window. we can't simply
17168         connect to that, we need to stop further processing of the events as
17169         well.
17170
17171 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
17172
17173         * gtk/gtkmenu.c:
17174         (gtk_menu_key_press): pass event->keyval, event->state to
17175         gtk_accelerator_valid, instead of event->keyval twice.
17176         refuse to install single letter accelerators for menus that use
17177         single letter shortcuts.
17178
17179         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
17180         gtk_menu_ensure_uline_accel_group().
17181
17182         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
17183         which will always return an uline accel group, made
17184         gtk_menu_get_uline_accel_group() return NULL if the group isn't
17185         yet created.
17186
17187 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
17188
17189         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
17190
17191         * gtk/gtkclist.c (gtk_clist_column_title_passive):
17192         Leave button sensitive, trap  button_press, button_release,
17193         motion_notify, enter_notify and leave_notify events instead.
17194         (gtk_clist_column_title_active): disconnect event handler.
17195         (gtk_clist_drag_data_get): fixed memory leak. Reported by
17196         Guillaume Laurent <glaurent@worldnet.fr>
17197
17198 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
17199
17200         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
17201         width/height mixups.
17202
17203         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
17204         if needed.
17205
17206 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
17207
17208         * gtk/testgtk.c (create_item_factory): unref the item factory after
17209         window's destruction.
17210
17211         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
17212         count on the menu shell around the menu item's activation, since the
17213         signal emission may cause menu shell destruction.
17214
17215         * gtk/gtkitemfactory.c:
17216         the previous code leaked one accel group per menu. we use
17217         gtk_menu_get_uline_accel_group() now to fix that, and with that
17218         also create the underline accelerator group of the menus only if
17219         required (i.e. an underline accelerator has been specified).
17220         (gtk_item_factory_construct):
17221         (gtk_item_factory_create_item): removed code that would create an
17222         extra accel group for the menu (and leak references).
17223         (gtk_item_factory_create_item): adapted the underline accelerator
17224         installation code to properly feature gtk_menu_get_uline_accel_group().
17225
17226         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
17227         menu->accel_group, this may return NULL if the accelerator group
17228         hasn't been set yet.
17229         added gtk_menu_get_uline_accel_group() to retrive the underline
17230         accelerator group of the menu, this will be created on demand
17231         and proper care is taken about its reference count.
17232
17233         * gtk/gtkitemfactory.h:
17234         * gtk/gtkitemfactory.c:
17235         dumped the approach of keeping a widgets by action list on the
17236         factory since the factory<->widget destroy negotiation didn't work
17237         and would be hard to get going at all. instead we keep a list of
17238         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
17239         persistant throughout a program's life time).
17240         also, i removed the static const gchar *key_* variables, and made
17241         them inline strings (they weren't actually used anyways).
17242         (gtk_item_factory_add_item): update ifactory->items.
17243         (gtk_item_factory_destroy): destroy ifactory->items (and remove
17244         the item factory pointer from the remaining ifactory widgets).
17245         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
17246         list to find the widget.
17247         (gtk_item_factory_get_item): new function that works around
17248         gtk_item_factory_get_widget() limitations, this function will only
17249         return menu items, even for <Branch> entries.
17250
17251 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17252
17253         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17254         font hash table, if we have a GdkFontPrivate entry for this font
17255         already, simply increment its reference count, provided by Olaf Dietsche
17256         <olaf.dietsche+list.gtk@netcologne.de>.
17257
17258         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17259         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17260
17261 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
17262
17263         * gtk/gtkcontainer.c:
17264         (gtk_container_add_with_args):
17265         (gtk_container_addv):
17266         (gtk_container_add): before adding a child to a conatiner, make sure
17267         it is (default) constructed, this is neccessary because under certain
17268         circumstances the child will get relized and mapped immediatedly, in
17269         which case it has to be constructed already.
17270
17271 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
17272
17273         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
17274         values > 1 as TRUE also.
17275
17276 1999-03-16  Tor Lillqvist  <tml@iki.fi>
17277
17278         * README.win32: New file.
17279                 
17280         * configure.in: Check for lstat.
17281
17282         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
17283         completeness.
17284
17285         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
17286
17287         * gtk/gtk.def: Removed CRs.
17288
17289         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
17290         ..\gdk\win32).
17291
17292         * gdk/win32/makefile.msc: Correct upwards relative paths.
17293         
17294 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
17295
17296         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
17297           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
17298           it was connecting a void function to expose_event and the int
17299           returning function to the draw signal
17300
17301 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
17302
17303         * configure.in:
17304         Use correct path to libgmodule.la when ref'ing uninstalled copy
17305         of glib.  (Already in stable branch, Bug #417)
17306
17307 1999-03-15  Tor Lillqvist  <tml@iki.fi>
17308
17309         Win32 merge and general portability stuff:
17310                 
17311         * acconfig.h,configure.in: Check for <sys/time.h>.
17312
17313         * gdk/win32: New directory (actually, been there for a while).
17314         
17315         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
17316         NATIVE_WIN32, and use these. Always case fold on Win32. No
17317         backslashed escapes on native Win32.
17318
17319         * gtk/{gtk.def,makefile.msc}: New files.
17320
17321         * gtk/Makefile.am: Add above new files.
17322         
17323         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
17324         instead of <strings.h>.
17325
17326         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
17327         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
17328         <unistd.h> appropriately.
17329
17330         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
17331         Use ABS() (from <glib.h>) instead of abs().
17332         
17333         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
17334         of gtk (and thus glib) headers, so that WIN32 will be
17335         defined. With MS C, include <direct.h> for mkdir prototype.
17336
17337         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
17338         some casts, needed by MS C.
17339
17340         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
17341         implemented).
17342
17343         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
17344         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
17345         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
17346
17347         * gtk/gtkmain.h: Mark variables for export/import on Win32.
17348                 
17349         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
17350         the event is not a hint, or its window is not the slider. Needed
17351         on Win32, at least.
17352
17353         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
17354         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
17355         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
17356         a subdirectory of the Windows directory as gtk system
17357         configuration directory.
17358
17359         * gtk/gtkselection.c: No chunks on Win32.
17360
17361         * gtk/gtksocket.c: Not implemented on Win32.
17362
17363         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
17364
17365         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
17366
17367         * gtk/maketypes.awk: Declare variables with a macro that expands to
17368         necessary export/import magic in the case of Win32.
17369                 
17370         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
17371
17372 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
17373
17374         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
17375         since those were meant only for gdki18n.h.  
17376         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
17377         for widechar tests.
17378         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
17379
17380 1999-03-13  Tor Lillqvist  <tml@iki.fi>
17381
17382         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
17383         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
17384
17385         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
17386         installed) to CFLAGS.
17387
17388         * gdk/Makefile.am: Add rules for gdkconfig.h.
17389
17390         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
17391         APIs.
17392
17393         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
17394         gdkx.h anyway when compiling for X11.
17395         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
17396         general): Merge in Win32 version.
17397         
17398         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
17399         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
17400         expansion (if we don't have HAVE_PWD_H), allow for drive
17401         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
17402         included code from Craig Setera's port to Win32 (the one that uses
17403         X11, and the cygwin dll), even if it probably will be abandoned.
17404
17405         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
17406         the user entered one herself.  This way one can complete *.h and
17407         don't get matches on any .help files, for instance.
17408         
17409 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17410
17411         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17412         font hash table, if we have a GdkFontPrivate entry for this font
17413         already, simply increment its reference count, provided by Olaf Dietsche
17414         <olaf.dietsche+list.gtk@netcologne.de>.
17415
17416         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17417         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17418
17419 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17420
17421         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
17422         the number of calls to gdk_draw_point() (and thus to X) by
17423         clipping the points by hand.
17424
17425         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
17426         the clip parameter.
17427         (gtk_handle_box_paint): Only paint the handle if the expose area
17428         intersects it.
17429
17430 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17431
17432         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
17433
17434 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
17435
17436         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
17437         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
17438
17439 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17440
17441         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
17442          textmode (O_TEXT) for OS/2 version.
17443
17444 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
17445
17446         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
17447         GtkSpinButton, "input" and "output", to make the output more flexible.
17448         The user has to provide a mapping between adjustment->value and the
17449         output string (and vice versa, if the spin button is editable). 
17450         See testgtk for examples.
17451
17452 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
17453
17454         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
17455         new one.
17456         
17457         * configure.in: set gtk+ version to 1.3.0.