]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-8
fixes to compile with G_DISABLE_COMPAT
[~andy/gtk] / ChangeLog.pre-2-8
1 2001-06-29  Havoc Pennington  <hp@redhat.com>
2
3        * Throughout: fixes to compile with G_DISABLE_COMPAT
4         (s/g_signal_connectc/g_signal_connect/,
5         s/g_signal_newc/g_signal_new/,
6         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
7
8 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
9
10         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
11         add path argument to selection callbacks.
12
13 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
14
15         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
16         walk through a model in a depth first manner, with the option to
17         break out.
18
19 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
20
21         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
22         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
23         column and follow it when draged, rather than a location in the
24         view. "expander_column" property and drawing functions changed
25         accordingly.  Fixes bug #55942.
26
27         (gtk_tree_view_{set,get}_expander_column): Now works with a
28         GtkTreeViewColumn* instead of int.
29
30 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
31
32         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
33
34 2001-06-28  Havoc Pennington  <hp@pobox.com>
35
36         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
37         image data to the screen, using a server grab to avoid race
38         conditions.
39
40         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
41         check for NULL return from gtk_image_new_from_stock(), it never
42         returns NULL.
43         (gtk_item_factory_create_item): fix bug where we parsed the stock
44         ID as an inline pixbuf
45
46         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
47
48         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
49         support (should be using binding set here)
50
51         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
52         support (should be using binding set here)
53
54         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
55         support
56
57         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
58
59         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
60
61         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
62
63         * gtk/gtkimcontextsimple.c
64         (gtk_im_context_simple_filter_keypress): keypad
65
66         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
67
68         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
69
70         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
71
72         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
73         should be binding-setted)
74
75         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
76
77         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
78
79         * gtk/gtkcalendar.c: numeric keypad fixes
80
81         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
82         support
83
84         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
85         screwup
86
87         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
88         clip the render area to the drawable's clip region in advance,
89         so we don't get data from the server that we don't need.
90
91         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
92         check return value of gdk_pixbuf_get_from_drawable(), fall back 
93         to bilevel alpha if we can't get the pixbuf to composite against.
94
95         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
96
97         * gdk/gdkimage.c (gdk_image_get_colormap): add
98         gdk_image_set_colormap, gdk_image_get_colormap
99
100         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
101         take a region of the image, instead of converting the entire
102         image.
103
104         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
105         keybinding signal. Add default bindings for it. Add default
106         handler for show_help that shows the tooltip for the widget.
107
108         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
109         "close" keybinding signal, remove key press handler.
110
111         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
112         it's not our usual practice to leave a deprecated function around
113         with a runtime warning, plus we don't want it to appear in docs,
114         plus if we make them yellow no one will want to change them
115         anyhow.
116
117 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
118
119         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
120         GTK_WIDGET_REALIZE() for resize queueing.
121
122         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
123         GTK_WIDGET_REALIZE() for post event delivery destruction upon
124         GDK_DESTROY.
125         
126         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
127         sompensate for former (pre-2.0) connect_after() facility.
128         (gtk_widget_send_expose): 
129         (gtk_widget_event): assert the widget is realized, since event delivery
130         to non-realized widgets is essentially a bug. event handlers should
131         be able to unconditionally rely on widget->window (unless they
132         emit events on their own which can trigger widget destruction).
133         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
134         logic. event delivery happens as follows:
135         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
136         b) if !was_handled in (a) and the widget is still realized, emit event-
137            specific signal (RUN_LAST handler). returns was_handled.
138         c) emission of GtkWidget::event-after for notification if the widget is
139            still realized (regardless of was_handled from previous stages, no
140            class handler). no return value.
141         d) was_handled gets passed on to caller, to determine further
142            propagation. if the widget got unrealized meanwhile, was_handled
143            is returned as TRUE.
144
145         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
146         gdk_event_get_coords().
147
148 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
149
150         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
151         age 0, binary age 0. depend on glib 1.3.7.
152
153         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
154
155         * gtk/gtkmenubar.c: same here.
156         
157         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
158
159         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
160
161         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
162         
163         * gtk/gtkmenubar.c (add_to_window): likewise.
164         
165         * gtk/gtktextbtree.c: and here...
166         
167         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
168         
169         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
170         
171         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
172         
173         * gtk/gtktreeviewcolumn.c:
174         (_gtk_tree_view_column_set_tree_view): yet again.
175
176         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
177         signal connections without g_signal_connect_data().
178         
179         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
180         demo of the matter.
181         
182         * demos/testpixbuf.c (main): running out of equality phrases for the
183         ChangeLog, but had to adapt connections here as well.
184         
185         * demos/testanimation.c (progressive_timeout): and for the fun of it,
186         tackled this the same way.
187         
188         * tests/testtext.c (create_view): ok, it's becoming a pain at this
189         point, but had enough enery for one more fix.
190
191         * tests/testtreecolumns.c (main): stand up man, do your work!
192
193         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
194         fix, either that's been all of it or CVS gtk is broken yet again.
195         
196 2001-06-29  James Henstridge  <james@daa.com.au>
197
198         The following changes correspond to bug #56812
199
200         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
201         code for GdkDevice.
202
203         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
204         GdkCursor.
205
206 2001-06-19  Havoc Pennington  <hp@pobox.com>
207
208         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
209         for mapping a window without fooling with stacking order, but
210         updating the "withdrawn" flag
211
212         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
213         filtering as soon as possible, moving move resize and wmspec_check
214         handling after the event filter.  Make default filter apply to all
215         events, not just those with no GdkWindow wrapped around the X
216         window. Fix a FIXME about how the window could be a pixmap using 
217         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
218
219         Also, be robust against events not on a known GdkWindow.
220
221         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
222         gdk_x11_ungrab_server): export reference-counted server grabs, so
223         other people can grab server over a GDK function that also does
224         so.
225
226 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
227
228         * gtk/gtktreeviewcolumn.c
229         (gtk_tree_view_column_pack_start_cell_renderer): New function to
230         reflect that you can (hypothetically) pack cell renderers into a
231         column.
232         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
233         (gtk_tree_view_column_cell_is_visible): Move more functionality to
234         the column.
235         (gtk_tree_view_column_cell_can_focus): Move more functionality to
236         the column.
237
238         * gtk/gtktreeview.c: Move to use new column-packing code.
239         (gtk_tree_view_real_expand_row): remove totally braindead code.
240         (gtk_tree_view_real_collapse_row): ditto.
241
242 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
243
244         * gtk/gtktreeviewcolumn.c: Fix a typo.
245         
246 2001-06-26  Joel Becker  <jlbec@evilplan.org>
247
248         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
249           at the end of the file
250
251 2001-06-26  Havoc Pennington  <hp@redhat.com>
252
253         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
254
255 2001-06-26  Havoc Pennington  <hp@redhat.com>
256
257         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
258         property
259
260 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
261
262         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
263         stupid missing statement
264
265         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
266         private function for ATK.  It notifies you of how many _visible_
267         children are deleted when a node is deleted.  Should be used by
268         atk only.
269
270 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
271
272         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
273         Use new pango_context_get_metrics() to fix problems
274         with font lists in descriptions. (#56184, reported by
275         Jonas Borgström)
276
277 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
278
279         * gtk/gtkiconfactory.c:
280         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
281         item factory so inlined pixbufs actually work.
282
283 2001-06-25  Havoc Pennington  <hp@redhat.com>
284
285         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
286         s/RESIZEABLE/RESIZABLE/
287
288         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
289
290 2001-06-25  Alexander Larsson  <alexl@redhat.com>
291
292         * configure.in:
293         Added --enable-fbmanager. This is some experimental code
294         that lets several GtkFB apps coordinate their access to the
295         framebuffer.
296         
297         * acconfig.h:
298         Added ENABLE_FB_MANAGER.
299
300         * gdk/linux-fb/Makefile.am:
301         Added gdkfbmanager and gdkfbswitch.
302
303         * gdk/linux-fb/gdkkeyboard-fb.c:
304         * gdk/linux-fb/gdkmouse-fb.c:
305         * gdk/linux-fb/gdkprivate-fb.h:
306         Split device init and open so that
307         they can be opened and closed while switched
308         away.
309
310         * gdk/linux-fb/gdkmain-fb.c:
311         Add the basic manager communication.
312
313         * gdk/linux-fb/gdkrender-fb.c:
314         Don't update to the shadow fb if we're
315         blocked by the fb manager.
316
317 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
318
319         * docs/Changes-2.0.txt: Add note about child property
320         changes.
321
322 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
323
324         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
325         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
326
327         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
328         with un'reffing wrong list reported by Jeff Franks.
329
330         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
331
332         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
333         for the default icon. Remove inline XPM.
334
335         * gtk/gtkstock.h gtk/gtkiconfactory.c:
336         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
337         is used for GTK_STOCK_DND, but it is a bit too small.)
338
339         * gtk/stock-icons/stock_dnd_multiple.png
340         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
341
342         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
343         TRUE when starting a drag. In other cases, we are
344         just observing. (#52995)
345
346         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
347         function to set the icon for a drag from a GdkPixbuf
348         or stock ID.
349
350         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
351         Likewise, for drag sources.
352
353         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
354         (Now should be done using the stock system.)
355
356 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
357
358         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
359         Removed - didn't work and not particularly useful anyways
360         if it did. 
361
362 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
363
364         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
365         introduced last night that was making things decidedly not work.
366
367         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
368         so that we have getter/setter pairing everywhere it makes
369         sense. (#55767)
370
371         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
372         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
373         deprecated compat macro. (#55516)
374
375         * gtk/gtklabel.[ch]: Add functions
376         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
377         gtk_label_set_label(), which mirror the property API for GtkLabel.
378         Make gtk_label_get_attributes() only reflect the attributes
379         set by gtk_label_set_attributes.
380
381         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
382         from gtk_notebook_set_page().
383
384 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
385
386         * configure.in: Fix tests for XShm.h.
387
388         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
389         gdk_image_new() by use of goto, properly use g_object_unref().
390
391 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
392
393         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
394         calls, as GdkImage is an object. these should be g_obejct_unref()
395         instead but that won't work because of the g_error() statement
396         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
397         to spot these places.
398
399 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
400
401         * modules/input/gtkimcontextxim.c: Fixup some problems with 
402         text length handling in error cases.
403
404         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
405         a bit to make test actually warn on attempt to allocation
406         a negative size. (#56101, Matthias Clasen)
407
408 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
409
410         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
411         noticed by Brian Cameron.
412         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
413         Cameron.
414
415 2001-06-22  Hans Breuer  <hans@breuer.org>
416
417         * gdk/gdk.def : updated externals
418
419         * gdk/win32/gdkdrawable-win32.c : corrected some casts
420         in GDK_NOTEs
421
422         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
423         to translate coordinates to the internal > 16 bit system
424         Try to handle WM_WINDOWPOSCHANGED to get better performance for
425         when moving/resizing
426
427         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
428         and gdk_keymap_get_direction (). The latter is untested for
429         the RTL case
430
431         * gtk/gtk.def : updated externals
432
433         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
434         from pango_language_from_string (), not an already freed pointer
435
436         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
437         binary (-kb) to be useable on windoze
438  
439 2001-06-21  Alexander Larsson  <alexl@redhat.com>
440
441         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
442         Update to new PangoLanguage changes.
443         
444         * gtk/gtkwindow-decorate.c:
445         * gtk/gtkwindow.[ch]:
446         Added setting argument to gtk_window_set_has_frame ()
447         
448 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
449
450         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
451         the case without XKB properly.
452
453         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
454         unused gtk_rc_auto_parse variable.
455
456         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
457         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
458         longer needed with GdkPixbuf.
459
460         * gtk/gtkrc.c (_gtk_rc_init): Make private.
461
462 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
463
464         * gtk/gtkentry.h: Mark deprecated functions with
465         GTK_DISABLE_DEPRECATED.
466
467 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
468
469         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
470
471         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
472
473         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
474           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
475           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
476           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
477           to recent changes in Pango.
478
479         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
480           to test whether the basic engine honors them.
481
482 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
483
484         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
485         gtk_container_child_get_property().
486
487 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
488
489         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
490         (gtk_tree_view_move_cursor_page_up_down): implement.
491
492 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
493
494         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
495         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
496         don't use automatic fixed size buffer for printf-ing floats, doubles
497         can expand to really _huge_ strings, use g_strdup_printf() instead.
498
499 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
500
501         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
502         construct property in 1.2 and still needs to be.
503
504         * gtk/gtkwidget.c: "composite_child" is not a settable property.
505
506 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
507
508         * gtk/gtkliststore.c (gtk_list_store_clear): 
509         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
510         clear a model.
511
512 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
513
514         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
515
516         * gtk/Makefile.am:
517         * gtk/gtk.h: disabled GtkPacker compilation.
518
519         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
520
521         * gtk/gtknotebook.c:
522         * gtk/gtktable.c:
523         * gtk/gtkbox.c: ported this over to child properties.
524
525         * gtk/gtksettings.c: fetch class properties via
526         g_object_class_list_properties().
527
528         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
529         child arg interface. use gobjectnotifyqueue.c for child property
530         notification.
531
532         * gtk/gtkwidget.[hc]: provide necessary means for container child
533         properties, i.e. ::child_notify signal,
534         gtk_widget_freeze_child_notify(),
535         gtk_widget_child_notify(),
536         gtk_widget_thaw_child_notify().
537
538         * tests/testgtk.c: removed inferior property handling code, for
539         property editing, a generic module should be used, and GLE
540         coincidentally fullfills that purpose.
541
542         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
543         needs to be adapted to g_object_class_list_properties() before this
544         builds again.
545
546 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
547
548         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
549         test if a node is expanded.
550
551 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
552
553         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
554         where collapsing a selected row would result in the cursor/anchor
555         getting screwed up.
556
557 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
558
559         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
560         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
561         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
562         Now I can really reorder/sort all Store widgets.  treesorttest
563         seems to just work now.
564         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
565         testtreesort worked through a big coincidence all this time.
566         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
567         code.
568         * tests/testtreecolumns.c: Big 'ol warning at the top letting
569         people know that this code should never ever ever be copied.
570
571 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
572
573         * gtk/gtkwindow.h: Fixed a small typo, it should be
574         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
575         on line 134.
576
577 2001-06-14  Havoc Pennington  <hp@redhat.com>
578
579         Docs fixups, and:
580         
581         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
582         GTK_DISABLE_DEPRECATED
583
584 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
585
586         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
587         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
588         finish it off tonight, though it basically works now when it's a
589         list.  Also, I have a sinking feeling neither GtkTreeStore or
590         GtkListStore actually resort when adding a new item.  I'll look
591         into it.
592
593 2001-06-14  Havoc Pennington  <hp@redhat.com>
594
595         * demos/gtk-demo/main.c (load_file): fix bug identified by
596         warnings I just added to gtktextbuffer
597
598 2001-06-14  Havoc Pennington  <hp@redhat.com>
599
600         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
601
602         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
603
604         * gtk/gtktextbtree.c: don't leak node data all over the place.
605
606         * demos/gtk-demo/main.c (main): create fontify tags for the right
607         buffer
608
609         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
610         to mention tags in the same table can't have the same name,
611         suggested by Skip Montanaro
612
613 2001-06-11  Havoc Pennington  <hp@redhat.com>
614
615         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
616         for trying to add two tags with same name to the tag table
617
618         * demos/gtk-demo/main.c (main): fix colors ;-)
619
620 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
621
622         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
623         that allows grouping together multiple windows so that grabs
624         within that set of windows only affect those windows.
625
626         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
627         signal for notification when a widget becomes shadowed
628         by a grab or is no longer shadowed by a grab.
629
630         * gtk/gtkwidget.c (gtk_widget_propagate_state)
631           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
632         insenstive widgets to maintain a grab.
633
634 2001-06-14  Alexander Larsson  <alexl@redhat.com>
635
636         * docs/README.linux-fb:
637         Add some example config files that can be used with the URW fonts.
638         
639         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
640         Set up the color ramps for DirectColor mode.
641
642 2001-06-11  Havoc Pennington  <hp@redhat.com>
643
644         * Release 1.3.6
645          
646 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
647
648         * gdk/linux-fb/gdkwindow-fb.c:
649         Unify shaped window code and make it repaint the area that used
650         to be part of the shape, but isn't anymore.
651
652 2001-06-11  Havoc Pennington  <hp@redhat.com>
653
654         * NEWS: Updates
655
656         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
657
658         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
659         
660 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
661
662         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
663         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
664         passes zero instead, so do we.
665         
666 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
667
668         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
669         Deep copy dash_list too.
670         (_gdk_fb_gc_new): Set default cap_style before
671         setting values.
672
673 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
674
675         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
676         gdk_keymap_get_direction): New functions.
677
678 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
679
680         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
681         gtk_tree_model_get_flags by adding a second flag for atk.
682
683         * gtk/gtktreemodel.c: make cursor behavior interact better with
684         mouse presses.
685
686 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
687
688         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
689         expand_row/collapse_row to be 2 signals each -- test_expand_row
690         and row_expanded as well as test_collapse_row and row_collapsed.
691
692 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
693
694         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
695         signal name to be changed instead of selection_changed.
696
697 2001-06-08  Havoc Pennington  <hp@redhat.com>
698
699         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
700         "scroll_offset" property for notification when the layout offsets
701         may have changed
702         (gtk_entry_adjust_scroll): add notify for scroll_offset
703         (gtk_entry_layout_index_to_text_index): function to compensate for
704         preedit string when doing coordinate stuff on the entry's layout
705         (gtk_entry_text_index_to_layout_index): inverse function
706         (gtk_entry_get_layout_offsets): hook to get current position of
707         the layout      
708         (gtk_entry_get_layout): hook to get the layout itself.
709
710         * gtk/gtklabel.c (gtk_label_get_layout): new function
711
712 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
713
714         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
715         keybinding.
716         (gtk_tree_view_focus): Fix merge conflict.
717
718 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
719
720         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
721         clean up cursor handling.
722
723 2001-06-08  Havoc Pennington  <hp@redhat.com>
724
725         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
726         function
727
728         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
729         this function
730
731 2001-06-08  Alex Larsson  <alexl@redhat.com>
732
733         * gtk/gtkcompat.h.in:
734         Added compat macros for all old GTK_TYPE_GDK_xxx types.
735         Fixes bug #52892
736
737 2001-06-08  Havoc Pennington  <hp@redhat.com>
738         
739         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
740         parent still
741
742 2001-06-08  Havoc Pennington  <hp@redhat.com>
743
744         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
745         don't call g_list funcs on GSList
746
747         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
748         gtk_container_focus(), since some widgets have focusable locations
749         which are not other widgets. These widgets should not have to be 
750         containers just to manage the focus. For example, GtkHSV is
751         currently a container for no good reason. Also, this cleans
752         up the "if (is_container && is_sensitive && is_drawable)
753         container_focus ()" mess in widget implementations.
754
755         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
756         function, and have it just call gtk_widget_child_focus().
757
758         * gtk/gtkhsv.c: derive from widget not container
759         
760         Throughout: fix to reflect GtkContainer::focus change
761         
762 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
763
764         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
765         range.  Fix bug #55921
766
767         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
768         (#55920).
769
770 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
771
772         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
773         and gdk_keymap_get_current_direction().
774
775         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
776           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
777         the current locked group, use it to set the keymap
778         direction.
779
780         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
781         to determine whether we draw a split cursor or use
782         a jumping cursor based on the current direction.
783
784         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
785         Obey the split cursor setting. 
786
787 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
788
789         * gtk/gtkimmulticontext.c (activate_cb): Only activate
790         when toggling on, not when toggling off... (#55906)
791
792 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
793
794         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
795         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
796         in docs. (#55812, Vitaly Tishkov)
797
798 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
799
800         * demos/gtk-demo/main.c (create_tree): Changed signal name from
801         selection_changed to changed in signal connection to GtkTreeSelection,
802         also used g_signal_connectc since GtkTreeSelection is now a GObject.
803
804 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
805
806         * gtk/gtktreeselection.c: Now it's a GObject instead of a
807         GtkObject.  The GtkTreeSelection::selection_changed signal is now
808         the GtkTreeSelection::changed signal.
809
810         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
811         object.
812
813         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
814         object.
815
816 2001-06-07  Havoc Pennington  <hp@redhat.com>
817
818         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
819
820 2001-06-07  Havoc Pennington  <hp@redhat.com>
821         
822         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
823         (not tested yet because with absolute path to srcdir I can't build
824         atk, but it was broken anyway so this may help) 
825
826 2001-06-07  Havoc Pennington  <hp@redhat.com>
827
828         * configure.in: output m4macros/Makefile
829         
830 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
831
832         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
833         buttons.  Fixes #55460 reported by matthiasc@poet.de.
834
835 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
836
837         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
838         expansion/collapsing so it only happens in one place.
839         (gtk_tree_view_real_expand_row): ditto.
840
841 2001-06-07  Havoc Pennington  <hp@redhat.com>
842
843         * tests/Makefile.am: add missing -I flag
844
845         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
846
847         * configure.in: use pkg-config to see if GModule is
848         supported; fix to properly turn on included loaders 
849         when GModule isn't supported; don't use AC_CHECK_LIB 
850         when libs are not installed yet
851
852         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
853
854         * Makefile.am (SUBDIRS): add m4macros subdir
855
856         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
857         dependencies also.
858
859 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
860
861         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
862         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
863
864 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
865
866         * gtk/gtktreeview.c
867         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
868         bindings to expand and collapse rows.
869         (gtk_tree_view_real_select_cursor_parent): New key binding.
870         (gtk_tree_view_real_toggle_cursor_row): New key binding.
871
872         * gtk/gtkmarshal.list: new
873         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
874
875 2001-06-06  Havoc Pennington  <hp@redhat.com>
876
877         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
878
879         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
880         Down to move visually rather than logically, since it confuses 
881         people. Add -/+ and Ctrl--/+ bindings for logical movement.
882
883 2001-06-06  Alex Larsson  <alexl@redhat.com>
884
885         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
886         Fix up error messages.
887
888 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
889
890         * gtk/gtktooltips.h: Include gtkwidget.h 
891         (#55798, Karl Nelson)
892
893         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
894         a valid latin-1 character. (Marc Lehmann, #35467)
895
896         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
897         (Marc Lehmann, #35467)
898         
899 2001-06-05  Alex Larsson  <alexl@redhat.com>
900
901         * demos/gtk-demo/appwindow.c (do_appwindow):
902         Don't swap the order of the args to gtk_widget_destroyed.
903
904         * tests/testgtk.c (destroy_properties):
905         Don't crash when the properties window is destroyed.
906
907         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
908         Use with_mnemonics to handle the case of stock items with
909         underscores in them.
910
911 2001-06-05  Havoc Pennington  <hp@redhat.com>
912
913         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
914         gtk_text_iter_reorder
915
916 2001-06-05  Havoc Pennington  <hp@redhat.com>
917
918         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
919
920 2001-06-05  Havoc Pennington  <hp@redhat.com>
921
922         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
923         to the range that was set
924
925         * gtk/gtkrange.c: add value_changed signal, primarily 
926         intended for use with GtkScale
927         (gtk_range_set_increments): new function
928         (gtk_range_set_range): new function with weird name
929         (gtk_range_set_value): new function
930         (gtk_range_get_value): new function
931
932         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
933         from gtk_spin_button_get_value_as_float(). Compat #define
934         added for get_value_as_float.
935
936         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
937
938         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
939
940 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
941
942         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
943
944 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
945
946         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
947
948         * tests/testgtk.c (create_tooltips): Remove usage of
949         gtk_widget_set().
950
951 2001-06-05  Havoc Pennington  <hp@redhat.com>
952
953         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
954
955         Applying patch from Jeff Franks, with function docs added.
956         
957         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
958         remove call to set_mnemonic_widget, change docs a bit.  
959
960         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
961         new function
962
963         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
964         new function
965
966         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
967
968         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
969         function
970         (gtk_radio_button_new_with_mnemonic_from_widget): new function
971
972         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
973         new function
974
975         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
976         function        
977
978         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
979         auto-selection of mnemonic widget.
980
981 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
982
983         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
984         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
985         (gtk_tree_view_column_set_min_width): ditto.
986
987 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
988
989         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
990         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
991
992 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
993
994         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
995         gtk_clist_thaw().
996
997 2001-06-04  Havoc Pennington  <hp@pobox.com>
998
999         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
1000         releases for buttons 6, 7
1001
1002 2001-06-04  Havoc Pennington  <hp@redhat.com>
1003
1004         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
1005         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
1006         #55562
1007
1008 2001-06-04  Havoc Pennington  <hp@redhat.com>
1009
1010         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
1011         where text_view->layout == NULL by assuming its size is 0, 
1012         i.e. same as if we haven't done any reflow. Reported by 
1013         Hidetoshi Tajima #55448 
1014
1015 2001-06-04  Havoc Pennington  <hp@redhat.com>
1016
1017         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
1018         and 7 for scroll left/right, from Thomas Broyer
1019
1020 2001-05-10  Havoc Pennington  <hp@redhat.com>
1021
1022         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
1023         we need to parse the xsetting as if it were an RC file string.
1024
1025         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
1026         value of palette from settings, not from static variable
1027
1028         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
1029         xsettings translation table
1030
1031         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
1032         hardcoding the toolbar style conflicts with new customizable 
1033         toolbar style philosophy
1034         (gtk_toolbar_class_init): add settings for default toolbar style;
1035         these are used unless the app specifically forces a toolbar style
1036
1037         * gtk/gtksettings.c (settings_install_property_parser): only
1038         return at the start if we warn and parser == NULL
1039
1040         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
1041         palette changed handler so we don't notify dead color selections
1042
1043         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
1044         xthickness/ythickness of 0 or 1 properly 
1045         (gtk_default_draw_resize_grip): clear the background behind the
1046         resize grips, and align to bottom right if we square the 
1047         area to be drawn.
1048
1049         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
1050         statusbar label to 1, so it doesn't make toplevels resize oddly
1051         (gtk_statusbar_size_request): add grip size to request
1052         (gtk_statusbar_size_allocate): hack so the hbox still works with 
1053         the grip size in the request
1054
1055         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
1056         bug where showing all on a toplevel makes the toolbar 
1057         button text appear despite the toolbar mode
1058
1059         * gtk/gtkmenubar.c: add internal padding style property
1060
1061         * gtk/gtktoolbar.c: Add internal padding style property; add
1062         shadow type style property
1063
1064         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
1065         state; and put Container::border_width outside the frame
1066
1067         * gtk/gtktextview.c: don't draw focus rectangle if we're in
1068         interior focus mode, we just use blinking cursor
1069
1070 2001-06-04  Havoc Pennington  <hp@redhat.com>
1071
1072         * configure.in: Make gdk-pixbuf have same version number as GTK
1073
1074 2001-06-04  Havoc Pennington  <hp@redhat.com>
1075
1076         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
1077         digits greater than 6. If there actually are limits (which there
1078         likely aren't), should clamp to them not warn.
1079         (gtk_spin_button_new_with_range): don't take log of 0
1080         (gtk_spin_button_size_request): use digits to compute size
1081         request, rather than step increment.
1082
1083         * tests/testgtk.c (create_spins): test larger values of digits
1084         
1085         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
1086         font on map not expose, so we don't get weirdness during scrolling
1087
1088 2001-06-04  Havoc Pennington  <hp@redhat.com>
1089
1090         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
1091         Sam Solon, bug #54577, update value even if not drawable.
1092
1093 2001-06-04  Havoc Pennington  <hp@redhat.com>
1094
1095         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
1096         SCROLL_LEFT, reported by Thomas Broyer.
1097
1098 2001-06-04  Havoc Pennington  <hp@redhat.com>
1099
1100         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
1101         Process updates immediately, to prevent funny lag effect
1102         when scrolling, at some mild potential efficiency cost.
1103
1104 2001-06-04  Havoc Pennington  <hp@redhat.com>
1105
1106         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
1107         slider on the click.
1108
1109 2001-06-03  Havoc Pennington  <hp@pobox.com>
1110
1111         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
1112         hscale/vscale details, so we can use it for scrollbar as well.
1113
1114         * tests/testgtk.c (reformat_value): honor digits from GtkScale
1115
1116         * gtk/gtkenums.h (GtkTroughType): Remove this enum
1117         (GtkScrollType): add START and END from GtkTroughType
1118
1119         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
1120         its x/y arguments
1121
1122         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
1123         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
1124         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
1125         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
1126         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
1127
1128         Notable changes in the process:
1129          
1130         - stepper_size style property is the height for vertical 
1131           ranges, width for horizontal; the other dimension matches
1132           the trough size
1133         - add ability to do NeXT-style steppers (and several other styles
1134           that don't make any sense)
1135         - added min_slider_length, fixed_slider_length properties to
1136           GtkScrollbar
1137         - cleaned some private (or at least useless) functions out of
1138           gtkscale.h    
1139         - moved bindings to GtkScale from subclasses, even arrow keys,
1140           since blind users don't know scale orientation.
1141         - change move_slider action signal to use new GtkScrollType,
1142           remove GtkTroughType argument
1143         - digits rounds the values a range will input to the given 
1144           number of decimals, but will not try to force adjustment 
1145           values set by other controllers. That is, we no longer
1146           modify adjustment->value inside a value_changed handler.
1147         - added getters for GtkScale setters
1148         - middle-click begins a slider drag
1149         
1150 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
1151
1152         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
1153         getting the focus code to work.
1154         (gtk_tree_view_class_init): Add a bunch of keybindings.
1155
1156         * gtk/gtktreeviewcolumn.c
1157         (gtk_tree_view_column_set_cell_data_func):
1158         s/GtkCellDataFunc/GtkTreeCellDataFunc.
1159         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
1160         of "properties_changed" to help justify the death of the latter
1161         signal. (-:
1162
1163         * tests/testtreefocus.c (main): Let some columns be focussable to
1164         test focus better.
1165
1166 2001-06-01  Havoc Pennington  <hp@redhat.com>
1167
1168         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
1169         
1170         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
1171         overwrite in overwrite mode if we already deleted the selection
1172         and replaced it with new text.  
1173
1174         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
1175         selection to an empty range, clear the clipboard if we owned it.
1176         (gtk_label_set_selectable): give up selection if we become
1177         unselectable.
1178         (gtk_label_state_changed): override state changed to unselect text
1179         when insensitive
1180         (get_text_callback): add paranoia check that indexes aren't
1181         outside of label->text
1182         (gtk_label_select_region): make -1 for start_offset mean "end of
1183         label," for consistency with GtkEditable
1184
1185         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
1186         GTK_DIALOG_NO_SEPARATOR flag
1187
1188 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
1189
1190         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
1191         notifications on non-existant "enable_arrow_keys".
1192         (#53753, Skip Montanaro)
1193
1194 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
1195
1196         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
1197         GDK_TYPE_RECTANGLE.
1198
1199         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
1200         of allocation argument be GDK_TYPE_RECTANGLE.
1201
1202 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
1203
1204         * gtk/gtkoptionmenu.c: Account for the fact that the border
1205         width is _outside_ the window. (Fixes #54585, bug found
1206         by Bastien Nocera.)
1207
1208 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
1209
1210         * gtk/gtksettings.c (gtk_settings_get_property): Validate
1211         value from GDK settings against parameter spec.
1212
1213         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
1214         to temporary values and use g_value_transform(), since
1215         thinking that GValue was going to be easy or efficient
1216         to use was, of course, a mistake.
1217
1218         * gtk/gtksettings.c: Add cursor blink setting.
1219         
1220         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
1221
1222         * gtk/gtkentry.c: Add cursor blinking.
1223
1224         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
1225         cursor blink global settings.
1226
1227         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
1228         for :text_position in places where it is missing.
1229
1230 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
1231
1232         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
1233
1234 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
1235
1236         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
1237         not pkg-config. (#51032)
1238
1239         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
1240         (fixes #51952, James Henstridge)
1241         
1242 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
1243
1244         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
1245         Rename to the more correct gtk-go-up.
1246
1247         * gtk/stock-icons/stock_menu_sort_ascending.png:
1248         Added new file.
1249         
1250         * gtk/stock-icons/stock_menu_sort_descending.png:
1251         Changed to show descending instead of ascending.
1252
1253         * gtk/gtkiconfactory.c:
1254         Added menu size icon to sort ascending.
1255
1256         * gtk/stock-icons/Makefile.am:
1257         Added stock_menu_sort_ascending.png.
1258         
1259         * gtk/gtkseparatormenuitem.c:
1260         Use correct typenames.
1261
1262 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
1263
1264         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
1265         gulong as in GSignal.
1266
1267 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
1268
1269         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
1270         instances of GtkCellRenderer in code (all but dnd icon code).
1271         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
1272         there, and I can do multiple Cells per column.
1273
1274         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
1275
1276         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
1277         when model was unreffed prior to removing the row reference.
1278
1279 2001-05-25  Havoc Pennington  <hp@redhat.com>
1280
1281         * gtk/gtkiconfactory.c: fix so that default icons are created if 
1282         you call gtk_stock_list_ids()
1283
1284         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
1285         in list
1286
1287 2001-05-25  Havoc Pennington  <hp@redhat.com>
1288
1289         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
1290         set can render without falling back to missing image icon
1291
1292         * gtk/gtktextview.c (gtk_text_view_size_request): request full
1293         size of text, instead of random values
1294
1295         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
1296         size of tree view, instead of random values
1297
1298         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
1299         image in an appropriate size
1300
1301         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
1302         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
1303
1304         Throughout: fix GTK_STOCK_BUTTON_ instances
1305         
1306         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
1307         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
1308         Add a bunch of new stock items/icons
1309
1310         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
1311         new function, convenience for inserting columns with a data func
1312
1313         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
1314         (_gtk_icon_factory_list_ids): use list of all factories to
1315         generate a list of all known IDs
1316
1317         * gtk/gtkstock.c (gtk_stock_list_ids): replace
1318         gtk_stock_list_items() with a function that returns all IDs known
1319         including those for GtkIconFactory.
1320
1321 2001-05-25  Hans Breuer  <hans@breuer.org>
1322
1323         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
1324         work -> check boxes and radio buttons are drawn now, even on win9x.
1325         Improved line settings a bit, still no clue how to get really dotted
1326         lines on win9x, on NT it's PS_ALTERNATE.
1327
1328         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
1329         GDK_HINT_MIN_SIZE as well
1330
1331         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
1332
1333         * gtk/gtk.def : updated
1334
1335         * gtk/gtktreeprivate.h : change column_drop_func to be a function
1336         pointer not a function pointer pointer
1337
1338         * tests/testdnd.c : include <stdlib.h> for putenv prototype
1339
1340         * tests/testsocket.c : made it compile on win32 again
1341
1342         * tests/makefile.msc : one more test-app uses prop-editor.obj
1343
1344 2001-05-22  Havoc Pennington  <hp@pobox.com>
1345
1346         * gtk/gtkbin.c (gtk_bin_get_child): New function
1347
1348 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
1349
1350         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
1351         to ignore when doing compose processing.
1352
1353 2001-05-22  Joe Shaw  <joe@ximian.com>
1354
1355         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
1356         Simplify as suggested by Havoc. Just get the last iter and work
1357         backward to the tag instead of getting a line and working back from
1358         there. Fixes passing in an invalid offset to
1359         iter_init_from_byte_offset().
1360
1361 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
1362
1363         * gtk/gtktreeview*.h: 
1364         * gtk/gtkcell*.h:
1365         * gtk/gtk*store.h:
1366         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
1367         macros to all objects.
1368
1369 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
1370
1371         * gtk/gtkcellrenderertext.c
1372         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
1373         with very large (TM) amounts of text.  May be moved to
1374         GtkCellRenderer in the future, though I'm not sure it wants to be
1375         this accessible.
1376
1377         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
1378         More sanity brought to this class.  I like it.
1379
1380         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
1381         case.  Kids, don't try this at home.
1382
1383         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
1384         convenience function.
1385
1386         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
1387
1388 2001-05-21  Alexander Larsson  <alexl@redhat.com>
1389
1390         * gtk/gtkfontsel.c:
1391         Added properties. Based on patch by Lee Mallabone.
1392
1393         * gtk/gtkruler.c:
1394         * gtk/gtkhruler.c:
1395         * gtk/gtkvruler.c:
1396         * gtk/gtktext.c:
1397         * gtk/gtktextview.c:
1398         Converted GtkArg to GParam. Based on patches by John Margaglione.
1399
1400         * tests/Makefile.am:
1401         * tests/testtext.c:
1402         Add a property editor to testtext.
1403         
1404 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
1405
1406         * gtk/gtk{h,v,}paned.c: Only show the separator if 
1407
1408         * configure.in: Fixed reversed conditional causing all image
1409         libraries to be linked in.
1410
1411 2001-05-21  Joe Shaw  <joe@ximian.com>
1412
1413         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
1414         that top_y needs to be >= 0.
1415
1416 2001-05-11  Havoc Pennington  <hp@pobox.com>
1417         
1418         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
1419         losing connection to the X server.
1420
1421 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
1422
1423         * configure.in: Start checks for X from pangox/pangoxft
1424         CFLAGS to avoid duplicate libraries.
1425
1426         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
1427
1428         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
1429         to include gobject.
1430         
1431 2001-05-18  Alexander Larsson  <alexl@redhat.com>
1432
1433         * gtk/gtkspinbutton.c:
1434         Convert GtkArgs to GParams. Based on patch by John Margaglione.
1435         Also do size request reasonable for MAXDOUBLE. Previously it printed
1436         the limits to a buffer and overran it. Instead do it using log10() and
1437         limit the width to 10 digits.
1438         
1439         * gtk/gtkwidget.c (gtk_widget_get_property):
1440         Correctly handle setting the parent property to NULL.
1441
1442 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
1443
1444         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
1445         style attributes even if the widget isn't realized.
1446
1447         * demos/gtk-demo/main.c: Use a slightly smaller font.
1448
1449 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
1450
1451         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
1452         This is something that only a widget writer would ever want
1453         to change.
1454
1455         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
1456         gtk_signal_emit_by_name().
1457
1458         * gtk/gtkviewport.c: Fix some warnings.
1459
1460         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
1461         allowing the requisitions of multiple widgets to be grouped
1462         together.
1463
1464         * tests/testgtk.c: Add GtkSizeGroup test
1465
1466         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
1467
1468         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
1469         warnings.
1470
1471         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
1472
1473 2001-04-28  Martin Baulig  <baulig@suse.de>
1474
1475         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
1476         to gtk_image_menu_item_set_icon() and made it work if there's already
1477         an image.
1478         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
1479         (gtk_image_menu_item_new_with_label): New function.
1480
1481 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
1482
1483         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
1484         highlighting code!!!!  The result is okay so long as you don't try
1485         to stress it.  It also highlights a bug in the TextView so it's in
1486         an unproportional font right now until it's fixed.
1487
1488         *demos/gtk-demo/*.c: Clean up code a bit to make it
1489         ugly-parser(TM) friendly. (-:
1490
1491 2001-05-17  Joe Shaw  <joe@ximian.com>
1492
1493         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
1494         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
1495         if it is only partially onscreen.
1496
1497 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
1498
1499         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
1500         not by characters.
1501
1502         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
1503         are not zero or one; that is, when graphemes of multiple characters
1504         are involved.
1505
1506         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
1507         FIXME.
1508
1509 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
1510         
1511         * gtk/gtkbbox.c:
1512         Add properties, based on patch by Lee Mallabone.
1513
1514         * gtk/gtknotebook.c:
1515         * gtk/gtktoolbar.c:
1516         Convert from GtkArg to GParam, based on patch by John Margaglione.
1517         
1518         * gtk/gtkhscale.c:
1519         * gtk/gtkvscale.c:
1520         * gtk/gtkhscrollbar.c:
1521         * gtk/gtkvscrollbar.c:
1522         * gtk/gtkrange.c:
1523         Move adjustment property to GtkRange.
1524
1525         * gtk/gtklabel.c:
1526         Setup mnemonics on property changes
1527
1528         * gtk/gtkwidget.c (gtk_widget_get_property):
1529         GdkExtensionMode is an enum, not a flag. Set it with
1530         g_value_set_enum ().
1531
1532         * tests/prop-editor.c:
1533         Better propery editor.
1534
1535         * tests/testgtk.c:
1536         Add new property test. Pass zero to the property editor to
1537         get properties from all derived types.
1538         
1539 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
1540
1541         * autogen.sh (have_automake): Require libtool-1.4,
1542         automake-1.4p1.
1543
1544         * acinclude.m4: Remove libtool macros.
1545
1546         * gdk-pixbuf/Makefile.am: Add dependencies to loade
1547         modules.
1548
1549         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
1550         for libgdk.
1551
1552         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
1553         libgdk.la for libgtk.
1554
1555         * modules/input/Makefile.am: Make modules have full
1556         dependencies.
1557
1558 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
1559
1560         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
1561         #54699 where paths weren't being checked for correctness.
1562
1563 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
1564
1565         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
1566         in any order you wan, whether or not the column is added to the
1567         tree, or the tree is realized.  Yay!
1568
1569         * gtk/gtktreeviewcolumn.c
1570         (gtk_tree_view_column_setup_sort_column_id_callback): handle
1571         sorting columns a lot saner
1572
1573         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
1574         new function to actually set wether or not a column is
1575         reorderable.
1576
1577         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
1578         if we have 'em.
1579
1580         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
1581         Fix nasty bug where we were showing the button just before
1582         realizing it.  As a result, the parent window was
1583         tree_view->window instead of tree_view->priv->header_window.
1584
1585         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
1586         to let you easily reorder a list or tree.
1587
1588 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
1589
1590         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
1591         from args to properties.
1592
1593 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
1594
1595         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
1596         from args to properties. (#51957)
1597
1598         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
1599         calls to after ->set_property call.
1600
1601 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
1602
1603         * tests/prop-editor.c: Block against redundant changes.
1604
1605         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
1606         properties.
1607
1608 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
1609
1610         * gdk/gdkpixmap.h: Remove creative formatting.
1611
1612 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
1613
1614         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
1615         property API. (#51669)
1616
1617         * gtk/gtkscale.c: Patch from John Margaglione converting to
1618         property API. (#51891)
1619
1620         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
1621         to property API. (#50985)
1622
1623 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
1624
1625         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
1626         buffering state across expose event, so we still call end_paint().
1627
1628 2001-05-11  Alexander Larsson  <alexl@redhat.com>
1629
1630         * gtk/gtkhsv.c (paint_triangle):
1631         Expose the ring in the triangle at the correct place when
1632         exposing just a part of the triangle.
1633
1634         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
1635         Return FALSE, or window focusing will not work.
1636
1637 2001-05-11  Havoc Pennington  <hp@pobox.com>
1638
1639         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
1640         #54144
1641
1642         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
1643         bug #54330
1644
1645 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
1646
1647         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
1648         propagate exposes to NULL child.
1649
1650         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
1651         against not having one of the scrollbars.
1652
1653         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
1654         we don't keep a mnemonic window if we have no mnemonic installed.
1655
1656 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
1657
1658         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
1659         it has the _important_ side effect of initializing a class.
1660
1661 2001-05-10  Alexander Larsson  <alexl@redhat.com>
1662
1663         * gdk/linux-fb/gdkprivate-fb.h:
1664         Make sure you can compile out the implementation/wrapper assert
1665         macros.
1666
1667         * gdk/linux-fb/gdkdrawable-fb2.c:
1668         Check implementation/wrappers, initialize type for pixmap dummys.
1669
1670         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
1671         Hide the cursor if reading from the screen.
1672
1673         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
1674         Fix sign bug in tiling code.
1675
1676         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
1677         Handle background pixmaps.
1678
1679 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
1680
1681         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
1682         function to let user control where columns are dragged.
1683
1684         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
1685         Escape is pressed.
1686
1687 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
1688
1689         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
1690         "columns_changed" signal.
1691         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
1692         motion code to draw arrows to the side if indicator is outside the
1693         widget.
1694         (gtk_tree_view_map_expanded_rows): Implement.
1695
1696 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1697
1698         * demos/testpixbuf-save.c: 
1699         * demos/testpixbuf-drawable.c:
1700         Include gdkfb.h on linux-fb.
1701
1702 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1703
1704         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
1705         New function for getting toplevel window at position.
1706         (gdk_drag_find_window): Use get_toplevel_window () instead
1707         of gdk_window_get_pointer(). (gdk_drag_status): Use
1708         correct context for getting window.
1709
1710         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
1711         g_strdup the atom name.
1712
1713         * gdk/linux-fb/gdkwindow-fb.c:
1714         Costmetic fix.
1715
1716         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
1717         Add code for changing cursor on linux-fb backend (same as
1718         win32).
1719
1720 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
1721
1722         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
1723         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
1724         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
1725         report was not for the development branch of GTK+, but it applies
1726         anyways).
1727
1728 2001-05-04  Havoc Pennington  <hp@redhat.com>
1729
1730         * configure.in: fix some shell typos
1731
1732         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
1733
1734         * gtk/gtkimage.c: handle animations
1735
1736         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
1737         border_width * 2, not just border_width
1738
1739         * gtk/gtkscale.c: add "format_value" signal to allow people
1740         to override the way values are drawn.
1741         (gtk_scale_get_value_size): fix width/height mistake,
1742         and compute size from actual displayed text, not 
1743         from made-up text.
1744
1745         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
1746         signal registration
1747
1748         * tests/testtext.c: Add "Remove all tags" menu item for testing
1749
1750         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
1751
1752         * demos/gtk-demo/main.c (main): add hack so we can find modules
1753         without installing gtk
1754
1755         * demos/gtk-demo/textview.c (insert_text): demo font scaling
1756
1757         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
1758         factor)
1759         (gtk_cell_renderer_text_set_property): remove some bogus
1760         g_object_notify
1761
1762         * gtk/gtktexttag.c: add "scale" property which is a font scaling
1763         factor
1764
1765         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
1766         to layout
1767
1768         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
1769         gtk_text_iter_is_first
1770
1771 2001-01-06  Hans Breuer  <hans@breuer.org>
1772
1773         * gdk/gdk.def : updated exports
1774
1775         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
1776         gdk won't compile anymore
1777  
1778         * gdk/win32/gdkevents-win32.c : initialize ret_val when
1779         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
1780         Improved gdk_flush () to not only do pending drawing operations
1781         but also process all currently pending events. This should make
1782         the behaviour more similar to the X11 version.  
1783
1784         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
1785         option needs to be set even if there is no GDK_GC_BACKGROUND.
1786         (gdk_win32_hdc_get) : use predraw_set_background () independent
1787         of value_mask. This allows to draw dashed lines leaving the original
1788         background intact.
1789
1790         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
1791         after processing, because we can't reuse it as the X11 version does.
1792
1793         * gtk/gtk.def : updated exports
1794
1795         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
1796         would like to get rid of this file again, and use straight
1797         makefile.msc again, as the other Gtk+ subdirs do)
1798
1799         * test/makefile.msc (new file) : build the test apps here
1800
1801 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
1802
1803         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
1804         strike-through setting
1805         (gdk_draw_layout_line_with_colors): Render strike-through
1806
1807 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
1808
1809         * Release 1.3.5
1810
1811         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
1812
1813         * NEWS: Updated
1814
1815         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
1816         Makefile breakage.
1817
1818 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
1819
1820         * demos/gtk-demo/images.c (progressive_timeout): Fix
1821         typo in filename.
1822
1823         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
1824         out FIXME warning; just too annoying.
1825
1826 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
1827
1828         * gdk/linux-fb/gdkcolor-fb.c:
1829         Better error messages.
1830
1831         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
1832         Initialize abs_x and abs_y.
1833         
1834         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
1835         Correct handling of stipple offset.
1836
1837         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
1838         Treat directcolor framebuffers as truecolor.
1839         
1840 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
1841
1842         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
1843         dependency on Atk for accessibility support.
1844
1845         * configure.in **/Makefile.am: Major reworking of substituted
1846         variables for CFLAGS/LIBS to make a lot more sane and 
1847         keep the the compile/link lines a bit shorter.
1848
1849         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
1850
1851 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
1852
1853         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
1854         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
1855         use _gtk_boolean_handled_accumulator.
1856
1857 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
1858
1859         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
1860         to fix things so clicking inside selection leaves cursor
1861         at point where clicked. (#50324)
1862
1863         * gtk/gtksettings.c (gtk_settings_class_init): Restore
1864         sane value for default double click time.
1865
1866         * tests/testtext.c (test_init): Really path to input modules.
1867
1868 2001-05-03  Sven Neumann  <sven@convergence.de>
1869
1870         * demos/testpixbuf-save.c: include target-specific headers as
1871         done in testpixbuf-drawable.c
1872
1873 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
1874
1875         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
1876         new_text_length appropriately when we run into the 
1877         size limit for the entry. (#53445, reported by Jeff Franks)
1878
1879         * tests/testgtk.c (create_entry): Remove most of the
1880         property toggle buttons. Replace with a "Props" button
1881         that brings up a property editor.
1882
1883         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
1884         Split the property editor code out for reuse, improve.
1885
1886 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
1887
1888         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
1889         trap errors around calls to XSetInputFocus since we have
1890         no way of knowing reliably whether we are viewable or
1891         not. (#53947)
1892
1893 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
1894
1895         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1896         fix bug in dropping columns.  Moving columns now basically works
1897         modula some fine tuning.
1898
1899 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
1900
1901         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
1902         autoscroll support.  It mostly works, but could use some fine
1903         tuning.
1904         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1905         Actually move the column.
1906
1907 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
1908
1909         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
1910           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
1911           New default theme! A slighly improved version of the 2.0 Raleigh
1912           theme, with Windows-esque focus/drawing default. 
1913           (GtkWidget::interior_focus defaults to TRUE.)
1914
1915         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
1916
1917 2001-04-30  Havoc Pennington  <hp@pobox.com>
1918
1919         * tests/testtext.c (line_numbers_expose): fix to work with
1920         gtk_paint_layout change
1921
1922 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
1923
1924         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
1925           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
1926           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
1927           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
1928
1929         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
1930           with GtkWidget::interior_focus = TRUE better.
1931
1932         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
1933         ::default_outside_border for more flexibility.
1934
1935         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
1936         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
1937         change that had to be made with g_object_get.
1938
1939 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
1940
1941         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
1942         (gtk_tree_view_move_column_after): Clean up interface. 
1943
1944 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
1945
1946         * gtk/gtkpacker.h:
1947         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
1948          to gtkenum.h.
1949
1950         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
1951         handled in switch).
1952
1953         * gtk/Makefile.am:
1954         (gtk.defs): generate enum portions with  glib-mkenums.
1955         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
1956         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
1957         
1958         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
1959         addition.
1960
1961         * docs/Changes-2.0.txt: keep a note on signal handlers now
1962         not getting emitted during the emission they were connected within.
1963
1964 2001-04-28  Havoc Pennington  <hp@pobox.com>
1965
1966         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
1967
1968 2001-04-24  Havoc Pennington  <hp@redhat.com>
1969
1970         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
1971         (gtk_text_layout_move_iter_to_next_line): fix these two for
1972         invisible text, lots of other stuff still hosed.
1973
1974         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
1975         new function, replaces the get/set palette stuff. This function 
1976         is intended for use by libgnomeui which should set the hook to a
1977         thing which sets the palette in GConf, and we need the
1978         GConf-to-xsettings proxy which will result in the change being
1979         propagated back to the GTK app.
1980
1981         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
1982         about unusable signals that it may be because the signal has 
1983         parameters.
1984
1985         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
1986         style, otherwise gtkrc.c won't know to create a new GtkStyle for
1987         it.
1988         (gtk_widget_modify_color_component): call
1989         gtk_widget_modify_style() so the rc style will get copied.
1990         (gtk_widget_modify_font): ditto
1991
1992         * gtk/gtkrc.c: make a couple variables static
1993
1994         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
1995         help button by default, since it does nothing
1996
1997         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
1998         around with UI
1999
2000         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
2001         so we can have tooltips
2002
2003         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
2004         can have tooltips
2005
2006         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
2007         GDK_ENABLE_BROKEN, because its memory behavior is completely
2008         hosed.
2009
2010         * gtk/gtknotebook.c: remove key press handler, replace with
2011         binding set, add numeric keypad support
2012
2013         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
2014
2015         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
2016
2017         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
2018         addition to plain Delete
2019
2020         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
2021         GDK_KP_Enter in addition to GDK_Return
2022
2023         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
2024         activate on entry instead of key press
2025         (gtk_font_selection_on_clist_key_press): get
2026         rid of this signal handler, not needed with new font sel.
2027
2028         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
2029         no-longer-needed emit_stop_by_name(), just return TRUE
2030
2031         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
2032         cruft, this widget is no longer focusable.
2033
2034         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
2035         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
2036         move_slider action signal, add binding set for vscale/hscale, in
2037         the process support numeric keypad
2038
2039         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
2040         make GDK_Return and GDK_KP_Enter activate the entry via 
2041         binding set, instead of hardcoded.
2042
2043 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
2044
2045         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
2046         code.  Some documentation added.
2047
2048 2001-04-27  Havoc Pennington  <hp@redhat.com>
2049
2050         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
2051
2052         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
2053
2054         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
2055         line/para separators
2056         (gtk_entry_create_layout): set single paragraph mode on the layout
2057
2058         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
2059         spacing between the image and label; instead, inside a button box 
2060         the button will get extra space that will go there, but if people 
2061         configure button box for 0 chubbiness, then there's no spacing.
2062
2063         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
2064         and min/max size style properties, so people can tune their
2065         chubbiness.
2066
2067         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
2068         functions
2069
2070         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
2071         space_style, and button_relief into style properties, remove
2072         functions for setting them
2073         
2074         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
2075         it back down
2076
2077         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
2078         types from gtk_widget_style_get
2079
2080         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
2081         with a style property.
2082
2083         * gdk/x11/gdkevents-x11.c: namespace the settings
2084
2085         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
2086
2087         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
2088         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
2089         be used. Also, translate doc strings for settings. Also, namespace
2090         the double-click-time property. Also, remove bell properties crap.
2091
2092 2001-04-27  Sven Neumann  <sven@gimp.org>
2093
2094         * Makefile.am: before creating links, check if pkg-config files
2095         exist for the default target. Otherwise link to the pkg-config files
2096         that got installed with this build.
2097
2098 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
2099
2100         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
2101         dragging code.  Revealed some (potential) GdkWindow bugs.
2102
2103         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
2104         _gdk_window_init_position to the end of reparent to fix the case
2105         of reparenting when new_x != old_x and new_y != old_y.
2106
2107 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
2108
2109         * gtk/gtkentry.c (strstr_len): Fix optimization that
2110         was correct for the use here, but completely incorrect
2111         in general.
2112
2113 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
2114
2115         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
2116         until patch adding gtk_window_set_size() is recommitted. 
2117
2118         * **Makefile.am configure.in gdk/x11/gdkim-11.c
2119           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
2120           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
2121           (#10784)
2122
2123 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
2124
2125         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
2126         window == NULL in a number of cases.
2127
2128         * tests/testdnd.c: Set module path for gdk-pixbuf.
2129
2130 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
2131
2132         * gtk/Makefile.am xembed.h: File containing #defines
2133         for XEMBED protocol.
2134
2135         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
2136
2137         - Change protocol from old plug/socket specific protocol
2138           to XEMBED draft
2139         - Various fixes to work with GTK+-2.0
2140
2141         Still quite a bit of work to do here to handle initiation
2142         from the socket side (as specified by XEMBED), to handle
2143         the more advanced features of XEMBED, and to figure out
2144         a good way to handle same-app embedding with less overhead
2145         than using full XEMBED.
2146
2147 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
2148
2149         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
2150         track of whether the toplevel has the focus; only send
2151         focus-in events to the focus widget when the window
2152         actually has the focus.
2153
2154 2001-04-25  Havoc Pennington  <hp@pobox.com>
2155
2156         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
2157         were still in the header
2158
2159 2001-04-24  Alexander Larsson  <alexl@redhat.com>
2160
2161         * gtk/gtkclist.[ch]:
2162         * gtk/gtkctree.c:
2163         When there is a row highlighted for D'n'D it must alse
2164         be painted hightlighted on exposes. Otherwise exposes from
2165         the icon being dragged will mess up the hightlight.
2166
2167         * gtk/gtkfontsel.c:
2168         Don't recenter selected font when exposing the font family
2169         clist. This means you can now actually scroll the font family
2170         list.
2171
2172         * gtk/gtknotebook.c:
2173         Fix focus movement on scrolling tabs that are placed on the left
2174         and right.
2175
2176 2001-04-21  Havoc Pennington  <hp@pobox.com>
2177
2178         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
2179         empty/invisible lines.
2180
2181         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
2182         (gtk_text_iter_set_visible_line_index): new functions to set
2183         indexes excluding invisible text
2184
2185         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
2186         index
2187
2188         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
2189         (gtk_text_iter_get_visible_line_offset): new functions to 
2190         get indexes excluding invisible text
2191
2192         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
2193         bunch of extra padding that served no purpose
2194
2195         * gtk/gtkdialog.c: Make all the spacings configurable via style
2196         properties, for chubbiness configuration in themes
2197
2198         * tests/testtext.c: fix path to the immodules.
2199         
2200 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
2201
2202         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
2203         got munched by #endif.
2204
2205         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
2206
2207         * gtk/gtktreeview.c: Refactored code to clean up a number of
2208         events.
2209
2210         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
2211         values to make consistent with other functions.  Spotted by Jeff
2212         Franks <jcf@tpg.com.au>.
2213
2214         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
2215         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
2216
2217 2001-04-23  Sven Neumann  <sven@gimp.org>
2218
2219         * gtk/Makefile.am
2220         * gtk/gtkplug.c
2221         * gtk/gtksocket.c: on request of Owen, reverted my last change 
2222         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
2223
2224 2001-04-23  Sven Neumann  <sven@gimp.org>
2225
2226         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
2227         compile for non-X11 targets again
2228
2229 2001-04-20  Alexander Larsson  <alexl@redhat.com>
2230
2231         * gtk/gtkcolorsel.[ch]:
2232         API Change. Take GdkColor arguments instead of gdouble *.
2233         Leave the old gtk_color_selection_set_color for compatibility,
2234         but marked deprecated.
2235         Do correct rounding when converting RGB <-> HSV.
2236         
2237         * gtk/gtkcolorseldialog.c:
2238         * tests/testgtk.c:
2239         Use new GtkColorSelection API.
2240
2241         * gtk/gtkhsv.c:
2242         Fix problem selecting colors in triangle when Hue is 330.
2243         Fix some black dots around the HSB triangle.
2244         
2245         * gtk/gtkfilesel.c:
2246         return FALSE from the focus_in_event handler to fix focus problems.
2247
2248 2001-04-18  Havoc Pennington  <hp@redhat.com>
2249
2250         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
2251         set, so keybindings are configurable    
2252         (gtk_window_activate_default): Change to activate the focus widget
2253         instead if there's a focus widget, to be consistent with the
2254         behavior that previously existed in key_press_event
2255
2256 2001-04-18  Havoc Pennington  <hp@redhat.com>
2257
2258         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
2259
2260 2001-04-18  Havoc Pennington  <hp@redhat.com>
2261
2262         Close bug #50615:
2263         
2264         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
2265         the layout
2266
2267         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
2268
2269         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
2270
2271         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
2272         
2273         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
2274         to blue for base, in addition to bg
2275         
2276 2001-04-18  Havoc Pennington  <hp@redhat.com>
2277
2278         * tests/testgtk.c (create_image): allow shrinking the image window
2279         to test that we clip to allocation.
2280
2281         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
2282         #9845
2283
2284         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
2285
2286 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
2287
2288         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
2289         mode on shm segments to 0600. We'll see who complains.
2290
2291         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
2292         _gdk_windowing_window_destroy() AFTER recursing through
2293         children.
2294
2295         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
2296         testsocket_child on X.
2297
2298         * tests/testsocket[_child].c: Fix uses of
2299         gtk_window_get_default_accel_group().
2300
2301         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
2302
2303         * gdk/gdkimage.c: (gdk_image_get):
2304         Deal with the possibility that XGetImage() might return NULL.
2305         Allocate the GdkImagePrivate structure only after XGetImage()
2306         succeeds in order not to dereference a NULL ximage pointer.  This
2307         prevents a core dump when XGetImage() fails - which is unlikely,
2308         but can happen due to race conditions accessing the geometries of
2309         drawables.  An x error will still be triggered, but the gdk image
2310         wrapper at least wont seg fault.
2311         
2312 2001-04-18  Havoc Pennington  <hp@redhat.com>
2313
2314         * gtk/gtkimage.c: fix to properly queue resizes when the image is
2315         set
2316
2317         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
2318         if the insertion point isn't editable
2319
2320         * demos/gtk-demo/images.c: Added a GtkImage demo
2321
2322         * demos/gtk-demo/drawingarea.c: drawing area demo
2323         
2324         * demos/gtk-demo/menus.c (create_menu): cleanups
2325
2326 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
2327
2328         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
2329           gdk/x11/gdkevents-x11.c: Introduce an extra child
2330         of toplevel windows that serves to hold the focus to
2331         avoid events being delivered to embedded windows.
2332
2333         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
2334         some extra variables to clean up code and reduce the
2335         number of casts.
2336
2337         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
2338         guint for 1 bit bit fields, not gboolean.
2339
2340 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
2341
2342         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
2343         not TRUE. (Fixes #52925)
2344
2345 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
2346
2347         * Released 1.3.4
2348
2349         * NEWS: Updated
2350
2351         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
2352         use GTK_TYPE_ENUM.
2353
2354 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
2355
2356         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2357
2358         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
2359         names to compatibility #defines so docs work.
2360
2361         * gtk/gtkenums.h: Remove GtkMenuFactoryType
2362
2363         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
2364
2365         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2366
2367         * tests/testgtkrc: No magenta cursors, please.
2368
2369         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
2370
2371         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
2372         
2373 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
2374
2375         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
2376         grabs, since they are no longer necessary.
2377
2378         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
2379         by signal_connect() and call gtk_button_pressed() rather
2380         than signal_connect_after().
2381
2382         * tests/testgtk.c: Restore radio menu items to combos 
2383         since they'll look OK with Raleigh, and it is easier
2384         than finishing the process of removing them that was
2385         started earlier.
2386
2387 2001-04-16  Hans Breuer  <hans@breuer.org>
2388
2389         * gdk/gdk.def :
2390         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
2391
2392         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
2393         we are interested in the functions return value not the function address
2394         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
2395
2396         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
2397
2398 2001-04-14  Hans Breuer  <hans@breuer.org>
2399
2400         * gdk/gdk.def :
2401         * gdk/makefile.msc : updated
2402
2403         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
2404         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
2405         (the testgtk::text backgound pixmap is drawn again)
2406         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
2407         Win32 Pango change
2408         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
2409
2410         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
2411         Not sure if the returned settings have the right unit, because I couldn't
2412         find any docs for the X version ...
2413
2414         * gtk/gtk.def :
2415         * gtk/makefile.msc.in : updated
2416
2417 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
2418
2419         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
2420         wording problems. (Compared to version from Johannes Stezenbach to
2421         check correctness.)
2422
2423 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
2424
2425         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
2426         this to compile.
2427
2428 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
2429
2430         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
2431         not pixbufpos.
2432
2433         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
2434
2435         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
2436         are unsigned insts, therefore use g_value_set_uint.
2437         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
2438
2439 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
2440
2441         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
2442
2443         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
2444         GTK_TYPE_STRING.
2445
2446         * gtk/gtktreeview.c: New functions to allow initial column
2447         dragging work.
2448
2449         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
2450
2451         * tests/testtreefocus.c: give dave some love.
2452
2453         * tests/testtreesort.c: Modify test to check really long samples.
2454
2455 2001-04-11  Alexander Larsson  <alexl@redhat.com>
2456
2457         * gtk-2.0.m4: Pass pkg-config options
2458         before the other args so it works even if
2459         POSIXLY_CORRECT is set.
2460
2461 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
2462
2463         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
2464         0, interface 0).
2465
2466 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
2467
2468         * gtk/gtkcalendar.c (gtk_calendar_button_press):
2469         check for action_func != NULL
2470
2471 2001-04-04  Sven Neumann  <sven@gimp.org>
2472
2473         * tests/testgtk.c (test_init): corrected path to gtk.immodules
2474
2475 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
2476
2477         * Released Gtk+-1.3.3.
2478
2479 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
2480
2481         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
2482
2483 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
2484
2485         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
2486         files to/from source dir. (if we don't stay in builddir, we
2487         can't reach make-inline-pixbuf.
2488
2489         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
2490         deps.
2491
2492         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
2493         ages 0).
2494
2495 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
2496
2497         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
2498         moved to the GtkTreeSortable interface.
2499
2500         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2501         Make more efficient (fixes #50262).
2502
2503 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
2504
2505         * NEWS: Updated.
2506
2507         * configure.in: Remove support for uninstalled glib.
2508
2509         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
2510         so as not to stop emission.
2511
2512         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
2513         is no longer supported.
2514
2515         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
2516         into tests, change build order to build modules before
2517         gtk/.
2518
2519         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
2520         to here.
2521
2522 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
2523
2524         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
2525         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
2526         GPatternSpec. this is actually unlikely to cause breakage in
2527         third-party apps since except for gle, pretty much ever caller
2528         passes NULL here.
2529
2530         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
2531
2532         * *.c: use g_pattern_*() API.
2533
2534         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
2535
2536         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
2537         directions aren't passed in.
2538
2539         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
2540         functionality to be usable from gtkstyle.c as well, give precedence
2541         for conversion to user-supplied parsers.
2542         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
2543
2544         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
2545         _gtk_settings_parse_convert() for rcporperty value conversion.
2546
2547 2001-04-03  Alexander Larsson  <alexl@redhat.com>
2548
2549         * gdk/linux-fb/gdkevents-fb.c:
2550         Add empty gdk_setting_get().
2551
2552 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
2553
2554         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
2555         variable names.
2556         
2557         * gtk/makeenums.pl: touch this so enum files get remade.
2558
2559 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
2560
2561         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
2562         work again when not sorted.
2563
2564         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
2565         and "expand_row" signal, closing bug 52578.
2566
2567         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
2568         support.
2569
2570         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
2571         support.
2572
2573 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2574
2575         * gdk/gdkevents.h: Add GdkEventSetting event for notification
2576         of changes to system settings, gdk_setting_get() to retrieve
2577         a single system setting.
2578
2579         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
2580         to the draft XSETTINGS mechanism.
2581
2582         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
2583         XSETTINGS.
2584
2585         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
2586         of GDK settings changes to the GtkSettings object.
2587
2588         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
2589         double-click-timeout property to GDK.
2590
2591         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
2592         Define GDK boxed types here.
2593
2594         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
2595         gdk/gdkenumtypes.[ch] for enum definitions.
2596
2597         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
2598         * gtk/gtk-boxed.defs: Comment out GDK types
2599         * gtk/gtktypeutils.h: Remove GDK types
2600         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
2601
2602 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
2603
2604         * Applied patch from Ron Steinke to add signal accumulators
2605         so that signals with the convention 'TRUE return means
2606         handled' stop emission on a TRUE return.
2607
2608         * gtk/gtkmain.[ch]: Add private accumulator 
2609         _gtk_boolean_handled_accumulator, used throughout GTK+.
2610         
2611         * gtk/gtkspinbutton.c: Add accumulator for ::output.
2612
2613         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
2614         
2615         * gtk/gtkwidget.c: Add accumulators for event signals,
2616         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
2617         for ::mnemonic-activate.
2618
2619         * gtk/gtkwindow.c: Add accumulator for ::frame_event
2620
2621 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
2622
2623         * gtk/gtkwidget.c: Add missing include.
2624
2625 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
2626
2627         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
2628         marshaller.
2629
2630         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
2631         "changed" signal to "range_changed".
2632
2633         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
2634         removing a tree from one model would remove all trees from that
2635         model.
2636         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
2637         changed signal instead.
2638
2639 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
2640
2641         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
2642         chaining up to parent impl, since we have a INPUT_ONLY
2643         window.
2644
2645         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
2646         foreground color for the cursor.
2647
2648 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
2649
2650         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
2651         param spec when caching property values, since we unref it
2652         later when we free the style.
2653
2654         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
2655         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
2656
2657 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
2658
2659         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
2660         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
2661         stupidity.
2662
2663 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
2664
2665         [ First pass at adding style properties. Still needs some definite
2666         fine-tuning. ]
2667
2668         * gtk/gtkbutton.c: Add ::default_spacing style property.
2669          
2670         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
2671         ::indicator_spacing style properties.
2672
2673         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
2674         style properties.
2675
2676         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
2677         rather than a normal property.
2678
2679         * gtk/gtkwidget.c: Add an ::interior_focus style property to
2680         draw focus inside buttons, in the Windows/Java Metal/etc. style.
2681
2682         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
2683         Honor ::interior_focus.
2684         
2685         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
2686         TRUE.
2687
2688         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
2689         Add ::slider_width, ::trough_border, ::stepper_size,
2690         ::stepper_spacing style properties.
2691
2692         * gtk/gtkscale.[ch] Add ::slider-length style property.
2693
2694 2001-04-02 Alexander Larsson   <alexl@redhat.com>
2695
2696         * gdk/linux-fb/gdkwindow-fb.c:
2697         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
2698         warnings that were spewed on startup.
2699
2700         * gtk/gtkwindow-decorate.c:
2701         gtk_window_reposition -> _gtk_window_reposition
2702
2703 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
2704
2705         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2706         Add boxed type for GtkRequistion. Use it for ::size-request.
2707
2708         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2709         Add a new GtkBorder structure useful for geometry properties
2710         for widgets. Add corresponding GTK_TYPE_BORDER.
2711         
2712         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
2713         Support automatic parser selection like
2714         gtk_settings_install_property_parser().
2715
2716         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
2717         functionality for use by gtk_widget_class_install_style_property.
2718         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
2719
2720 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
2721
2722         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
2723         g_param_spec_unichar(). 
2724
2725 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
2726
2727         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
2728         _NET window managers.
2729
2730         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
2731
2732 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
2733
2734         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
2735         bad needs to be nuked, not just deprecated.
2736
2737         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
2738         gtk_widget_popup().
2739
2740         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
2741         
2742         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
2743         widget.
2744         
2745         * docs/Changes-2.0.txt: updates.
2746         
2747 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
2748
2749         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
2750         for (i = 0; i < 100; i ++)
2751           g_print ("I will confirm it compile before committing\n");
2752
2753 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
2754
2755         * gtk/gtktreestore.c: Initial work on implementing the
2756         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
2757
2758 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
2759
2760         * gtk/gtkwidget.c: fixed a bunch of notifications, added
2761         reference counts around emissions where the widget is used afterwards.
2762         added freeze/thaws around multiple properties being notified.
2763         (_gtk_widget_get_aux_info): cleanups.
2764         
2765         * gtk/gtksettings.c (gtk_settings_install_property): provide
2766         default parsing functions for gdkcolor, enums and flags.
2767
2768         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
2769         applied by owen.
2770         backed out gtk_window_get_location(), gtk_window_set_location(),
2771         gtk_window_get_size() and gtk_window_set_size(), these
2772         have to be sorted out wrg x/y/width/height/default_with/default_height
2773         properties.
2774         kept a flag in GtkWindowGeometryInfo to handle user
2775         resetting default sizes.
2776         cleaned up ZVT comments.
2777         bunch of assorted bug fixes, notification fixes.
2778         (_gtk_window_reposition): make this a really internal function.
2779         
2780         * gtk/testgtk.c: fixups.
2781         
2782 2001-03-31  Hans Breuer  <hans@breuer.org>
2783
2784         * config.h.win32.in : disable USE_MMX for msvc build cause
2785         the assembler doesn't fit and is out of my scope. Disable
2786         USE_GMODULE for msvc build as wel. The right way to share
2787         binaries on win32 would be to use libtiff.dll etc. To reduce
2788         installation hassles IMO it's better to include all fileformats
2789         builtin to gdk-pixbuf
2790
2791         * gdk-pixbuf/makefile.msc : new file
2792
2793         * gdk/gdk.def : updated
2794
2795         * gdk/win32/gdkevents-win32.c : don't erase the background if
2796         .no_bg is set. It improves the scrolling (e.g. of testgtk main
2797         buttons
2798         * gdk/win32/gdkgeometry-win32.c : added comment about the above
2799
2800         * gdk/win32/gdkwindow-win32.c : added three new functions like
2801         the X version. Only one is implemented, because the other two
2802         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
2803         be default behaviour on win32 anyway ...
2804
2805         * gtk/gtk.def : updated
2806
2807         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
2808         from where it was built and add an additional rule to automagically
2809         build gtkmarshal.[hc]
2810
2811         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
2812         before array access for the current entry isn't finished
2813
2814         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
2815         use g_return_val_if_fail
2816
2817         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
2818         for the static array, but let the compiler calculate it. It
2819         makes me wonder if gcc isn't capable to catch bugs like this ...
2820
2821 2001-03-31  James Henstridge  <james@daa.com.au>
2822
2823         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
2824         constant "-1" in the aux info structure.
2825
2826 2001-03-30  Alexander Larsson  <alexl@redhat.com>
2827
2828         * gtk/gtkbutton.c (gtk_button_get_property):
2829         * gtk/gtklabel.c:
2830         Remove leaks.
2831         
2832         * gtk/gtkcontainer.c:
2833         * gtk/gtkhscale.c:
2834         * gtk/gtkhscrollbar.c:
2835         * gtk/gtklayout.c:
2836         * gtk/gtkmisc.c:
2837         * gtk/gtkprogress.c:
2838         * gtk/gtkprogressbar.c:
2839         * gtk/gtkrange.c:
2840         * gtk/gtktable.c:
2841         * gtk/gtkviewport.c:
2842         * gtk/gtkvscale.c:
2843         * gtk/gtkvscrollbar.c:
2844         * gtk/gtkwidget.c:
2845         Property patches, based on patches from John Margaglione and Lee Mallabone.
2846
2847 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
2848
2849         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
2850         adjustment. Cleaned redundant preconditions (spin != NULL). Added
2851         inline API function docs.
2852         (gtk_spin_button_new_with_range): New convenience constructor.
2853         (gtk_spin_button_set_increments): New adjustment helper.
2854         (gtk_spin_button_set_range): New adjustment helper.
2855
2856         * gtk/testgtk.c : added test of the new convenince constructor and
2857         value_changed signals.
2858
2859 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
2860
2861         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
2862         listen to the reorder signal.
2863
2864 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
2865
2866         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
2867         to get the aux info structure fo the widget.
2868
2869         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
2870         above function.
2871
2872         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
2873
2874         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
2875         to get the size of the window manager frame, basically the same
2876         code that gdk_window_get_root_origin() had
2877         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
2878
2879         * gtk/gtkwindow.c (gtk_window_set_default_size): use
2880         gdk_window_resize() if the window is realized and resizeable
2881
2882         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
2883         typo so that setting gravity works
2884
2885         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
2886         allocation if auto_shrink is on, even if the default size
2887         has not changed.
2888
2889         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
2890         g_return_if_fail
2891
2892 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
2893
2894         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
2895         reordering/sorting work.  Now pretty much works.
2896
2897         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
2898         reorder mostly work.  Still need to get the parity correct.
2899
2900         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
2901         signal, so I can listen for the sort_column_changed signal so I
2902         can change my "sort_indicator" property.  Cool.
2903
2904 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
2905
2906         [ Patch from Havoc Pennington, hp@redhat.com ]
2907
2908         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
2909         Add functions gdk_window_begin_resize_drag/begin_move_drag
2910         to start resizing or moving a toplevel window. This
2911         is done either using the _NET_WM_MOVERESIZE protocol,
2912         or, if that isn't present, by emulation.
2913
2914         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
2915         to export the above to GTK+-land.
2916
2917         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
2918         
2919         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
2920         Move this function into gdkwindow, since we need it
2921         when implementing fallback resizing.
2922
2923         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
2924         Fix typo when setting gravity.
2925
2926         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
2927         Add an optional (but on by default) resize grip for resizing 
2928         the parent window.
2929
2930 01-03-29  Alexander Larsson  <alexl@redhat.com>
2931
2932         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
2933         Don't return TRUE from the event handler, that blocks all
2934         event signals on the tooltip widget. Now you can press buttons
2935         in toolbars again.
2936
2937 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
2938
2939         * gtk/testtext.c (create_buffer): Add missing NULL on
2940         valist.
2941
2942         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
2943         c-n-p problem with INCONSISTENT property.
2944
2945         [ Patch from Havoc Pennington  <hp@redhat.com> ]
2946
2947         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
2948         hook.
2949
2950         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
2951         signal as a hook for extending the default popup menu
2952
2953         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
2954         use radio menu items for the input method menuitems
2955
2956         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
2957         inserted unicode from Ctrl-Shift-hex input method
2958
2959         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
2960         validatation here, already done at GtkTextBuffer level.
2961
2962         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
2963         popup_menu run action signal and Shift+F10 and Menu keybindings.
2964
2965         * gtk/gtkentry.c: implement a default handler for popup_menu
2966
2967         * gtk/gtktextview.c: implement a default handler for popup_menu
2968
2969         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
2970         from a key event
2971         
2972         * gtk/gtklabel.c: remove "trailer" cruft
2973
2974 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
2975
2976         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
2977         handle reordering of trees.  Seems to mostly work w/ the exception
2978         of the parity flag.
2979
2980         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
2981         signal.
2982
2983 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
2984
2985         * gtk/gtkwidget.h: c++ fixes.
2986
2987 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
2988
2989         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
2990         memory.
2991
2992 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
2993
2994         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
2995         Nils Barth fixing event return values. (#51041)
2996
2997         * gtk/gtkwidget.c: Fix some return values for default
2998         functions.
2999
3000         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
3001         return values for trough_keys functions.
3002
3003         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
3004         value for add_accelerator (shoudl have been a void
3005         return.)
3006
3007         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
3008         Fix return type of EVENT.
3009
3010         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
3011         signal return a boolean.
3012
3013 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
3014
3015         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
3016         reordered signal.
3017
3018         * tests/testtreesort.c (main): fix spelling.
3019
3020 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
3021
3022         * gtk/gtkliststore.c: More work on implementing sortable
3023         interface.
3024
3025 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
3026
3027         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
3028         reference the widgets in the resulting list. (#11821)
3029         This makes this consistent with gtk_container_children.
3030
3031         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
3032         uses of gtk_window_list_toplevels.
3033
3034 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
3035
3036         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
3037         a virtual function to set whether the IM context should use 
3038         the preedit string. (#51922)
3039         
3040 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
3041
3042         * gdk/gdkpango.h: Remove stale FIXME comment.
3043
3044 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
3045
3046         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
3047         Fixed bug that returned NULL if a filename was selected.
3048
3049 2001-03-24  Havoc Pennington  <hp@pobox.com>
3050
3051         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
3052         to contain the word "theme"
3053
3054 2001-03-24  Havoc Pennington  <hp@pobox.com>
3055
3056         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
3057         slower but finer-grained
3058         (gtk_hsv_focus): get initial focus on the ring or triangle 
3059         according to tab direction
3060
3061         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
3062
3063 2001-03-23  Havoc Pennington  <hp@pobox.com>
3064
3065         * gtk/gtkhsv.c: make this somewhat key-navigable
3066
3067         * gtk/gtkfontsel.c: mnemonics
3068
3069         * gtk/gtkgamma.c: mnemonics
3070
3071         * gtk/gtkcolorsel.c: add mnemonics to labels
3072
3073 2001-03-22  Havoc Pennington  <hp@pobox.com>
3074
3075         Applied big patch from Seth Lytle to fix event handler return
3076         values, slightly modified.
3077
3078         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
3079         handled.
3080         (gtk_calendar_key_press): return TRUE for GDK_space triggers
3081         select_day
3082
3083         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
3084         (gtk_clist_button_release): return TRUE if handled
3085
3086         * gtk/gtkcolorsel.c (mouse_release):
3087         (palette_activate): 
3088         (palette_press): 
3089         (palette_new): 
3090         (mouse_press): 
3091         (get_screen_color): 
3092         fixed return type (void to gboolean), return TRUE,
3093         added GTK_SIGNAL_FUNC cast
3094
3095         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
3096         (void to gboolean), and return TRUE
3097         (gtk_combo_button_release): changed return value to TRUE after
3098         gtk_grab_add on combo->popwin
3099
3100         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
3101         collapse or expand
3102
3103         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
3104         button/motion
3105
3106         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
3107         press/release and motion that trigger act
3108
3109         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
3110
3111         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
3112         for GDK_Return
3113         
3114         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
3115         (gtk_list_button_release): return TRUE if selection
3116
3117         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
3118         press
3119
3120         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
3121         (gtk_menu_shell_button_release): chain parent_menu_shell retval
3122
3123         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
3124         nothing triggered
3125         (gtk_notebook_button_release): return TRUE if we do anything
3126
3127         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
3128         (gtk_spin_button_button_release): return TRUE or chained retval
3129
3130         * gtk/gtktext.c (gtk_text_button_press): 
3131         (gtk_text_button_release): return TRUE
3132         (gtk_text_key_press): remove redundant retval code
3133         
3134         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
3135         and sensitive
3136         (gtk_tree_item_subtree_button_click): changed type to gint, and return
3137         TRUE if sensitive
3138
3139         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
3140         return TRUE
3141
3142 2001-03-23  Havoc Pennington  <hp@redhat.com>
3143
3144         * gtk/testgtk.c: fix warnings
3145
3146         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
3147
3148         * gtk/gtktextview.c: fix warnings
3149
3150         * gtk/gtktext.c (find_cursor_at_line): fix warning
3151
3152         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
3153
3154         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
3155         of this function
3156
3157         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3158         fix warning
3159
3160         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
3161
3162         * gtk/gtkfontsel.c: fix warning
3163
3164         * gtk/gtkcolorsel.c: fix warnings
3165
3166 2001-03-23  Havoc Pennington  <hp@redhat.com>
3167
3168         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
3169
3170         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
3171
3172         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
3173         and deprecated gtk_check_menu_item_set_show_toggle().
3174         
3175         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
3176
3177         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
3178
3179         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
3180
3181 2001-03-23  Havoc Pennington  <hp@redhat.com>
3182
3183         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
3184         some docs
3185
3186 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
3187
3188         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
3189         this.
3190
3191         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
3192         set_cell to set_value
3193
3194         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
3195         set_cell to set_value
3196
3197 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
3198
3199         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3200         fix braino.
3201         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
3202         support.
3203
3204         * gtk/gtktreeview.c: Addition of initial sortable support.
3205
3206         * gtk/gtktreestore.c: Addition of initial sortable support.
3207
3208         * gtk/gtkliststore.c: Addition of initial sortable support.
3209
3210         * gtk/gtkmarshal.list: yet another marshaller.
3211
3212         * gtk/gtktreedatallist.[ch]: shared code between the store models
3213         for handling sorting headers.
3214
3215 2001-03-22  Havoc Pennington  <hp@redhat.com>
3216
3217         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
3218         (gtk_container_unset_focus_chain): Add ability to override the 
3219         focus chain for a container explicitly
3220
3221 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
3222
3223         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
3224         added PROP_MNEMONIC_WIDGET.
3225
3226         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
3227         (gtk_window_remove_mnemonic): 
3228         (gtk_window_add_mnemonic): fixed assertions.
3229         (gtk_window_activate_mnemonic): constrain modifier checks to those
3230         permitted by gtk_accelerator_get_default_mod_mask().
3231         got rid of gtk_window_get_default_accel_group().
3232
3233         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
3234         activatable widgets either by focussing or a warning.
3235         added a signal accumulator to ::activate_mnemonic which stops the
3236         emission once a handler returned TRUE.
3237
3238 2001-03-22  Havoc Pennington  <hp@pobox.com>
3239
3240         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
3241         the stock item label
3242
3243         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
3244
3245         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
3246
3247         * demos/gtk-demo/*.c: Add mnemonics all over the place
3248
3249         * gtk/gtklabel.h: mark parse_uline deprecated
3250
3251 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3252
3253         * gtk/gtkitemfactory.[ch]:
3254         Add support for stock and normal imagemenuitems.
3255         
3256         * gtk/testgtk.c:
3257         Add some tests for mnemonics, stock toolbars, stock
3258         and image menuitems in itemfactory and gdk_window_scroll.
3259
3260 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3261
3262         * gtk/gtkbutton.[ch]:
3263         * gtk/gtkdialog.c:
3264         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
3265         removed accel_group argument. Renamed gtk_button_new_accel() to
3266         gtk_button_new_with_mnemonic() and removed accel_group argument.
3267
3268         * gtk/gtkcheckbutton.[ch]:
3269         New function gtk_check_button_new_with_mnemonic().
3270
3271         * gtk/gtkentry.c:
3272         Override activate_mnemonic and just grab focus.
3273
3274         * gtk/gtkitemfactory.c:
3275         Don't add menu uline accel group, instead use mnemonics support.
3276
3277         * gtk/gtklabel.[ch]:
3278         New support for mnemonics.
3279
3280         * gtk/gtkmarshal.list:
3281         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
3282
3283         * gtk/gtkmenu.[c]:
3284         * gtkmenushell.c:
3285         Use mnemonics instead of accel groups for uline
3286         support in menu items.
3287         Removed gtk_menu_get_uline_accel_group() and
3288         gtk_menu_ensure_uline_accel_group().
3289
3290         * gtk/gtkmenuitem.c:
3291         Override activate_mnemonic to handle switching between
3292         menu items if there are collisions.
3293         
3294         * gtk/gtknotebook.c:
3295         Connect to activate_mnemonic on the tab_label, so that
3296         activating it switches to that notebook page.
3297
3298         * gtk/gtkwidget.[ch]:
3299         Add activate_mnemonic signal. New function
3300         gtk_widget_activate_mnemonic() to emit it.
3301         Default implementation does activate/grab_focus.
3302
3303         * gtk/gtkwindow.[ch]:
3304         Add support for mnemonics in windows.
3305         New functions:
3306         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
3307         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
3308
3309         * gtk/testgtk.c:
3310         Update to function name changes.
3311         
3312 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3313
3314         * gtk/gtkimagemenuitem.[c]:
3315         Add gtk_image_menu_item_new_from_stock()
3316
3317 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
3318
3319         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3320         Fix buglet in meeting.
3321
3322 2001-03-19  Havoc Pennington  <hp@redhat.com>
3323
3324         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
3325         add a bunch of accessor functions. This is because we have
3326         reasonable expectations of extending what fields it contains in
3327         the future.
3328
3329         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
3330         changes
3331
3332         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
3333         GtkIconSource   
3334
3335 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
3336
3337         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
3338         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
3339
3340         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
3341           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
3342           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
3343           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
3344         Change float to double everywhere with the exception of 0<->1.0 alignment
3345         and GtkCurve.
3346
3347 2001-03-19  Tor Lillqvist  <tml@iki.fi>
3348
3349         * gdk/win32/gdkdrawable-win32.c
3350         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
3351         output.
3352
3353         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
3354         gdkwin32.h.
3355
3356 2001-03-18  Tor Lillqvist  <tml@iki.fi>
3357
3358         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
3359         print_event_state, print_event): Use preprocessor macro to make
3360         code more compact. Print also GDK_WINDOW_STATE events.
3361         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
3362         
3363         * gtk/gtk.def
3364         * gtk/makefile.mingw.in: Update.
3365
3366         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
3367         to catch also Cygwin.
3368
3369 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
3370
3371         * gtk/gtkspinbutton.[hc]: added rc-style argument
3372         GtkSpinButton::shadow_type.
3373         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
3374         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
3375         rc-style settings.
3376
3377         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
3378
3379         * gtk/gtkwidget.c: quark cleanups.
3380
3381         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
3382         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
3383         to create_rc_style() (we don't do cloning in standard OO sense).
3384         added per rc style properties.
3385         
3386         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
3387         property values and for caching those. some cleanups.
3388         
3389         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
3390         
3391         * gtk/gtksettings.[hc]: new file for global rc-file properties
3392         (at least currently, should get extended to support X properties
3393         and other communication mechanisms).
3394         
3395         * gtk/gtkwidget.[hc]: added style property support:
3396         (gtk_widget_class_install_style_property_parser): install style
3397         property pspec with parser function for rc-file values other
3398         than LONG, DOUBLE or STRING.
3399         (gtk_widget_class_install_style_property): same as above without
3400         parser (parsers are going to be needed quite infrequently).
3401         (gtk_widget_style_get_property): retrive style property value.
3402         (gtk_widget_style_get_valist): same as above with varargs support,
3403         has NOCOPY semantics.
3404         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
3405
3406 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
3407
3408         * demos/gtk-demo/main.c (row_activated_cb): modified to use
3409         "row_activated" signal.
3410
3411         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
3412         stupidity.  Lets actually pass in the row with this signal...
3413
3414 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
3415
3416         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
3417
3418         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
3419
3420         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
3421         everything into the ::destroy function, and freed a lot more.
3422
3423 2001-03-16  Havoc Pennington  <hp@redhat.com>
3424
3425         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
3426         instead of gint16, to avoid overflow issues, since sizes > 16-bit
3427         are now allowed.
3428
3429 2001-03-16  Havoc Pennington  <hp@redhat.com>
3430
3431         * Applied patch from Nils Barth (bug # 51041) to 
3432         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
3433         in various places.
3434
3435 2001-03-15  Havoc Pennington  <hp@redhat.com>
3436         
3437         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
3438         for properties to set on the tag.
3439
3440         * gtk/testtext.c: fixups to reflect create_tag change
3441         
3442         * gtk/gtktexttag.c (gtk_text_tag_set_property):
3443         background/foreground stipple are objects, not boxed.
3444
3445         * demos/gtk-demo/textview.c: intellihancing
3446
3447 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
3448
3449         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
3450         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
3451
3452 2001-03-16  Alexander Larsson  <alexl@redhat.com>
3453
3454         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
3455         Fix sign error with queued region translations.
3456
3457 2001-03-15  HideToshi Tajima  <tajima@happy>
3458
3459         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
3460         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
3461         * gtk/gtkentry.c (update_im_cursor_location): 
3462         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
3463         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
3464         set_cursor_pos to set_cursor_location in GtkInputContext class
3465
3466 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
3467
3468         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
3469         the location of the cell relative to its area.
3470         * gtk/gtkcell*: modified for above change
3471         * gtk/gtktreeview.c: modified for above change.
3472
3473 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
3474
3475         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
3476          (gtk_tree_view_finalize): actually unref the model.  Thanks to
3477         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
3478
3479 2001-03-14  Havoc Pennington  <hp@redhat.com>
3480
3481         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
3482         
3483         * gtk/gtk.h: remove gtkdata.h
3484
3485         * gtk/Makefile.am: remove gtkdata
3486         
3487         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
3488         not "disconnect" on the adjustments.
3489         
3490         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
3491         GtkData
3492
3493         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
3494         not GtkData
3495
3496         * configure.in: handle case where X render exists, but Pango lacks
3497         Xft support.
3498
3499 2001-03-15 Alexander Larsson  <alexl@redhat.com>
3500
3501         * gtk/gtktoolbar.[ch]:
3502         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
3503         to add stock items to toolbars.
3504
3505         * gtk/Makefile.am:
3506         Remove ../gdk/gdkim.h from gdk_headers.
3507
3508 2001-03-15  Sven Neumann  <sven@gimp.org>
3509
3510         * gdk/gdkim.h: removed
3511         
3512         * gdk/gdkprivate.h
3513         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
3514
3515 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
3516
3517         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
3518         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
3519         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
3520         set_cursor_pos() virtual method
3521
3522         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
3523         (gtk_im_context_xim_set_cursor_pos): add implementation for
3524         set_cursor_pos() method
3525
3526         * gtk/gtkentry.c (recompute_idle_func): set current cursor
3527         position to input methods
3528
3529 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
3530
3531         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
3532         code a lot.
3533
3534         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
3535         g_mem_chunk.
3536         (_gtk_tree_data_list_alloc): use g_mem_chunk.
3537         (_gtk_tree_data_list_node_to_value): Fix to switch on
3538         G_TYPE_FUNDAMENTAL.
3539         (_gtk_tree_data_list_value_to_node): Fix to switch on
3540         G_TYPE_FUNDAMENTAL.
3541         (_gtk_tree_data_list_node_copy): Fix to switch on
3542         G_TYPE_FUNDAMENTAL.
3543
3544 2001-03-12  Havoc Pennington  <hp@redhat.com>
3545
3546         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
3547         to convert to new property API. Also, change default_width and
3548         default_height get_property to return 0 as the flag value for
3549         "unset"; -1 is not a valid value for these fields.
3550
3551 2001-03-12  Havoc Pennington  <hp@redhat.com>
3552
3553         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
3554         enum with registration for icon sizes, instead of strings.
3555
3556         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
3557         gtkwidget.c: Fix to reflect GtkIconSize
3558         
3559 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3560
3561         Make GtkFB compile and link.
3562         
3563         * gdk/linux-fb/gdkdrawable-fb2.c:
3564         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3565         
3566         * gdk/linux-fb/gdkwindow-fb.c:
3567         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3568         Added gdk_window_shape_combine_region.
3569         Added assorted placeholders for unimplemented new GdkWindow API calls.
3570
3571 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3572
3573         * gtk/gtkfilesel.c:
3574         Add more test when converting filenames from/to utf-8.
3575         Don't allow entering text in the filename entry which isn't allowed in
3576         a filename. Just beep instead.
3577
3578 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3579
3580         * gtk/gtkclist.c:
3581         Scroll using gdk_window_scroll(). Don't wait for exposes.
3582         Move the column headers in an order that makes them flash less.
3583
3584 2001-03-10  Hans Breuer  <hans@breuer.org>
3585
3586         * gdk/gdk.def : updated
3587
3588         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
3589         to offseting the clip_mask at the right place
3590
3591         * gdk/win32/gdkwindow-win32.c : don't create background brushes
3592         for all the gdkClasses, especially not for the input_only case.
3593         Otherwise flickering wont be avoidable, because we don't get
3594         WM_ERASEBKGND message for these windows.
3595
3596         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
3597         and fixed massive redraw problems apparently triggered by Alexanders 
3598         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
3599         but it seems to work quite well :-)
3600
3601         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
3602         prototype
3603
3604 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
3605
3606         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
3607         (gtk_list_store_set_cell): Fix a stupid typo.
3608
3609 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
3610
3611         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
3612         select_all not work if you're in SINGLE mode (it doesn't make that
3613         much sense, anyway.)
3614
3615         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3616         handle types more sanely.
3617         (_gtk_tree_data_list_value_to_node): handle types more sanely.
3618         (_gtk_tree_data_list_node_copy): handle types more sanely.
3619
3620         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
3621         GValue better. Converts the type as well.
3622
3623         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
3624         GValue better. Converts the type as well.
3625
3626 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
3627
3628         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
3629         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
3630         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
3631         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
3632
3633         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
3634         gdk_im/gdk_ic.
3635
3636 2001-03-09  Hans Breuer  <hans@breuer.org>
3637
3638         * gdk/gdk.def : updated
3639
3640         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
3641         for their palette
3642
3643         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
3644         removing
3645
3646         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
3647         removing and implemented Havoc's GdkWindow state functions; 
3648         stick/unstick only as no-op, cause I don't know how to emulate 
3649         on win32 ...
3650
3651         * gtk/gtk.def : updated
3652
3653         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
3654
3655         * gtk/gtktypeutils.c : #include <string.h>
3656
3657         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
3658
3659 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
3660
3661         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
3662         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
3663         not a boxed.
3664
3665 2001-03-09  Alexander Larsson  <alexl@redhat.com>
3666
3667         * docs/Changes-2.0.txt:
3668         Document expose event->region change and that gtk_widget_event
3669         doesn't allow passing expose events.
3670
3671         * gdk/gdkevents.h:
3672         Add region to expose event.
3673         
3674         * gdk/gdkevents.c:
3675         Handle event->region in gdk_event_copy() and gdk_event_free().
3676
3677         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
3678         Generate expose_event->region when creating expose events.
3679
3680         * gdk/x11/gdkevents-x11.c:
3681         Generate expose events with regions when translating X events.
3682
3683         * gtk/gtkcontainer.[ch]:
3684         Default expose handler that propagates expose events to NO_WINDOW
3685         children. New function gtk_container_propagate_expose()
3686
3687         * gtk/gtkwidget.[ch]:
3688         Moved gtk_widget_event implementation to gtk_widget_event_internal.
3689         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
3690         expose events. New function gtk_widget_send_expose() to send expose
3691         events. New function gtk_widget_region_intersect() to calculate
3692         window/region intersections.
3693         
3694         * gtk/gtkmain.c (gtk_main_do_event):
3695         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
3696         Use gtk_widget_send_expose() to send expose events.
3697         
3698         * gtk/gtkbin.c:
3699         * gtk/gtkbox.c:
3700         * gtk/gtkfixed.c:
3701         * gtk/gtkimagemenuitem.c:
3702         * gtk/gtklist.c:
3703         * gtk/gtkpacker.c:
3704         * gtk/gtktable.c:
3705         * gtk/gtktree.c:
3706         Remove expose handler, using the default container implementation
3707         instead.
3708         
3709         * gtk/gtkbutton.c:
3710         * gtk/gtkcheckbutton.c:
3711         * gtk/gtkeventbox.c:
3712         * gtk/gtkfixed.c:
3713         * gtk/gtkhandlebox.c:
3714         * gtk/gtklayout.c:
3715         * gtk/gtklistitem.c:
3716         * gtk/gtkmenu.c:
3717         * gtk/gtkmenubar.c:
3718         * gtk/gtkmenuitem.c:
3719         * gtk/gtknotebook.c:
3720         * gtk/gtkoptionmenu.c:
3721         * gtk/gtkpaned.c:
3722         * gtk/gtkscrolledwindow.c:
3723         * gtk/gtktogglebutton.c:
3724         * gtk/gtktoolbar.c:
3725         * gtk/gtktreeitem.c:
3726         * gtk/gtkviewport.c:
3727         Chain expose handler to parent class handler. Use
3728         gtk_container_propagate_expose() to propagate exposes.
3729
3730         * gtk/gtkclist.c (check_exposures):
3731         * gtk/gtktext.c (process_exposes):
3732         Use gtk_widget_send_expose instead of gtk_widget_event.
3733
3734 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
3735
3736         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
3737
3738 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
3739
3740         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
3741         unref the nodes.   Fixes bug #50058.
3742
3743         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
3744         "::ref_iter" to "::ref_node".
3745         (gtk_tree_model_unref_node): change "::unref_iter" to
3746         "::unref_node". Fixes bug #50064.
3747
3748 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
3749
3750         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
3751         support for invisible cells.
3752          (gtk_tree_view_bin_expose): ditto
3753
3754 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
3755
3756         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
3757         on gobjects.
3758
3759         * tests/testtreefocus.c (main): New test file.
3760
3761         * tests/testtreeview.c: update to latest glib changes.
3762
3763         * tests/testtreecolumns.c: update to latest glib changes.
3764
3765 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
3766
3767         * gtk/testgtk.c: re-enabled event watcher emission hooks.
3768
3769 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
3770
3771         * *.c: added accumulator data argument to g_signal_newc()
3772         functions.
3773
3774         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
3775         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
3776         * gtk/treestoretest.c (make_window):
3777         s/g_signal_connect/g_signal_connectc/.
3778
3779         * gtk/gtktextbuffer.c: completed signal arg fixups,
3780         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
3781
3782 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
3783
3784         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
3785         G_CONST_RETURN.
3786
3787         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
3788         ::hierarchy-changed signal when a widget changes
3789         from anchored to unanchored or vice versa.
3790         (anchored means 
3791          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
3792         Use a private flag to keep track of this efficiently.
3793
3794 2001-03-07  Havoc Pennington  <hp@redhat.com>
3795
3796         * gtk/testgtk.c (create_spins): uglify so that size request gets
3797         tested.
3798
3799         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
3800         request on values for upper/lower, completes #6152
3801
3802 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
3803
3804         * Makefile.am: Remove gtk-config-2.0 again.
3805         (Grrrr, pkg-config. And stops make loops.)
3806
3807 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
3808
3809         * gtk/gtksignal.[hc]: removed old emission hook API.
3810         
3811         * docs/Changes-2.0.txt: fixed sections.
3812         
3813         * gtk/gtktextbuffer.c: signal arg fixups.
3814
3815 2001-03-07  Havoc Pennington  <hp@redhat.com>
3816
3817         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
3818
3819         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
3820         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
3821         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
3822         validation and the redraw which is higher priority than the
3823         validation.
3824
3825 2001-03-07  Havoc Pennington  <hp@redhat.com>
3826
3827         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
3828         (gtk_entry_set_property): remove trailer
3829
3830         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
3831         (gtk_entry_get_width_chars): new functions, to set size request to 
3832         a given number of characters
3833
3834         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
3835
3836         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
3837         (gtk_dialog_get_has_separator): new function
3838         (run_delete_handler): fix to not emit "response" signal
3839         because we already did in the delete event handler installed
3840         at dialog creation time.
3841         
3842         * gtk/gtkdialog.h: add a has_separator property,
3843         add GTK_DIALOG_NO_SEPARATOR flag
3844
3845 2001-03-07  Havoc Pennington  <hp@redhat.com>
3846
3847         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
3848         off decorations for a window.
3849
3850         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
3851         changes
3852
3853         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
3854         to get location of PangoLayout inside the label, closes #51198
3855
3856         * gtk/testgtk.c (create_bbox): fix up button box usage
3857
3858         * gtk/testcalendar.c (create_calendar): fix up button box usage
3859
3860         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
3861
3862         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
3863
3864         * gtk/gtkhbbox.h: deprecations
3865
3866         * gtk/gtkvbbox.h: deprecations
3867
3868         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
3869         emulate deprecated gtk_button_box_get_spacing
3870
3871         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
3872         the "set global default" functions
3873         (struct _GtkButtonBox): remove "spacing" field, use the one from 
3874         GtkBox base class
3875
3876         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
3877
3878         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
3879         render the icon, return the missing image icon.
3880
3881         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
3882         image icon if the load fails.   
3883
3884         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
3885         when no image is found; should be the Netscape "missing image"
3886         icon eventually but for now is a random image
3887
3888         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
3889         role for the session manager
3890
3891         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
3892
3893         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
3894         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
3895
3896         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
3897
3898 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
3899
3900         * gtk/*.c: marshaller fixes.
3901         
3902         * gtk/gtkmarshal.list: extreme cleanup.
3903
3904         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
3905         param spec for now.
3906
3907         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
3908         where appliable.
3909
3910         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
3911         special cased autogenerated boxed types from gtktypebuiltins_ids.c
3912         which are not reference counted:
3913         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
3914         PangoFontDescription, GtkTreeIter and GtkTreePath.
3915
3916 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
3917
3918         * gtk/gtktreeselection.h: 
3919         * gtk/gtktreemodel.c:
3920         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
3921         file should be included directly, and gobject/gmarshal.h
3922         as well as gtk/gtkmarshal.h even can't be included directly.
3923
3924         * Makefile.am: grr, install gtk-config-2.0.
3925
3926         * gtk/testgtk.c:
3927         * gtk/simple.c:
3928         * gtk/gtkmenu.c:
3929         * gtk/gtkitemfactory.c: use g_object_connect() instead of
3930         passing "*signal*::*" args to gtk_widget_set().
3931         
3932         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
3933         
3934         * gtk/*.c: removed trailer arg from property setters and getters.
3935         macro fixups.
3936
3937 2001-03-07  Alexander Larsson  <alexl@redhat.com>
3938
3939         * gtk/gtklabel.c (set_markup): Removed warning
3940
3941 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
3942
3943         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
3944         field to allow you to hide cell renderers.
3945
3946         * gtk/gtkcellrenderer.c: Add support for invisible cells.
3947
3948         * gtk/gtktreeview.c: Add support for invisible cells.
3949
3950 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
3951
3952         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
3953         Add "clicked" signal back to columns.
3954
3955         * ChangeLog: remove conflict markers.
3956
3957 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
3958
3959         * gtk/gtkbutton.c: Add animation of activation by, on 
3960         activate, pressing the button, and adding a timeout that 
3961         releases the button after 250ms or on key release and
3962         emits ::clicked. (#51501)
3963
3964         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
3965         action area, we connect to ::clicked instead of ::activate
3966         so the dialog stays up through the animation.
3967
3968 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
3969
3970         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
3971         check the ignore_enter flag for the menu shell that
3972         the item is actually a child of, not for attached
3973         submenus. (#51536)
3974
3975 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
3976
3977         * gtk/gtkmain.c (gtk_propagate_event): Only do special
3978         special key-press grab handling for widgets within
3979         GtkWindows. Otherwise, fall through to normal case.
3980
3981         This prevents key events being sent twice to GtkInvisible
3982         widgets, which can cause all sorts of mischief.
3983
3984 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
3985
3986         * gtk/gtkmain.c (gtk_propagate_event): When a grab
3987         widget is in effect, give the grab widget a first
3988         crack at KEY_PRESS/RELEASE events. (#424)
3989
3990 2001-03-06  James Henstridge  <james@daa.com.au>
3991
3992         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
3993         offset for the window_state_event to point at window_state_event
3994         rather than no_expose_event.
3995
3996 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
3997
3998         * gtk/gtkimmodule.h: fix busted /* comment */
3999
4000 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
4001
4002         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
4003         object properties.
4004
4005 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
4006
4007         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
4008         add object properties.
4009
4010         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
4011         to add object properties.
4012
4013         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
4014         object properties.
4015
4016         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
4017         add object properties.
4018
4019         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
4020         object properties.
4021
4022 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
4023
4024         * gtk/gtktreemodel.c: renamed "child_toggled" to
4025         "has_child_toggled".
4026
4027         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
4028         handle new signal name.
4029
4030         * gtk/gtktreestore.c: Updated to handle new signal name.
4031         * gtk/gtklisttore.c: Updated to handle new signal name.
4032         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
4033
4034 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4035
4036         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
4037         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
4038
4039 2001-03-05  Michael Natterer  <mitch@gimp.org>
4040
4041         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
4042         pixbuf-engine coincidentially also failed to make one of it's
4043         parent_class pointers static, causing overwriting of GtkLabel's
4044         parent_class pointer in pixbuf_style_class_init().
4045         (Will commit the fix to the pixbuf-engine too).
4046
4047 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4048
4049         * gdk/gdkwindow.h:
4050         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
4051         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
4052         gdk_window_set_icon_list for net wmspec functionality.
4053
4054         * gdk/x11/gdkwindow-x11.c:
4055         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
4056         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
4057         gdk_window_set_icon_list.
4058         Added gdk_wmspec_change_state helper function and used it in the code.
4059         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
4060
4061         * gtk/gtkdialog.c (gtk_dialog_init):
4062         Set GDK_WINDOW_TYPE_HINT_DIALOG.
4063
4064         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
4065         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
4066
4067         * gtk/gtkwindow.c:
4068         new function gtk_window_set_type_hint.
4069         On realize, set type hint and modal hint.
4070
4071         * gtk/gtkwindow.h:
4072         Added type_hint field and gtk_window_set_type_hint.
4073
4074 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4075
4076         * gtk/gtklabel.[ch]:
4077         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
4078         New function gtk_label_get_accel_keyval () to get the underline accelerator
4079         of the label. Setting the label pattern overrides other attributes.
4080
4081 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
4082
4083         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
4084         Added missing initializers to gtk_rc_style_init().
4085
4086 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
4087
4088         * gtk/gtktextview.c: fixed bug #51097 about setting 
4089         gtk_text_view_set_border_window_size() if the widget is 
4090         already realized.
4091
4092 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
4093
4094         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
4095
4096         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
4097         comment. Won't do to have duplicated doc comments between
4098         the platform subdirs.
4099
4100 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
4101
4102         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
4103           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
4104
4105         Detectable auto-repeat - make a repeating key generate
4106         press/press/press/release instead of press/release pairs.
4107
4108         If we have Xkb and XkbSetDectableAutoRepeat supports
4109         that, we do it that way. Otherwise, when we get
4110         a release event, we check ahead with XPending to see
4111         if the next key is a KeyPress with the same keycode
4112         and timestamp. (Not 100% reliable, but pretty close.)
4113           
4114 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4115         
4116         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4117         special key-press grab handling for widgets within
4118         GtkWindows. Otherwise, fall through to normal case.
4119  
4120         This prevents key events being sent twice to GtkInvisible
4121         widgets, which can cause all sorts of mischief.
4122  
4123 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4124  
4125         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4126         widget is in effect, give the grab widget a first
4127         crack at KEY_PRESS/RELEASE events. (#424)
4128  
4129 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
4130
4131         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
4132         to extend the selection. (Roughly based on patch
4133         from Jay Cox, #50939)
4134
4135         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
4136         to properly handle previous GDK_BUTTON_PRESS. 
4137         (Patch from Jay Cox, #50938)
4138
4139         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
4140         '\0' back along with the deleted text. (#51148)
4141
4142 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
4143
4144         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
4145         the group when extracting it from the X keyboard event.
4146
4147         * modules/input/Makefile.am modules/input/imipa.c: 
4148         Simple module for entering IPA. (Do we need a 
4149         gtk-stupid-input-tricks CVS module?)
4150
4151 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
4152
4153         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
4154         const.
4155
4156         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
4157
4158         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
4159         is no focus widget for the dialog currently, grab the focus as well
4160         as the default.
4161
4162         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
4163         the action area's children to iterate through, not the
4164         dialog's children.
4165
4166 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
4167
4168         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
4169         Add plug-socket tests. (Won't work worth a darn until I commit
4170         the rest of the plug-socket changes, but no reason these
4171         can't go into CVS now.)
4172
4173 2001-03-02  Havoc Pennington  <hp@redhat.com>
4174
4175         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
4176         _gdk_region_get_xrectangles()
4177
4178         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
4179
4180         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
4181
4182         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
4183         function, contributed by Ron Steinke    
4184
4185         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
4186         gdk_net_wm_supports
4187
4188         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
4189         New function, contributed by Ron Steinke
4190
4191         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
4192         used to line up the text in the entry when using the entry for
4193         editable sheet cell hacks
4194
4195         * gtk/testgtk.c (create_entry): test the activate_default setting
4196         on GtkEntry
4197
4198         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
4199         cause the entry to activate the default button for a dialog when 
4200         activated
4201         (gtk_entry_get_activates_default): new function
4202
4203 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
4204
4205         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
4206         Hwang to move call to sync_selection() up a few lines
4207         to before the row list is modified, to fix crash when
4208         removing rows in the undo_selection list.
4209
4210         (Test case provided by Daniel Elstner:
4211
4212         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
4213
4214 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
4215
4216         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
4217         of tree->root_tree in parent_set rather than _map(), 
4218         fixing #50892 in a bit better manner.
4219
4220 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
4221
4222         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
4223
4224 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
4225
4226         * gtk/gtkstyle.c : Remove duplicate fwd decl for
4227         gtk_default_draw_shadow.
4228
4229 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
4230
4231         * gdk/gdkimage.c (gdk_image_new): Remove excess 
4232         warning, make warnings more verbose, treat a error
4233         in shmat as permanent, and don't try again.
4234         (#51163, Ed Randall.)
4235
4236 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
4237
4238         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
4239         delay for the first click before starting to scroll.
4240         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
4241
4242         * gtk/gtktext.c: GtkText should have I-beam cursor. 
4243         (based on gtk-enf-990513-1.patch, Eric Fisher.)
4244
4245 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
4246
4247         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
4248         cleanup to remove some references to unused
4249         ->xoffset, ->yoffset.
4250
4251 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
4252
4253         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
4254         mask. (#51039, fix from Martin Maierhofer)
4255
4256 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
4257
4258         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
4259         for unshifted + and shifted = for non-us keyboards.
4260         Make <Control>+ and <Control>- work as well as 
4261         <Control>KP_Plus, <Control>KP_Minus for recursive
4262         open/close.  (#2682, René Seindal)
4263
4264 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
4265
4266         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
4267         the active menu item before deactivating the menu,
4268         so gtk_menu_popdown doesn't change the history. (#50964)
4269         
4270 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
4271
4272         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
4273         draw lines with text_gc rather than black_gc.
4274         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
4275
4276 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
4277
4278         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
4279         Move handling of buttons fully in gtktreeviewcolumn.  This code is
4280         less interrelated then it was, but it still requires the
4281         GtkTreeView to map it.
4282
4283         * test/testtreecolumn.c: Now I can add a column to one view,
4284         remove it, add it to the another view, remove it, then re-add it
4285         to the first.  Nifty.
4286
4287 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
4288
4289         * docs/tutorial/gtk-tut.sgml: Minor corrections
4290
4291 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
4292
4293         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
4294         GtkRowReference.
4295
4296 2001-02-28  Havoc Pennington  <hp@redhat.com>
4297
4298         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
4299         draw_default
4300         (gtk_widget_draw_focus): remove this function; we could instead
4301         make it just gtk_widget_draw(), but in most cases I think the
4302         result would be broken user code, so think it's better to have
4303         that code not compile and get fixed
4304         (gtk_widget_draw_default): ditto
4305
4306         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
4307         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
4308         
4309         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
4310         widgets lose/get the default, instead of calling draw_default
4311         
4312         * docs/Changes-2.0.txt: note about all this
4313
4314         Then fixed every widget in GTK, I won't list all the filenames.
4315
4316 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
4317
4318         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
4319         _gtk_tree_row_reference_deleted.
4320         (inserted_callback): Proxy out to
4321         _gtk_tree_row_reference_inserted.
4322         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
4323         get around signal emission ordering problem.
4324
4325         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4326         fix to work with SINGLE 
4327         (_gtk_tree_selection_internal_select_node): Major sanitization on
4328         selections.  SINGLE now seems to work.
4329
4330         * tests/Makefile.am: add testtreecolumn.c:
4331
4332         * tests/testtreecolumn.c: New test.  Mostly points out selection
4333         bugs currently, but will test columns later.
4334
4335         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
4336         selection bug.  I hate touching this code -- it's scary.
4337
4338 2001-02-26  Havoc Pennington  <hp@redhat.com>
4339
4340         * gtk/testgtk.c: test the window state stuff
4341
4342         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
4343         window come to the user's attention as if it were just created
4344         (gtk_window_iconify): new function
4345         (gtk_window_deiconify): new function
4346         (gtk_window_stick): new function
4347         (gtk_window_unstick): new function
4348         (gtk_window_maximize): new function
4349         (gtk_window_unmaximize): new function
4350
4351         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
4352
4353         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
4354
4355         * gdk/x11/gdkevents-x11.c: create window state events when
4356         appropriate
4357         (gdk_wmspec_supported): new function
4358
4359         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
4360         iconification before showing the window
4361         (gdk_window_deiconify): new function
4362         (gdk_window_stick): new function
4363         (gdk_window_unstick): new function
4364         (gdk_window_maximize): new function
4365         (gdk_window_unmaximize): new function
4366
4367         * gdk/gdkwindow.c: store the window state in the window; 
4368         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
4369         window->mapped.
4370         (gdk_window_get_state): return the current window state
4371
4372         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
4373         (gdk_event_get_state): handle GDK_WINDOW_STATE
4374         (gdk_synthesize_window_state): function to create the window state
4375         events
4376
4377         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
4378         event, for changes to "window state" such as maximized, sticky, 
4379         etc.
4380         
4381         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
4382         focuses a window
4383
4384         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
4385         finds out if we support a given WM spec hint
4386
4387 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
4388
4389         * docs/faq/gtk-faq.sgml: New question re memory leaks.
4390
4391 2001-02-25  Hans Breuer  <hans@breuer.org>
4392
4393         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
4394         cause we want to loose those prototypes only in the latter case
4395
4396         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
4397         GdkPixmapImplWin32 because it itsn't derived from it. Use the
4398         impl member variable instead
4399
4400         * gtk/gtk.def : updated
4401
4402         * gtk/gtklist.c : 
4403         * gtk/gtkmenus.c : include <string.h> for memset ()
4404
4405         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
4406         for everthing built here, but for gtk-x.x.dll only. This solves
4407         problem of indifferent gtk type definitions
4408
4409 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
4410
4411         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
4412
4413 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
4414
4415         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
4416         column that is exposed.
4417
4418         (_gtk_tree_view_update_size): Changed name from set_size, and
4419         changed function to do more work, and not force people calling it
4420         to figure out the size.  Simplifies a lot of code elsewhere.
4421
4422 2001-02-23  Alexander Larsson  <alexl@redhat.com>
4423
4424         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
4425         return solid masks for xpms that have no transparent color.
4426         This makes the ..._create_from_xpm... API backwards
4427         compatible.
4428
4429 2001-02-23  Tor Lillqvist  <tml@iki.fi>
4430
4431         * README.win32: Update. Mention the gtk-1-3-win32-production
4432         branch.
4433
4434         * gdk/win32/bdfcursor.c: New file. A program that generates
4435         xcursors.h. Thanks to Stefan Ondrejicka.
4436
4437         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
4438         compact format.
4439
4440         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
4441
4442         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
4443         function, uses xcursors.h.
4444         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
4445         cursor from inline data instead of using LoadCursor() to generate
4446         it from a resource.
4447
4448         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
4449         event, must check the Windows message for mouse button state, as
4450         the GDK event state might not have been built if it is
4451         undelivered. Remove one goto.
4452
4453         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
4454         SetCursor() if the current cursor as returned by GetCursor() is
4455         the window's previous cursor. The ChildWindowFromPoint() test
4456         apparently didn't work correctly.
4457
4458         * gdk/win32/rc/*.cur: Remove.
4459
4460         * gdk/win32/rc/gdk.rc.in: Remove cursors.
4461
4462         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
4463
4464         * gtk/makefile.{mingw,msc}.in: Updates.
4465
4466 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
4467
4468         * gtk/gtktreemodel.h: add functions for signal emission.
4469
4470         * gtk/gtktreestore.c: move to use above functions instead of
4471         g_signal_emit.
4472
4473         * gtk/gtkliststore.c: ditto
4474
4475 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
4476
4477         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
4478         GObject instead of GtkObject.
4479
4480         * gtk/gtkliststore.c: ditto.
4481
4482         * gtk/gtktreemodelsort.c: ditto.
4483
4484         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
4485         GtkTreeModelIface, instead of in each model.
4486
4487 2001-02-21  Havoc Pennington  <hp@redhat.com>
4488
4489         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
4490         unbreak this function
4491
4492         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
4493         properties
4494
4495         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
4496         properties
4497
4498         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
4499         properties
4500
4501         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
4502         mean unset the max length
4503
4504 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
4505
4506         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
4507         Changed name to be set_cell_data_func to make it clear what
4508         the functino does.  Close bug #51069.
4509
4510 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
4511
4512         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
4513         have memory actually freed.  Keeps box running longer.
4514
4515 2001-02-21  Alexander Larsson  <alexl@redhat.com>
4516         
4517         * gtk/gtkseparatormenuitem.[ch]:
4518         Added new menu separator item. The drawing and size handling
4519         is still done in GtkMenuItem, but the API is a bit more sane.
4520         
4521         * gtk/Makefile.am:
4522         Add gtkseparatormenuitem.[ch].
4523
4524         * gtk/gtk.h:
4525         Add gtkseparatormenuitem.h.
4526         
4527         * gtk/gtkentry.c:
4528         * gtk/gtkmenufactory.c:
4529         * gtk/gtktextview.c:
4530         Use the new API for menu separators.
4531         
4532         * demos/gtk-demo/menus.c (create_menu):
4533         Add some GtkSeparatorMenuItem demo code.
4534
4535 2001-02-20  Havoc Pennington  <hp@redhat.com>
4536
4537         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
4538         Lee Mallabone
4539
4540         * gtk/gtkarrow.c: Convert to new property API, patch from 
4541         Lee Mallabone
4542
4543 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
4544
4545         * tests/testtreeview.c (toggled_callback): fix to reflect change
4546         in GtkTreeModelStore.
4547
4548 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
4549
4550         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
4551         function to create an icon set from a pixbuf.
4552
4553 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4554
4555         * gtk/gtkcellrenderertext.[ch]:
4556         Add a "markup" property.
4557
4558         * gtk/treestoretest.c:
4559         Use the markup property, remove some leftover stuff from
4560         GtkTreeModelMapping.
4561
4562 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4563
4564         * gtk/gtklabel.c (gtk_label_set_selectable):
4565         Queue a redraw if the selectable setting was changed.
4566
4567 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4568
4569         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
4570         Actually copy the whole gc, not just the public parts.
4571         
4572         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4573         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
4574         labels.
4575
4576 2001-02-19  Havoc Pennington  <hp@pobox.com>
4577
4578         * gdk/gdkwindow.c: docs
4579
4580         * gdk/gdkrgb.c: docs
4581
4582         * gdk/gdkregion-generic.c: docs
4583
4584         * gdk/gdkgc.c (gdk_gc_set_values): docs
4585
4586         * gdk/gdkdraw.c: docs
4587
4588         * gdk/gdkdrawable.h: deprecate drawable get/set data
4589
4590 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
4591
4592         * demos/gtk-demo/dialog.c: Add simple new demo.
4593
4594 2001-02-19  Havoc Pennington  <hp@redhat.com>
4595
4596         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
4597         insert_child_anchor signal, bug #50245
4598
4599         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
4600         from create_child_anchor, so the anchor is passed in
4601
4602         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
4603         (_gtk_widget_segment_new): have the child anchor object passed in, 
4604         instead of creating it.
4605
4606         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
4607         to gtk_text_buffer_get_modified
4608
4609 2001-02-19  Havoc Pennington  <hp@redhat.com>
4610
4611         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
4612         changed GLib without fixing GTK
4613
4614         * gtk/gtkrange.h: Rename all the stupid implementation detail 
4615         functions to have an underscore in front. Most of them should 
4616         probably just go away, but for starters don't export them.
4617         Bug #50482
4618
4619 2001-02-19  Havoc Pennington  <hp@redhat.com>
4620
4621         * gdk/gdkcolor.h: test was backward, so deprecated functions were
4622         excluded by default
4623
4624         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
4625         clean up the old code a bit
4626
4627         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
4628         inconsistent state
4629
4630         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
4631         draw inconsistent state
4632
4633         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
4634         (create_menu): add inconsistent test
4635
4636         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
4637         new function
4638         (gtk_check_menu_item_get_inconsistent): new function
4639         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
4640         state (using etched in for now)
4641
4642         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
4643         draw inconsistent state
4644
4645         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
4646         function, used when the user has selected a range of stuff in
4647         different states
4648         (gtk_toggle_button_get_inconsistent): accessor for that
4649         (gtk_toggle_button_paint): draw inconsistent state (etched in?
4650         don't know what else to do)
4651
4652 2001-02-19  Hans Breuer <hans@breuer.org>
4653
4654         * gtk/gtk.def : updated exported symbols
4655
4656         * gtk/makefile.msc.in : updated
4657
4658         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
4659         a colormap, when invoked from testgtk::entry. I'm not sure where
4660         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
4661         avoids immediate crashing ...
4662
4663         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
4664         any objections ?
4665
4666         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
4667         0 parameter. At least msvc doesn't like macros with var args. 
4668         I simply removed the extra 0, was it a feature or a typo ?
4669
4670         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
4671         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
4672         because the value assignment to the internal struct wasn't working.
4673         I'm not absolutely sure. The problem could have been resolved by
4674         changing the "func" declartion in the struct, but was the pointer
4675         to the function pointer intended ?
4676
4677         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
4678
4679         * gdk/gdk.def : updated exported symbols
4680
4681         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
4682         only use SetDIBitsToDevice if there is a palette at the drawable
4683         and the image is GDK_VISUAL_PSEUDO_COLOR
4684
4685         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
4686
4687         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
4688
4689         * gdk/*/makefile.msc : updated
4690
4691 2001-02-19  Havoc Pennington  <hp@redhat.com>
4692
4693         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
4694         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
4695
4696         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
4697         (gdk_key_repeat_restore): nuke
4698
4699         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
4700         (gdk_init_check): no atexit func
4701
4702         * gdk/gdkrgb.h: mark some stuff deprecated
4703
4704         * gdk/gdkcolor.h: mark some stuff deprecated
4705         
4706         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
4707
4708         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
4709
4710 2001-02-16  Havoc Pennington  <hp@redhat.com>
4711
4712         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
4713         scroll steps.
4714
4715         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
4716         steps, and add Ctrl-arrow shortcuts for paging visually as with
4717         HScale, since Page Up and Page Down move logically.
4718
4719         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
4720         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
4721         
4722         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
4723         steps
4724         (gtk_range_scroll): handle the visual steps
4725
4726         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
4727         scroll steps
4728
4729         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
4730         steps, not the logical ones.
4731
4732         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
4733         (scroll_vertical): handle up/down steps
4734
4735 2001-02-19 Alexander Larsson  <alexl@redhat.com>
4736
4737         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
4738         Copy data and free data with free().
4739
4740         * gdk-pixbuf/gdk-pixbuf.c:
4741         * gdk-pixbuf/io-jpeg.c:
4742         * gdk-pixbuf/io-png.c:
4743         Use g_try_malloc/g_free instead malloc/free.
4744         
4745         * gdk-pixbuf/test-gdk-pixbuf.c:
4746         Must... initialize... gobject...
4747         
4748         * gdk-pixbuf/pixops/timescale.c:
4749         * gtk/gtkcalendar.c:
4750         Use g_malloc instead of malloc.
4751         
4752 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
4753
4754         * gtk/testgtkrc:
4755         Comment out property assignments, these don't work yet.
4756
4757 2001-02-17  Havoc Pennington  <hp@pobox.com>
4758
4759         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
4760         bit.
4761
4762 2001-02-17  Havoc Pennington  <hp@pobox.com>
4763
4764         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
4765         shadowed variables that had broken size request in some cases,
4766         leading to bogus tooltips (#50996)
4767
4768 2001-02-06  Jon K Hellan  <hellan@acm.org>
4769
4770         Implement fast browsing of tooltips, bug #50619
4771         
4772         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
4773         and last_popdown
4774         
4775         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
4776         use_sticky_delay and last_popdown.
4777         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
4778         time of popdown.
4779         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
4780         is NULL.
4781         (gtk_tooltips_recently_shown): New static function.  Return true
4782         if < sticky_delay has elapsed since last popdown.
4783         (gtk_tooltips_event_handler): Display window after sticky_delay
4784         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
4785         since last popdown.
4786         
4787 2001-02-17  Havoc Pennington  <hp@pobox.com>
4788
4789         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
4790         instead of (). #6394
4791
4792         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
4793         G_CONST_RETURN, make it return by reference, #50473
4794         
4795 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
4796
4797         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
4798         generated ENTER_NOTIFY event with 0, otherwise not explicitely
4799         setup fields contain garbage (e.g. subwindow, breaking
4800         gdk_drawable_ref() upon event copy).
4801         (gtk_menu_stop_navigating_submenu_cb): same here.
4802
4803         * gtk/gtklist.c (gtk_list_vertical_timeout): 
4804         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
4805         * gtk/gtkclist.c (vertical_timeout): 
4806         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
4807         default-zero-intialization for unions to memset(,0,), as unions are
4808         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
4809         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
4810
4811         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
4812         g_closure_sink() warning.
4813
4814         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
4815         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
4816         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
4817         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
4818         
4819 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
4820
4821         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
4822         gtk_*_store_get, and moved to GtkTreeModel.
4823
4824         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
4825
4826         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
4827
4828         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
4829
4830         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
4831         set the func.
4832
4833         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4834         freeze/thaw notify between setting all the properties for a cell.
4835
4836         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
4837
4838 2001-02-15  Havoc Pennington  <hp@redhat.com>
4839
4840         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
4841         the X coordinates so they're with respect to the line, rather than 
4842         with respect to the layout.
4843
4844         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
4845         Mallabone
4846
4847         * gtk/testgtk.c (create_range_controls): add vscale tests, 
4848         and inverted test
4849
4850         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
4851         #50806
4852
4853         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
4854
4855         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
4856         gtk_text_iter_is_end
4857
4858         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
4859         rename gtk_text_buffer_get_end_iter
4860
4861         * gtk/testgtk.c (create_labels): Add test for selectable
4862
4863         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
4864         the selection stuff. This code is kind of broken since it doesn't 
4865         use the theme engine.
4866
4867         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
4868         fix infinite loop and y offset problem
4869         (gdk_draw_layout_line_with_colors): fix foreground color handling
4870
4871         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
4872         that makes the label selectable.
4873         
4874         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
4875         layout when the style is set, since fonts etc. could have changed.      
4876
4877 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
4878
4879         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
4880
4881         * gtk/gtktreemodelsimple.[ch]: removed.
4882
4883 2001-02-16  Alexander Larsson  <alexl@redhat.com>
4884
4885         * gtk/gtktreemodelmapping.[ch]:
4886         New files. Implement GtkTreeModelMapping.
4887         
4888         * gtk/Makefile.am:
4889         Add gtktreemodelmapping.[ch].
4890         
4891         * gtk/gtk.h:
4892         Add gtktreemodelmapping.h
4893
4894         * gtk/treestoretest.c:
4895         Test the GtkTreeModelMapping
4896
4897 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
4898
4899         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
4900         have a demo, we might as well pass in real values.  Thanks to
4901         clahey for pointing this out.
4902
4903 2001-02-14  Havoc Pennington  <hp@pobox.com>
4904
4905         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
4906         "static" to a private function
4907         (gtk_image_menu_item_class_init): remove destroy handler,
4908         add "image" object property
4909
4910 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
4911
4912         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
4913         Add a shortcut if the window and the current clip_region doesn't
4914         overlap. This is needed when there are a lot of windows in a
4915         window. The layout test in testgtk is a good test.
4916
4917         * gdk/linux-fb/gdkwindow-fb.c:
4918         Whitespace fix.
4919
4920 2001-02-13  Sven Neumann  <sven@convergence.de>
4921
4922         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
4923
4924 2001-02-13  Alexander Larsson  <alexl@redhat.com>
4925
4926         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
4927         Don't reference last_cursor if it is null. Fixes crash when rotating
4928         the screen before having moved the mouse.
4929
4930         * gdk/linux-fb/gdkcc-fb.c: Zapp!
4931
4932         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
4933
4934         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
4935         when using 90 or 270 degrees rotation.
4936
4937 2001-02-12  Havoc Pennington  <hp@pobox.com>
4938
4939         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
4940         it always set the foreground, even if we were only using
4941         a stipple.
4942         (gdk_draw_layout_line_with_colors): new function, allow
4943         override colors
4944         (gdk_draw_layout_with_colors): new function, allow override
4945         colors
4946         (gdk_pango_layout_line_get_clip_region): function to get the clip
4947         region for a logical text range
4948         (gdk_pango_layout_get_clip_region): get the clip region for a
4949         logical text range
4950
4951         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
4952         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
4953         the right number of arguments.
4954
4955         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
4956         enhance the function to check that node data corresponds to a 
4957         view still belonging to the tree.
4958
4959         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
4960         GtkTreePath
4961         (gtk_tree_view_inserted): ditto
4962         (gtk_tree_view_child_toggled): ditto
4963
4964         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
4965         simplify this code.
4966
4967         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
4968         a PangoAttrList
4969
4970         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
4971
4972         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
4973
4974         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
4975         size in the size request 
4976         (gtk_menu_bar_size_allocate): consider toggle size here
4977
4978         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
4979         that displays a widget in the toggle slot
4980
4981         * gtk/testgtk.c: test GtkImageMenuItem
4982
4983         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
4984         
4985         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
4986         request and allocation
4987
4988         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
4989
4990         * gtk/gtkcheckmenuitem.c
4991         (gtk_check_menu_item_toggle_size_request): ditto
4992         
4993 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
4994
4995         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
4996         reference.
4997
4998         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
4999         and refuse to initialize GTK+ if they fail.
5000
5001 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
5002
5003         * configure.in: Add check for gtk-doc version.
5004
5005 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
5006
5007         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
5008         where the xpad/ypad was only being used on one side!
5009
5010 2001-02-11  Tor Lillqvist  <tml@iki.fi>
5011
5012         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
5013         function, copied from X11 version.
5014
5015         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
5016         DestroyCursor failures. The reason for the problem (despite the
5017         inconsistent messages from GetLastError()) was that
5018         DestroyCursor() cannot be called while a cursor is set in a
5019         window. Set the new cursor first and then destroy the old one.
5020         Thanks to jpe@archaeopteryx.com.
5021
5022         * gdk/win32/gdkcc-win32.c: Remove.
5023
5024         * gdk/win32/Makefile.am: Remove from here, too.
5025         
5026         * gdk/gdk.def
5027         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
5028
5029         * gtk/gtk.def
5030         * gtk/makefile.mingw.in: Updates.
5031
5032 2001-02-08  Havoc Pennington  <hp@redhat.com>
5033
5034         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
5035         add a widget to a bin that already has a child.
5036
5037         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
5038
5039         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
5040         
5041         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
5042
5043         * gdk/gdk.h: remove gdkcc.h
5044
5045         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
5046
5047         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
5048         GdkPixbuf, since the previous implementation was GdkColorContext
5049         dependent.
5050
5051         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
5052         
5053 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
5054
5055         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
5056         a sane value!
5057
5058 2001-02-08  Havoc Pennington  <hp@redhat.com>
5059
5060         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
5061         lighten them.
5062
5063 2001-02-08  Havoc Pennington  <hp@redhat.com>
5064
5065         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
5066         validation idle
5067
5068         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
5069         cell renderer
5070
5071         * demos/pixbuf-demo.c (timeout): remove deprecated
5072         gtk_widget_draw
5073
5074         * demos/testpixbuf-save.c (main): remove deprecated
5075         gtk_drawing_area_size
5076
5077         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
5078         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
5079         at the start of the allocation.
5080         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
5081         unsetup or NULL model.
5082
5083         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
5084         even/odd/sorted cells in the tree view.
5085
5086         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
5087         bugfixes
5088
5089         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
5090         backgrounds with draw_flat_box using different detail for even/odd
5091         rows.
5092
5093         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
5094         row, so we can draw the alternating colors thing
5095
5096         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
5097         property from a synonym property, notify for the synonym.
5098         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
5099         (gtk_text_tag_get_property): Always return the font, even if
5100         all its fields aren't set
5101
5102         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
5103         store the attr list; it leaves us with no way to change attributes
5104         in _render according to the render flags, and no way to implement
5105         get_property. Instead store all the specific text attributes. 
5106         Separate whether an attribute is enabled from its value. Sync all
5107         properties with GtkTextTag, make them all consistent, etc.
5108
5109         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
5110         renderers can highlight the sort row/column     
5111
5112         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
5113         accessor functions to get values; this has the side effect of
5114         showing up which accessor functions were missing. Added those.
5115
5116         * gtk/gtktreeviewcolumn.h: Replace set_justification with
5117         set_alignment, to be consistent with GtkLabel, GtkMisc
5118
5119         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
5120         arrow.
5121
5122         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
5123
5124         * gtk/gtktreesortable.h: updates in here
5125
5126 2001-02-07  Sven Neumann  <sven@convergence.de>
5127
5128         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
5129         pango dimensions after painting the background. We used to draw
5130         gigantic flat boxes here.
5131
5132 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
5133
5134         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
5135         error introduced with earlier commit) (pointed out by
5136         Ollie Lho)
5137
5138 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
5139
5140         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
5141         which are no longer necessary.
5142
5143 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
5144
5145         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
5146
5147 2001-02-04  Tor Lillqvist  <tml@iki.fi>
5148
5149         * gdk/gdk.def
5150         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
5151         Provide dummy implementations.
5152
5153 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
5154
5155         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
5156
5157         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
5158         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
5159         deprecated this function.
5160
5161         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
5162         argument.
5163
5164 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
5165
5166         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
5167
5168 2001-02-03  Havoc Pennington  <hp@pobox.com>
5169
5170         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
5171         Mikael Hermansson with patch from Mikael (if there was a toggle
5172         start one after the first character in the range, this function
5173         was broken). Bug #50380
5174
5175 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
5176
5177         * configure.in: Remove confusing comment about X11.
5178
5179 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
5180
5181         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
5182         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
5183         
5184 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
5185
5186         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
5187         it breaks things on BSD. If you want to compile GTK+ with
5188         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
5189         when configuring, since GTK+ simply can't be "pure ANSI" 
5190         in the header files it uses. (#8170, Greg Hudson)
5191
5192 2001-02-02  Havoc Pennington  <hp@redhat.com>
5193
5194         * gtk/gtkwindow.c: docs
5195
5196         * gtk/gtkwidget.c: docs
5197         (gtk_widget_set_colormap): add a reference to the colormap
5198         (gtk_widget_get_default_colormap): add a reference to the colormap
5199
5200         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
5201
5202         * gtk/gtktextiter.c: docs
5203
5204         * gtk/gtkmain.c (gtk_propagate_event): docs
5205
5206         * gtk/gtkpaned.c (gtk_paned_get_position): docs
5207         (gtk_paned_set_position): docs
5208
5209         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
5210         sort interface, no implementation yet.
5211
5212         * demos/testpixbuf.c (new_testrgb_window): replace
5213         gtk_drawing_area_size() with gtk_widget_set_usize()
5214
5215         * demos/testpixbuf-drawable.c (main): ditto
5216         
5217         * gtk/testgtk.c: remove use of GtkStatusbarMsg
5218
5219         * gtk/gtktextbuffer.c: docs
5220
5221         * gtk/gtkstock.c: docs
5222
5223         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
5224
5225         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
5226
5227         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
5228         
5229         * gtk/gtkimage.c: add some docs in here
5230         (gtk_image_size_request): change name of
5231         gtk_widget_render_stock_icon
5232         (gtk_image_get_icon_set): don't dup returned string
5233         (gtk_image_get_icon_set): don't dup returned string
5234
5235         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
5236         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
5237         and gtkiconfactory.h functions
5238
5239         * gtk/gtkiconfactory.c: add some docs in here
5240
5241         * gtk/gtkmain.c (gtk_get_default_language): document
5242         (gtk_get_current_event): document
5243         (gtk_get_current_event_state): document
5244         (gtk_get_event_widget): document
5245
5246         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
5247
5248         * gtk/gtkcontainer.c: Add some documentation
5249         (gtk_container_add): give a more explanatory warning on adding an
5250         already-parented widget, this is kind of a FAQ and also a common
5251         typo that's easier to debug with a nice warning 
5252
5253         * gtk/gtkcellrenderertoggle.c
5254         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
5255         adding this, it's useless
5256         (gtk_cell_renderer_toggle_set_active): remove
5257         (gtk_cell_renderer_toggle_get_radio): add
5258
5259         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
5260         the NULL cell renderer, that doesn't make any sense to me. 
5261
5262         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
5263         demo code should never use deprecated features.
5264
5265         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
5266         code should never use deprecated features.
5267
5268         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
5269         gtk_widget_queue_clear_area deprecated
5270
5271         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
5272         deprecated
5273
5274         * gtk/gtklabel.h: mark gtk_label_get() deprecated
5275
5276         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
5277         a GdkImage deprecated, replaced by new consistently-named
5278         functions       
5279
5280         * gtk/gtkmain.h: Mark gtk_exit() deprecated
5281
5282         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
5283
5284         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
5285         deprecated
5286
5287         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
5288         so it won't appear in docs and confuse people.
5289
5290         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
5291
5292         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
5293         macros deprecated. (can't mark the type itself deprecated, since
5294         GtkProgressBar is not deprecated and we need the type decl to use
5295         GtkProgressBar)
5296
5297         * gtk/gtkpixmap.h: Mark deprecated
5298
5299         * gtk/gtkoldeditable.h: Mark deprecated
5300
5301         * gtk/gtklist.h: Mark deprecated
5302
5303         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
5304         for anything anymore.
5305
5306         * gtk/gtkctree.h: Mark deprecated
5307
5308         * gtk/gtkclist.h: Mark deprecated
5309
5310         * gtk/gtkpreview.h: Mark deprecated
5311
5312         * gtk/gtkpacker.h: Mark deprecated
5313
5314         * gtk/gtktipsquery.h: Mark deprecated
5315
5316         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
5317
5318         * gtk/gtkvruler.h: Add comment that it will move out of GTK
5319
5320         * gtk/gtkhruler.h: Add comment that it will move out of GTK
5321
5322         * gtk/gtkruler.h: Add comment that it will move out of GTK
5323
5324         * gtk/gtkgamma.h: Add comment that it will move out of GTK
5325
5326         * gtk/gtkcurve.h: Add comment that it will move out of GTK
5327
5328 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
5329
5330         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
5331         gdk_colormap_sync private since it was never exported
5332         in a header file.
5333
5334         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
5335         colormap->colors[] for StaticGray, StaticColor colormaps.
5336
5337         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
5338         was being used as if it was image->bits_per_pixel.
5339
5340         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
5341         for the image in the GdkImage structure since it isn't
5342         reconstructable, and we need it to handle packed types
5343
5344         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
5345         the assumption that on Win32 image->bits_per_pixel == image->depth,
5346         always.
5347
5348         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
5349
5350         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
5351         warning message if no converter can be found. 
5352
5353 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
5354
5355         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
5356         chars to isupper() / tolower(). (#567)
5357
5358         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
5359         to clear up 64-bit warnings. (#567)
5360
5361 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
5362
5363         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
5364         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
5365
5366         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
5367         since some people set $(libdir) separately. (#1290, David Kaelbling)
5368
5369 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
5370
5371         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
5372         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
5373         MAXPATHLEN, but the code here depends on a fixed value.)
5374         (#4524)
5375
5376 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
5377
5378         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
5379         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
5380
5381 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
5382
5383         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
5384         viewable there is no way that moving the node will cause the 
5385         focus row to become not viewable, so omit check on the visibility
5386         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
5387
5388 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
5389
5390         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
5391         selection before inserting new text.
5392
5393 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
5394
5395         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
5396         Make the sensitivity of the reparented child track that of
5397         the original parent menu item. (#34218, David Hodson)
5398
5399         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
5400         the case where the current item is destroyed properly.
5401
5402         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
5403         some edge cases with child-less menuitems.
5404         
5405 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
5406
5407         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
5408         key pop down window. (#12074, Jon K Hellan)
5409
5410 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
5411
5412         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
5413         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
5414         The solution here isn't perfect - you get an extraneous
5415         emission of "toggle", which could conceivably confuse an app,
5416         but better than the current situation. LXR search seems to
5417         indicate that no apps in GNOME CVS connect to "toggle".
5418
5419 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
5420
5421         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
5422         gtk_public_h_sources to directly here to avoid warning when
5423         building srcdir != builddir. (#9656)
5424
5425 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
5426
5427         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
5428         handlers in gtkrange.c return the proper values (TRUE == handled)
5429         (#10316).
5430
5431         This is just the tip of the iceberg, but gtkrange.c is the
5432         most common place where the propagation is problematical,
5433         and also a place where it is almost certainly safe to change
5434         this in the stable branch.
5435
5436         (You don't want right click popups on a range control or anything...)
5437
5438 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
5439
5440         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
5441         area on focus out, even if a background pixmap isn't set.
5442         (#13941)
5443         
5444 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
5445
5446         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
5447         to deal with setting the shape properly when scrolling arrows are
5448         turned on, but not visible because there is sufficient space.
5449         (#13432)
5450
5451 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
5452
5453         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
5454         items with submenus, destroy the item along with the submenu.
5455         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
5456         properly.
5457
5458         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
5459         later.
5460
5461 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
5462
5463         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
5464         the focus widget sometimes wasn't drawn with the default if there
5465         was no default widget.
5466
5467         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
5468         unreference pixmaps. 
5469
5470         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
5471         for some extra safety.
5472
5473 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
5474
5475         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
5476         the text of a cell to the old pointer value better, by
5477         copying the new text before freeing the old text. Some code
5478         cleanup. (#8079, Karl Nelson)
5479
5480 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
5481
5482         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
5483         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
5484
5485 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
5486
5487         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
5488         item from a menu, check to see if it matches 
5489         menu->old_active_menu_item, and if so, unref and clear
5490         old_active_menu_item (Patch from Pavel Cisler)
5491
5492         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
5493         menu_shell->active_menu_item, if it is the child being
5494         removed. (Patch based on that of Gene Ragan, #50337)
5495
5496 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
5497
5498         * gdk/linux-fb/gdkselection-fb.c: 
5499         * gdk/linux-fb/gdkcolor-fb.c: 
5500         * gdk/linux-fb/gdkdrawable-fb2.c: 
5501         * gdk/linux-fb/gdkfont-fb.c: 
5502         * gdk/linux-fb/gdkim-fb.c: 
5503         * gdk/linux-fb/gdkinput.c: 
5504         * gdk/linux-fb/gdkkeyboard-fb.c: 
5505         * gdk/linux-fb/gdkmain-fb.c: 
5506         * gdk/linux-fb/gdkrender-fb.c: 
5507         A bunch of whitespace cleanup.
5508         
5509 2001-01-30  Havoc Pennington  <hp@pobox.com>
5510
5511         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
5512         #ifdef GTK_ENABLE_BROKEN.
5513
5514         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
5515         GTK_ENABLE_BROKEN just before including the broken headers.
5516         
5517         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
5518         deprecated types registered.
5519
5520         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
5521         we have to test the broken stuff.
5522
5523         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
5524         
5525 2001-01-30  Havoc Pennington  <hp@redhat.com>
5526
5527         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
5528         here where prev pointer was set to the wrong thing
5529
5530         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
5531         (gtk_tree_path_is_descendant): new function
5532
5533         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
5534         cached length
5535         (gtk_list_store_get_iter): don't modify iter if we can't get the
5536         path.
5537
5538         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
5539         
5540         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
5541         GtkTreeDragDest
5542
5543         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
5544         was causing segfault
5545
5546         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
5547         pointer to NULL
5548
5549         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
5550
5551         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
5552         on returning FALSE
5553         (gtk_list_store_iter_children): ditto
5554         (gtk_list_store_iter_nth_child): ditto
5555         (gtk_list_store_iter_nth_child): ditto
5556         (gtk_list_store_iter_parent): ditto
5557
5558         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
5559         on iter->user_data != NULL instead of silently accepting it.
5560         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
5561         we are returning TRUE.
5562         (gtk_tree_store_iter_children): ditto
5563         (gtk_tree_store_iter_nth_child): ditto
5564         (gtk_tree_store_iter_parent): ditto
5565         (gtk_tree_store_insert): remove handling of parent->user_data ==
5566         NULL, replace with parent == NULL       
5567
5568         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
5569         and a comment explaining things
5570
5571         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
5572         interface support to GtkTreeStore.
5573
5574         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
5575         FALSE if no prev, fix
5576
5577         * gtk/gtktreeview.c (set_source_row): use a row reference
5578         (set_dest_row): use a row reference
5579
5580 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
5581
5582         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
5583         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
5584         (gtk_tree_selection_select_iter): The same as above.
5585
5586 2001-01-26  Havoc Pennington  <hp@redhat.com>
5587
5588         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
5589         which holds a handle to a specific row (particular set of values
5590         in the model, i.e. pointer-identity row).
5591
5592         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
5593         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
5594         Still need to use it for the src/dest row saved on the drag context.
5595
5596 2001-01-26  Havoc Pennington  <hp@redhat.com>
5597
5598         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
5599
5600         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
5601         not offset by TREE_VIEW_HEADER_HEIGHT
5602         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
5603         TREE_VIEW_HEADER_HEIGHT
5604
5605         * configure.in (included_loaders): for me, --with-included-loaders
5606         generates the error "the specified loader yes does not exist",
5607         i.e. the arg defaults to "yes", so change test for value ""
5608         to test for value "yes", and include all loaders in that case.
5609
5610         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
5611
5612         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
5613         handle TREE_VIEW_VERTICAL_SEPARATOR
5614         (gtk_tree_view_bin_expose): fix to consider the row offset as
5615         pointing halfway into vertical separator.       
5616         (gtk_tree_view_draw_node_focus_rect): ditto
5617
5618         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
5619         --gtk-debug=updates, which causes gdk_window_set_debug_updates
5620         (TRUE) to be called.
5621
5622         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
5623         debug mode where the invalid region is colored in on invalidate,
5624         so you can see the flicker and know whether your redraw code is 
5625         doing a good job.
5626
5627         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
5628         tree window coordinates (clip rect is in tree window coords)
5629
5630         * gtk/Makefile.am: add gtktreednd.[hc]
5631
5632         * gtk/gtkliststore.c: implement gtktreednd interfaces.
5633
5634         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
5635         drag-and-drop data operations on a model (so we can set up tree
5636         drag-and-drop automatically)
5637
5638         * gtk/testgtk.c: Add a window to change sensitivity in the
5639         GtkLabel test; add a way to change the entry frame in GtkEntry
5640         test
5641
5642         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
5643         (gtk_entry_get_has_frame): new functions to remove the frame
5644         around an entry
5645         (gtk_entry_size_request): shrink requisition if no frame
5646         (gtk_entry_draw_focus): don't draw frame if no frame
5647
5648         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
5649         checks inside a cell renderer
5650         (gtk_default_draw_option): ditto for options
5651
5652         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
5653         children from the alignment, not the button
5654         (gtk_tree_view_column_init): ref/sink the column, to emulate
5655         GObject refcounting.
5656
5657         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
5658         
5659         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5660         Use theme functions to draw the toggles 
5661
5662         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
5663
5664         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
5665         GdkPangoAttrEmbossed to use in rendering insensitive text
5666
5667         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
5668
5669         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
5670         using new GDK features
5671         
5672 2001-01-24  Alexander Larsson  <alexl@redhat.com>
5673
5674         * gtk/gtkimage.c:
5675         Splitted gtk_image_clear into gtk_image_clear() and
5676         gtk_image_reset(). Call gtk_image_clear() in ::destroy
5677         to avoid leaks.
5678
5679         * gtk/gtklabel.c (set_markup):
5680         Don't leak text.
5681
5682         * gtk/gtktextlayout.c:
5683         Always free display->shaped_objects.
5684
5685         * gtk/testgtk.c (create_clist):
5686         Don't leak custom style.
5687
5688 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5689
5690         * gtk/gtkcolorsel.c (grab_color_at_mouse):
5691         Don't leak image. Simplify using gdk_colormap_query_color().
5692         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
5693
5694         * linux-fb/gdkcolor-fb.c:
5695         Implemented gdk_colormap_query_color.
5696
5697 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5698
5699         * linux-fb/gdkcursor-fb.c:
5700         Don't leak built-in cursors.
5701
5702         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
5703         Don't leak tmp_points.
5704
5705         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
5706         Don't modify desc. Don't leak font if the PangoFont
5707         isn't found.
5708         
5709         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
5710         Free dash_list.
5711
5712         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
5713         Don't leak string.
5714         
5715 2001-01-20  Havoc Pennington  <hp@pobox.com>
5716
5717         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
5718         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
5719         me, matches Pango
5720
5721 2001-01-22  Havoc Pennington  <hp@redhat.com>
5722
5723         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
5724
5725         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
5726
5727         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
5728         Remove, move back to gdk-pixbuf
5729
5730         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
5731         to all the word functions
5732
5733         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
5734         before doing anything on NULL layout or if we don't have the focus
5735
5736         * gtk/testtext.c (fill_example_buffer): "justification"
5737
5738         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
5739         to be called "justification" not "justify"
5740
5741         * demos/gtk-demo/textview.c (create_tags): "justification"
5742         
5743         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
5744
5745 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5746
5747         * gdk/gdkwindow.c (gdk_window_invalidate_region):
5748         Don't leak visible_region. Use visible_region instead of region.
5749         
5750         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
5751         Don't do extra gdk_drawable_ref(). This is not X.
5752         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
5753         gdk_fb_focused_window is ref:ed.
5754         (gdk_fb_window_send_crossing_events): Watch out for destroyed
5755         windows.
5756
5757 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5758
5759         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
5760         Don't leak the PangoFontDescriptor.
5761
5762 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
5763
5764         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
5765         when not realized.
5766         (gtk_tree_view_scroll_to_cell): Make work when not realized.
5767         (gtk_tree_view_realize): add scroll_to support
5768         (gtk_tree_view_finalize): add a finalize method.  Populate.
5769         (gtk_tree_view_insert_column): ref and sink the column.
5770         (gtk_tree_view_append_column): ref and sink the column.
5771         (gtk_tree_view_queue_draw_node): New function to handle redrawing
5772         individual nodes.  Should make the code much more efficient, if
5773         actually used.
5774
5775 2001-01-19  Havoc Pennington  <hp@redhat.com>
5776
5777         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
5778         byte_offset variable was being used to mean both "offset into
5779         layout" and "offset into buffer line" which was no longer true
5780         with addition of preedit string; fix
5781
5782 2001-01-19  Havoc Pennington  <hp@redhat.com>
5783
5784         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
5785
5786         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
5787         function
5788
5789         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
5790         implement
5791
5792         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
5793         scroll_to_cell, matches TextView scroll functions better
5794         (gtk_tree_view_tree_to_widget_coords): new function
5795         (gtk_tree_view_widget_to_tree_coords): new function
5796         (gtk_tree_view_get_visible_rect): new function
5797         (gtk_tree_view_get_path_at_pos): accept negative coordinates
5798         (gtk_tree_view_draw_node_focus_rect): new function moved from
5799         draw_focus, also, use width of bin_window as width of the focus
5800         rect
5801         (gtk_tree_view_expand_row): fix bug where it didn't recognize
5802         already-expanded rows
5803         (gtk_tree_view_get_cell_rect): new function
5804         (gtk_tree_view_get_path_at_pos): return the click position
5805         relative to the passed-in cell
5806         (gtk_tree_view_set_expander_column): new function
5807
5808         * configure.in: remove gtk-config-2.0 chmod
5809
5810         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
5811         and properly handle drags with targets we don't understand
5812         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
5813         scrolling anyway
5814         (gtk_text_view_drag_drop): stop scrolling here though, and set the
5815         mark invisible
5816
5817         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
5818         function
5819         (gtk_drag_dest_get_target_list): new function
5820         (gtk_drag_dest_set_target_list): new function
5821         
5822         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
5823
5824         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
5825         related to drag-and-drop
5826
5827 2001-01-19  Alexander Larsson  <alexl@redhat.com>
5828
5829         * gdk/linux-fb/gdkprivate-fb.h:
5830         Define EMULATE_GDKFONT.
5831         Add extra pango_font stuff to GfkFontPrivate.
5832         
5833         * gdk/linux-fb/gdkdrawable-fb2.c:
5834         * gdk/linux-fb/gdkfont-fb.c:
5835         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
5836         emulation using PangoFont.
5837
5838 2001-01-17  Havoc Pennington  <hp@pobox.com>
5839
5840         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
5841         all the non-deprecated set_foo functions. Added missing object
5842         properties, and added g_object_notify() to setters. 
5843         Wrote docs.
5844         
5845 2001-01-18  Tor Lillqvist  <tml@iki.fi>
5846
5847         * gtk/gtkmain.c
5848         * gtk/gtkrc.c: (Win32) Use the new
5849         g_win32_get_package_installation_(sub)directory() functions.
5850
5851         * config.h.win32.in: New file.
5852         
5853         * config.h.win32: Removed.
5854
5855         * configure.in: Output config.h.win32.
5856
5857         * Makefile.am: Add it to EXTRA_DIST.
5858
5859         * gtk/gtk.def: Update.
5860
5861 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
5862
5863         * gtk/gtklabel.c (gtk_label_size_request): Set the
5864         attributes onto the PangoLayout even if they are newly
5865         created from label->pattern.
5866
5867 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
5868
5869         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
5870
5871         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
5872         structures in functions. Fixes bug where gtk_dataset_*
5873         was accidentally still being used in one place, causing
5874         every dest side event to be treated independently.
5875
5876         * gtk/gtkdnd.c: Remove last vestages of handling
5877         ::draw (fixes warning)
5878         
5879         * gtk/gtkentry.[ch]: Add drag and drop support.
5880
5881         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
5882         new function gtk_check_drag_threshhold() for checking
5883         to check if (dx,dy) has exceeded the threshhold for starting
5884         a drag and use it everywhere.
5885
5886 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
5887
5888         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
5889         add -I{includedir}/gtk-2.0.
5890
5891         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
5892         gdk/gdk-pixbuf.h: Doc fixups.
5893         
5894         * gtk/gtkobject.h: Remove trailing , from enum
5895
5896 2001-01-17 Alexander Larsson <alexl@redhat.com> 
5897
5898         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
5899         Doh! Mixed up x and y.
5900
5901         * gdk/linux-fb/gdkglobals-fb.c:
5902         Removed gdk_fb_pointer_grab_window_events,
5903         added _gdk_fb_pointer_grab_owner_events and
5904         _gdk_fb_keyboard_grab_owner_events.
5905
5906         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
5907         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
5908         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
5909         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
5910         Send crossing events after ungrab finished.
5911         (gdk_keyboard_grab): Set ..._owner_events
5912         (type_masks): Move out of function.
5913         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
5914         gdk_fb_keyboard_event_window): New functions, return the
5915         window an event should be targeted at. Handles grabs and
5916         event propagation. Can return NULL.
5917         (gdk_event_make): Remove event_mask checking. Now always
5918         returns an event.
5919                 
5920         * gdk/linux-fb/gdkkeyboard-fb.c:
5921         * gdk/linux-fb/gdkproperty-fb.c:
5922         * gdk/linux-fb/gdkselection-fb.c:
5923         Use new event_window/gdk_event_make() behaviour.
5924         
5925         * gdk/linux-fb/gdkmouse-fb.c:
5926         Use new event_window/gdk_event_make() behaviour.
5927         Only send motion events if in the same window.
5928         If grabbed, use cursor from window if sibling of grabbed
5929         window, and cursor from grabbed window otherwise.
5930
5931         * gdk/linux-fb/gdkprivate-fb.h:
5932         Update gdk_fb_window_send_crossing_events, gdk_event_make
5933         and grab varaible declarations. Add gdk_fb_*_event_window().
5934
5935         * gdk/linux-fb/gdkwindow-fb.c:
5936         Use new event_window/gdk_event_make() behaviour.
5937         Keep correct track of focus window.
5938         (gdk_window_set_events): Set all specific button motion masks
5939         if GDK_BUTTON_MOTION_MASK set.
5940
5941         * gtk/gtkdnd.c (gtk_drag_update):
5942         Free info->last_event if gdk_drag_motion returned FALSE.
5943
5944 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5945
5946         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
5947         Eliminate redraws when input-only windows are shown or
5948         hidden. Thanks to jpe@archaeopteryx.com.
5949
5950 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
5951
5952         * docs/faq/gtk-faq.sgml: FAQ update:
5953           - Update to bugzilla
5954           - Add GTK+ and security/SUID/SGID
5955           - Add DnD question
5956
5957 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
5958
5959         * gdk/linux-fb/gdkdnd-fb.c:
5960         Some cleanups.
5961         
5962 2001-01-15  Havoc Pennington  <hp@pobox.com>
5963
5964         * tests/testtreeview.c: add test stuff for CellRendererToggle
5965
5966         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
5967         accessor
5968
5969         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
5970         only toggle on button press (would do release like GtkButton, but
5971         we'd need implicit grab code for treeview cells)
5972
5973 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5974
5975         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
5976
5977         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
5978         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
5979
5980         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
5981         to g_{locale,filename}_{to,from}_utf8 to match current API.
5982
5983         * gtk/makefile.msc.in (gtk_OBJECTS)
5984         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
5985
5986         * gtk/gtk.def: Update.
5987
5988 2001-01-15  Tor Lillqvist  <tml@iki.fi>
5989
5990         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
5991         implementaion that more closely mimics the events that an X server
5992         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
5993         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
5994         with nested preview widgets, for instance, more responsive when
5995         you move the mouse quickly into them.
5996         (find_window_for_pointer_event): Make it actually compile.
5997         (gdk_event_translate): Set send_event to the value of
5998         InSendMessage (). This doesn't really mean the same as X11's
5999         send_event flag, but is close enough, says jpe@archaeopteryx.com
6000
6001 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6002
6003         * gdk/linux-fb/gdkdnd-fb.c:
6004         Implemented drag and drop.
6005         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
6006         when it tries to free and then copy the same event (info->last_event).
6007         I am not sure about why this happens, but will continue looking.
6008
6009 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6010
6011         * gdk/linux-fb/gdkwindow-fb.c:
6012         Use gdk_window_invalidate_rect instead of
6013         gdk_window_invalidate_rect_clear to minimise flashing.
6014         When hiding windows you need to clear the root window though.
6015
6016 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6017
6018         * gdk/linux-fb/gdkdrawable-fb2.c:
6019         For optization, add an full_shapes argument to gdk_fb_clip_region.
6020         If this is false, only the cliprects of the shapes are used.
6021
6022         * gdk/linux-fb/gdkprivate-fb.h:
6023         Export gdk_fb_window_peek_shape.
6024         Add full_shapes to gdk_fb_clip_region.
6025
6026         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6027         When moving a window, don't clear everything under the it, just the
6028         root window. Makes stuff faster and flash less.
6029         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
6030         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
6031         offset of the shape.
6032         
6033
6034 2001-01-12  Havoc Pennington  <hp@redhat.com>
6035
6036         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
6037         current invalid region, fixes redraw bug while scrolling the 
6038         text widget
6039
6040         * gtk/gtktextview.c, gtk/gtktextview.h:
6041         Rearrange the scrolling/validation/etc. code in a major way, 
6042         so it seems to make sense to me. Probably isn't genuinely that
6043         much better, but...
6044
6045         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
6046         notifies
6047
6048         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
6049
6050 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
6051
6052         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
6053         Hide mouse pointer while rotation. Show it afterwards.
6054
6055 2001-01-12  Alexander Larsson  <alexl@redhat.com>
6056
6057         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
6058         windows in consideration when generating clip region.
6059
6060         * gdk/linux-fb/gdkfb.h:
6061         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
6062
6063         * gdk/linux-fb/gdkprivate-fb.h:
6064         Add shape to GdkWindowFBDatat.
6065         exported gdk_fb_window_get_abs_shape().
6066         removed gdk_fb_draw_lines declaration.
6067
6068         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
6069         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
6070         send focus changes when there is a grabbed window.
6071         (gdk_window_get_pointer): Handle shaped windows.
6072         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
6073         (gdk_fb_window_peek_shape): Returns the shape for a window,
6074         handles GDK_FB_USE_CHILD_SHAPE.
6075         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
6076         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
6077         (gdk_window_shape_combine_mask): Implement.
6078
6079         * gtk/gtkwindow-decorate.c:
6080         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
6081         setting the shape of a window makes the window transparent.
6082
6083 2001-01-11  Havoc Pennington  <hp@redhat.com>
6084
6085         * gtk/gtktreemodelsimple.h: Oops, broke some macros
6086
6087 2001-01-10  Havoc Pennington  <hp@redhat.com>
6088
6089         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
6090         add this function, bug 40251
6091
6092         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
6093         of type macro   
6094
6095 2001-01-11  Alexander Larsson  <alexl@redhat.com>
6096
6097         * acconfig.h:
6098         Added ENABLE_SHADOW_FB
6099
6100         * configure.in:
6101         Added --disable-shadowfb
6102
6103         * gdk/linux-fb/gdkcursor-fb.c:
6104         Update shadowfb when updating cursor
6105
6106         * gdk/linux-fb/gdkdrawable-fb2.c:
6107         Added wrappers for shadowfb that calls  the normal drawable
6108         methods, but calls gdk_shadow_fb_update(bounding box) when
6109         GdkWindows are drawed to.
6110         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
6111         which also returns the bounding box.
6112
6113         * gdk/linux-fb/gdkfb.h:
6114         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
6115
6116         * gdk/linux-fb/gdkgeometry-fb.c:
6117         Update shadowfb when scrolling window.
6118
6119         * gdk/linux-fb/gdkglobals-fb.c:
6120         Add _gdk_fb_screen_angle.
6121         
6122         * gdk/linux-fb/gdkkeyboard-fb.c:
6123         Test code for screen rotation. Shift-F2 in the xlate driver
6124         rotates the screen.
6125
6126         * gdk/linux-fb/gdkmain-fb.c:
6127         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
6128
6129         * gdk/linux-fb/gdkmouse-fb.c:
6130         Use fb_width/height instead of modeinfo.xres/yres.
6131
6132         * gdk/linux-fb/gdkprivate-fb.h:
6133         Added fb_men, fb_width, fb_height & fb_stride. When using
6134         shadow fb these can differ from the framebuffer stuff.
6135         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
6136         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
6137         _gdk_fb_screen_angle. Removed CM, RP.
6138
6139         * gdk/linux-fb/gdkrender-fb.c:
6140         Added code for shadowfb handling and screen rotation using
6141         shadowfb.
6142
6143         * gdk/linux-fb/gdkwindow-fb.c:
6144         Use fb_mem, fb_stride, fb_width, fb_height.
6145         Added recompute_rowstride to reset the rowstride of all windows.
6146         Added gdk_fb_recompute_all() which recomputes rootwindow size,
6147         window abs positions and window rowstrides. Usefull when the
6148         rotation has changed.
6149
6150 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
6151
6152         * docs/faq/gtk-faq.sgml: update to make web site updating easier
6153
6154 2001-01-10  Havoc Pennington  <hp@redhat.com>
6155
6156         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
6157         where sibling == iter
6158         (gtk_tree_store_insert_after): handle sibling == iter
6159         (gtk_tree_store_prepend): remove stamp checks
6160         (gtk_tree_store_insert_before): ditto
6161         (gtk_tree_store_append): ditto
6162         (gtk_tree_store_get_path): ditto
6163         (gtk_tree_store_get_value): ditto
6164         (gtk_tree_store_iter_has_child): ditto
6165         (gtk_tree_store_iter_n_children): ditto
6166         (gtk_tree_store_iter_nth_child): ditto
6167         (gtk_tree_store_insert_after): ditto
6168         (gtk_tree_store_is_ancestor): ditto
6169         (gtk_tree_store_iter_depth): ditto
6170         (gtk_tree_store_insert_before): assert that sibling's parent is
6171         the same as the passed-in parent
6172         (gtk_tree_store_insert_after): assert that sibling's parent is
6173         the same as the passed-in parent
6174
6175         
6176         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
6177         function to get the first iterator in a model
6178         
6179         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
6180         conventionally the "root" in this sense is just NULL afaict.
6181
6182         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
6183         where sibling == iter
6184         (gtk_list_store_insert_after): handle case where sibling == iter
6185
6186         * tests/testtreeview.c (run_automated_tests): fairly lame basic
6187         automated tests for ListStore, TreeStore
6188
6189         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
6190         (gtk_list_store_insert): update tail pointer, and fix it to work
6191         (gtk_list_store_insert_before): update tail pointer, and fix it to work
6192         (gtk_list_store_append): use tail to be faster
6193         (gtk_list_store_prepend): fix it, update tail pointer
6194         (gtk_list_store_insert_after): fix it, update tail pointer
6195
6196         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
6197         the list
6198
6199 2001-01-09  Havoc Pennington  <hp@redhat.com>
6200
6201         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
6202         is NULL due to a pending resize
6203
6204         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
6205         column width to values less than 1
6206
6207         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
6208         width to be between min/max width, and still set the width 
6209         even if autosize is turned on, so the tree view can use this 
6210         function in order to autosize.
6211         (gtk_tree_view_column_init): set initial width to 1 not 0
6212
6213         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
6214         setter function to modify column width, so we get notification
6215         (gtk_tree_view_insert_iter_height): ditto
6216         (gtk_tree_view_calc_size): ditto
6217         (gtk_tree_view_check_dirty): ditto
6218
6219         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
6220         properties to change all the interesting attributes of the tree
6221         view column.
6222         (gtk_tree_view_column_set_header_clickable): rename set_clickable
6223         (gtk_tree_view_column_get_clickable): add
6224         (gtk_tree_view_column_set_cell_renderer): don't unset the current
6225         attributes; assume a cell renderer with equivalent object
6226         properties has been swapped in. Do g_object_notify().
6227         (gtk_tree_view_column_set_visible): g_object_notify
6228         (gtk_tree_view_column_get_sizing): rename from get_col_type
6229         (gtk_tree_view_column_set_sizing): g_object_notify
6230         (gtk_tree_view_column_set_width): add g_object_notify
6231         (gtk_tree_view_column_set_min_width): ditto
6232         (gtk_tree_view_column_set_max_width): ditto
6233         (gtk_tree_view_column_set_title): ditto
6234         (gtk_tree_view_column_set_clickable): ditto
6235         (gtk_tree_view_column_set_widget): ditto
6236         (gtk_tree_view_column_set_justification): ditto
6237
6238 2001-01-09  Havoc Pennington  <hp@redhat.com>
6239
6240         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
6241         there are no rows in the model
6242
6243         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
6244         NULL, then return the start of the list
6245
6246         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
6247         if we can't get any rows from an empty model 
6248
6249         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
6250         extraneous * after function pointer typedef usage
6251
6252         * Makefile.am: don't specify full path to cp and rm
6253
6254         * gtk/gtkcellrenderertextpixbuf.c
6255         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
6256         NULL before dereferencing, fixes a segfault that happened from
6257         time to time
6258
6259         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
6260         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
6261         and reindent the function
6262         (gtk_cell_renderer_pixbuf_get_size): indentation
6263
6264         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
6265         we quit it
6266         (gtk_dialog_add_buttons_valist): add g_return_if_fail
6267         (gtk_dialog_set_default_response): New function, to set default
6268         button
6269         (gtk_dialog_set_response_sensitive): New function, to set 
6270         sensitivity of buttons
6271
6272         * gtk/gtkcellrendererpixbuf.c
6273         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
6274         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
6275
6276         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
6277         handle any G_TYPE_OBJECT subclass, not just the base class, and 
6278         also boxed types.
6279         (_gtk_tree_data_list_value_to_node): ditto
6280
6281         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
6282         --gtk-debug=tree
6283
6284         * gtk/gtkmain.c: add GTK_DEBUG_TREE
6285
6286         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
6287
6288 2001-01-09  Tor Lillqvist  <tml@iki.fi>
6289
6290         * gdk/win32/gdkevents-win32.c: Implement better mouse
6291         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
6292         (find_window_for_pointer_event): New function.
6293         (gdk_event_translate): Use it when handling mouse events.
6294
6295 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
6296
6297         * configure.in:
6298         Added --with-included-loaders option
6299
6300         * gdk-pixbuf/Makefile.am:
6301         * gdk-pixbuf/gdk-pixbuf-io.c:
6302         Add support for including selected gdk-pixbuf loaders only.
6303
6304         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
6305         gtk_window_set_has_frame):
6306         Added inline documentation.
6307
6308         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
6309         * docs/reference/gdk/tmpl/windows.sgml:
6310         Added inline documentation.
6311
6312 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
6313
6314         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
6315         realizing buttons that have already been realized.
6316
6317 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
6318
6319         * tests/testtreeview.c (main): Show menu items before adding to
6320         option menu.
6321
6322         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
6323         around if we kill them.
6324
6325         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6326         Return if we pass in a NULL model.
6327
6328 2001-01-08  Havoc Pennington  <hp@redhat.com>
6329
6330         * tests/testtreeview.c: hack on this some
6331
6332         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
6333         gtk_tree_store_set_valist, v is for arrays, valist for varargs
6334         list
6335         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
6336
6337         * gtk/gtkliststore.h: Add varargs set() and get() convenience
6338         functions
6339
6340 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6341
6342         * gtk/gtkwindow-decorate.[hc]:
6343         * gtk/Makefile.am:
6344         New files. Contains an implementation of a minimal WM for
6345         linux-fb.
6346
6347         * gtk/gtkwindow.h:
6348         Add the possibility for GtkWindows to specify a frame. This
6349         is used for the window decoration code, but could concievably
6350         be used for X programs too (xmms style windows).
6351         GtkWindow->frame is the toplevel window if the window is framed.
6352         The signal frame_event gets all events that are targeted to
6353         GtkWindow->frame.
6354         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
6355         
6356         * gtk/gtkwindow.c:
6357         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
6358         Call out to gtkwindow-decorate.c for WM support in linx-fb.
6359
6360 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6361
6362         * docs/README.linux-fb:
6363         Correct filename ~/.pangoft2_aliases
6364
6365         * gdk/gdkwindow.h:
6366         Added new function gdk_window_get_decorations.
6367
6368         * gdk/linux-fb/gdkfb.h:
6369         Removed _gdk_window_get_decorations declaration.
6370         Renamed _gdk_window_set_child_handler to
6371         gdk_fb_window_set_child_handler.
6372
6373         * gdk/linux-fb/gdkwindow-fb.c:
6374         Renamed _gdk_window_set_child_handler to
6375         gdk_fb_window_set_child_handler.
6376
6377         * gdk/x11/gdkwindow-x11.c:
6378         New function gdk_window_get_mwm_hints().
6379         Implemented gdk_window_get_decorations.
6380
6381         * docs/reference/gdk/tmpl/windows.sgml:
6382         * docs/reference/gdk/gdk-sections.txt:
6383         Added gdk_window_get_decorations docs.
6384         
6385 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
6386
6387         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
6388         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
6389         gdk_fb_window_send_crossing_events):
6390         Possibly send focus events when the mouse moves from one
6391         window to another.
6392
6393 2001-01-07  Tor Lillqvist  <tml@iki.fi>
6394
6395         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
6396         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
6397         to match current API.
6398
6399         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
6400         environment variable is set, don't call g_error when on a
6401         palettized (PseudoColor) display. Some people want to use GTK+ 
6402         in 256-colour mode even though works only partially.
6403
6404         * gdk/gdk.def
6405         * gtk/gtk.def
6406         * gtk/makefile.mingw.in: Update.
6407
6408 2001-01-05  Havoc Pennington  <hp@redhat.com>
6409
6410         * tests/testtreeview.c: hack on this a bit
6411
6412         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
6413         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
6414
6415         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
6416         was spelled incorrectly
6417         (GTK_IS_TREE_MODEL_SIMPLE): ditto
6418
6419         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
6420         from gtk_tree_view_set_headers_active   
6421
6422         * gtk/gtktexttag.c:
6423         (gtk_text_tag_get_property): handle PROP_DIRECTION
6424         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
6425         properties, bug 40235
6426
6427         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
6428         forward_to_line_end
6429
6430 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
6431
6432         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
6433         modules/input/gtkimcontextxim.c: Adapt to new prototypes
6434         for unicode,locale,filename conversion functions.
6435
6436 2001-01-05  Havoc Pennington  <hp@redhat.com>
6437
6438         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
6439         broken if called on the first position in the buffer.
6440
6441         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
6442         forward_to_delimiters to be called only if we aren't already at
6443         the delimiters.
6444
6445 2001-01-05  Havoc Pennington  <hp@redhat.com>
6446
6447         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
6448
6449 2001-01-05  Alexander Larsson  <alexl@redhat.com>
6450
6451         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
6452         colormap in here. Sync from X port.
6453         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
6454         Sync from X port.
6455         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
6456         This happens now and then, and i don't think it is a bug.
6457         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
6458         != endpoint.
6459         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
6460         GDK_LINE_SOLID.
6461
6462         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
6463         some of the fields filled in at least.
6464
6465         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
6466         miLineArcD is no more, remove it from the function definition.
6467
6468 2001-01-04  Havoc Pennington  <hp@redhat.com>
6469
6470         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
6471         this
6472
6473         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
6474         user_data instead of tree_node
6475
6476         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
6477         TREE_VIEW_COLUMN_SIZE
6478
6479         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
6480         "size" field to "width" finishes bug 40061
6481
6482         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
6483         for bitfields, bug 40268
6484
6485 2001-01-04  Havoc Pennington  <hp@redhat.com>
6486
6487         Rename some stuff:
6488         
6489         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
6490
6491         s/GtkModelSimple/GtkTreeModelSimple/g;
6492         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
6493         s/gtk_model_simple/gtk_tree_model_simple/g;
6494         s/gtkmodelsimple/gtktreemodelsimple/g;
6495
6496         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
6497
6498         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
6499         s/column_set_col_type/column_set_sizing/g;
6500
6501         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
6502         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
6503
6504         s/GtkCellRendererType/GtkCellRendererState/g;
6505         
6506         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
6507         (gtk_cell_renderer_toggle_class_init): change "state" property to
6508         "active", to match GtkToggleButton
6509         (gtk_cell_renderer_toggle_get_active): new function, bug
6510         40269
6511         (gtk_cell_renderer_toggle_set_active): new function
6512         (gtk_cell_renderer_toggle_set_property): route changes to toggle
6513         state through gtk_cell_renderer_set_active
6514
6515 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
6516
6517         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
6518         temporarily until they work again.  Brought up to date with
6519         changes in the model.
6520         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
6521         model.
6522
6523 2001-01-04  Havoc Pennington  <hp@redhat.com>
6524
6525         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
6526         equal to the line length, then position iterator before paragraph 
6527         separators. Fixes crash reported by Mikael Hermansson when
6528         pressing left arrow from the start of a line.   
6529
6530         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
6531         about byte indexes off the end
6532         (iter_set_from_char_offset): add g_error about char offsets
6533         off the end
6534
6535 2001-01-03  Havoc Pennington  <hp@redhat.com>
6536
6537         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
6538
6539         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
6540         of private functions; remove inclusion of private headers.
6541
6542         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
6543         function, so we don't need private functions in gtktextdisplay.c
6544
6545         * gtk/gtktextiterprivate.h: underscore-ification
6546
6547         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
6548         to instead say "only useful to implement widgets"
6549
6550         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
6551         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
6552         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
6553
6554         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
6555         This function was completely broken
6556
6557         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
6558
6559         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
6560
6561         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
6562
6563         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
6564
6565         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
6566
6567         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
6568
6569         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
6570         gtk_paint_layout
6571
6572         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
6573         gtk_paint_layout
6574
6575         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
6576         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
6577         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
6578         which were not implemented.     
6579
6580         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
6581         insert_pixbuf signal. Rename delete_text to delete_range since it
6582         also deletes pixbufs and child anchors. This almost closes bug
6583         40245 (still need to deal with child anchors)
6584
6585         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
6586         insert_pixbuf, change signal names as appropriate, change types of
6587         signals taking marks/tags to have the specific type, not just
6588         G_TYPE_OBJECT
6589         
6590         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
6591         closes bug 40051
6592
6593         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
6594         unnecessary remove_contents() call
6595         (gtk_option_menu_class_init): add a "changed" signal, closes
6596         bug 40039
6597         (gtk_option_menu_update_contents): emit "changed" if the 
6598         active menu item changes
6599
6600         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
6601         cast to GtkObject, reported by Jonas Borgstrom
6602         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
6603         we can't do stuff with side effects in finalize. Instead, spew a
6604         warning if the loader isn't closed.
6605
6606         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
6607         colormap in here, non-X ports probably need to sync to this change
6608
6609         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
6610         assertion that colormap != NULL, you can set the colormap to NULL
6611         if you like.
6612         
6613         * Makefile.am: remove gtk-config-2.0
6614
6615         * configure.in: Use pkg-config to locate GLib. Remove
6616         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
6617         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
6618         Use pkg-config to locate Pango. Output correct Pango libs to
6619         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
6620
6621         * Makefile.am (pkgconfig_DATA): install only target-specific pc
6622         files
6623         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
6624         X11 pc files
6625
6626         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
6627         unref from here
6628
6629 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
6630
6631         * configure.in:
6632         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
6633
6634 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
6635
6636         * gtk/gtktextlayout.c
6637         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
6638         variable when moving back onto a single line.
6639
6640 2001-01-01  Havoc Pennington  <hp@redhat.com>
6641
6642         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6643
6644         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6645
6646         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
6647         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
6648
6649 2001-01-01  Havoc Pennington  <hp@redhat.com>
6650
6651         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
6652
6653         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
6654         GtkTextAttributes
6655
6656         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
6657         #40246
6658         (gtk_text_attributes_copy_values): rename from 
6659         gtk_text_attributes_copy
6660         (gtk_text_attributes_copy): a more standard GTK copy function, 
6661         which returns a new object
6662
6663 2001-01-01  Havoc Pennington  <hp@redhat.com>
6664
6665         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
6666         
6667         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
6668         don't fill in tree_view->priv->selection, kind of an unexpected
6669         side effect
6670
6671         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
6672         gtkintl.h
6673         
6674         * gtk/gtkcellrenderer.c: Remove definition of _ and include
6675         gtkintl.h
6676         (gtk_cell_renderer_get_property): remove calls to g_value_init
6677
6678         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
6679         gtkintl.h
6680
6681         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
6682         and include gtkintl.h
6683         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
6684         property names
6685
6686         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
6687         GtkTreeSelection
6688         (_gtk_tree_selection_new_from_with_view): rename, return
6689         GtkTreeSelection
6690         (_gtk_tree_selection_set_tree_view): rename with uscore
6691         (gtk_tree_selection_get_selected): fill in the "model" out param
6692         first, so it gets filled in even if we return at the top of the 
6693         function
6694         (gtk_tree_selection_real_select_all): add a comment and an else{}
6695         to clarify this a bit
6696         (gtk_tree_selection_real_unselect_all): add the same else{}
6697
6698         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
6699         set_tree_view to have underscore prefixes, move them to the
6700         private header, fix return type of new_with_tree_view
6701         (struct _GtkTreeSelection): mark struct
6702         fields private  
6703
6704         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
6705         GtkTreeModelFlags, not a guint
6706         (gtk_tree_path_prev): return gboolean not gint
6707         (gtk_tree_path_up): return gboolean not gint
6708
6709         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
6710         return GtkTreeModelFlags, not a guint
6711
6712         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
6713         that child model is non-null before unrefing it
6714         (g_value_int_compare_func): make this a qsort compare func, not 
6715         a boolean predicate
6716
6717         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
6718         (add -umn to the end), and mark it unimplemented
6719         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
6720         I don't see what it's for - doesn't the model always sort itself?
6721         (gtk_tree_model_sort_set_compare): this had the wrong signature
6722
6723         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
6724         Fix the docs to say that it destructively replaces existing
6725         attributes (previously said that it added attributes).
6726         (gtk_tree_view_column_set_visible): canonicalize bool before
6727         equality testing. Also, check for realization before
6728         hiding/showing the tree_column->window; if this window could exist
6729         before realization, then it's busted and needs fixing, we can't 
6730         create GDK resources pre-realization. Also, remove
6731         superfluous queue_resize(), since set_size() does that for us.
6732         (gtk_tree_view_column_set_col_type): check realization before 
6733         using tree_column->window
6734
6735         * gtk/gtktreedatalist.c: fix filename in copyright notice
6736
6737 2000-12-31  Havoc Pennington  <hp@pobox.com>
6738
6739         * gtk/gtktextview.c: Rearrange all the
6740         scroll-while-dragging-or-selecting code to be different, not
6741         necessarily better. ;-)
6742         (gtk_text_view_scroll_to_mark): Change this
6743         function to take within_margin as a fraction instead of a pixel
6744         value, and to take alignment arguments (indicating where to align 
6745         the mark inside the visible area)
6746         
6747         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
6748         to GtkObject
6749
6750         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
6751         behavior so that offsets past the end of the line are not 
6752         allowed, and an offset equal to the line length moves the iterator
6753         to the next line
6754         (gtk_text_iter_set_line_index): make parallel change
6755         (gtk_text_iter_get_bytes_in_line): add this function
6756         
6757         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
6758         of byte indexes off the end of the line; byte index at the end of
6759         the line now returns FALSE and doesn't fill in the requested
6760         values, byte index past the end of the line is an error.  Also,
6761         don't allow -1 offset anymore, since its meaning is unclear.
6762
6763         This change exposes some bug in visual cursor motion, where we
6764         end up with a huge invalid byte index; needs fixing. Symptom of 
6765         bug is a crash when you hit up arrow.
6766         
6767         (_gtk_text_line_char_locate): match the change to byte_locate
6768
6769         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
6770         from start of line properly. fixes bug reported by Mikael
6771         Hermansson where backspace would delete all text before the
6772         cursor.
6773
6774 2000-12-30  Tor Lillqvist  <tml@iki.fi>
6775
6776         * gdk/win32/gdkwindow-win32.c
6777         (gdk_window_impl_win32_get_visible_region): New function, as in
6778         the X11 backend.
6779         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
6780         instead of duplicating the same code here.
6781
6782         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
6783         GDK_COLORMAP macro.
6784
6785         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
6786         destroy function.
6787         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
6788         access that.
6789
6790         * gtk/gtk.def: Update.
6791
6792         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
6793
6794 2000-12-30  Havoc Pennington  <hp@pobox.com>
6795
6796         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
6797         colormap on input only windows, to avoid special cases all over
6798         the code for these windows.
6799
6800 2000-12-26  Tor Lillqvist  <tml@iki.fi>
6801
6802         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
6803         we are on a palettized display ("PseudoColor" in X11), as the code
6804         for that doesn't work anyway, and never has.
6805
6806 2000-12-22  Alexander Larsson  <alexl@redhat.com>
6807
6808         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
6809         Don't use isprint() for chars > 255.
6810
6811 2000-12-21  Havoc Pennington  <hp@redhat.com>
6812
6813         * tests/testtreeview.c: more work
6814
6815 2000-12-21  Alexander Larsson  <alexl@redhat.com>
6816
6817         * docs/README.linux-fb:
6818         Update the docs to the new pangoft2 way.
6819
6820 2000-12-21  Alexander Larsson  <alexl@redhat.com>
6821
6822         * configure.in:
6823         For linux-fb get the pangoft2 cflags and libs. This needs a recent
6824         pango version.
6825         Remove modules/linux-fb/Makefile.
6826
6827         * gdk/linux-fb/gdkdrawable-fb2.c:
6828         Render glyphs using freetype.
6829
6830         * gdk/linux-fb/gdkfb.h:
6831         Add new fb-specific functions needed for managing windows.
6832
6833         * gdk/linux-fb/gdkmain-fb.c:
6834         Remove gdk_font_init/fini() calls.
6835
6836         * gdk/linux-fb/gdkpango-fb.c:
6837         Remove old implementation. Use pangoft2 instead.
6838
6839         * gdk/linux-fb/gdkprivate-fb.h:
6840         Remove PangoFBFont and related stuff.
6841
6842         * gdk/linux-fb/gdkwindow-fb.c:
6843         Implement drawable->get_visible_region.
6844         Implement support for _gdk_window_set_child_handler () and
6845         _gdk_window_get_decorations().
6846
6847         * modules/Makefile.am:
6848         Remove linux-fb subdir.
6849
6850         * modules/linux-fb/*:
6851         Removed all.
6852         
6853 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
6854
6855         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
6856         calls, as they are no longer needed.
6857
6858         * gtk/gtktreemodelsort.c: Fix up the comparison code.
6859         
6860         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
6861         figure out how to emit a signal on an interface.
6862
6863 2000-12-20  Havoc Pennington  <hp@redhat.com>
6864
6865         * tests: new directory to contain tests, gtk/test* should move
6866         here sometime (with appropriate on-cvs-server hackery)
6867
6868         * tests/testtreeview.c, tests/Makefile.am: a test
6869         
6870         * configure.in (AC_OUTPUT): add tests/Makefile
6871
6872         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
6873         and "invisible_set" which were missing
6874
6875         * gtk/gtkrbtree.h: some cheesy indentation fix
6876         
6877 2000-12-20  Alexander Larsson  <alexl@redhat.com>
6878
6879         * gtk/gtkinvisible.c (gtk_invisible_realize):
6880         Attach the style to the window so that the style it is not
6881         leaked when unrealizing the window.
6882
6883 2000-12-18  Havoc Pennington  <hp@redhat.com>
6884
6885         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
6886         begin/end user action where appropriate
6887         (gtk_text_view_commit_handler): add begin/end user action
6888
6889         * gtk/gtktextbuffer.c: add begin/end user action signals, and
6890         bracket interactive operations with begin/end user action pair.
6891         
6892         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
6893         "interactive" arg from insert_text and delete_text signals.
6894         Add begin_user_action, end_user_action signals
6895         (gtk_text_buffer_begin_user_action): 
6896         (gtk_text_buffer_end_user_action): New functions to delimit 
6897         a user-visible action
6898
6899         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
6900         signals.
6901         
6902 2000-12-18  Havoc Pennington  <hp@redhat.com>
6903
6904         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
6905         was pretty non-working.
6906
6907         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
6908         by passing the length to g_utf8_validate().
6909
6910 2000-12-16  Havoc Pennington  <hp@pobox.com>
6911
6912         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
6913         Port to GObject, can go back in gdk-pixbuf after setting up 
6914         a gdk-pixbuf-marshal.h header over there.
6915
6916         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
6917         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
6918         args
6919         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
6920         set
6921         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
6922         here, do it when we create the buttons later
6923         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
6924         (gtk_tree_view_map): paranoia checks that column->button is shown 
6925         and unmapped
6926         (gtk_tree_view_size_request): only request visible children.
6927         Move header size calculation in here, for cleanliness, and 
6928         to maintain invariants for child widgets if we eventually 
6929         let users set different children inside the buttons
6930         (gtk_tree_view_map_buttons): factor out code to map buttons,
6931         since it was being called several times
6932         (gtk_tree_view_size_allocate_buttons): move_resize the drag
6933         windows instead of just moving them; their height may change 
6934         if we allow random widgets in there, or the theme changes.
6935         (gtk_tree_view_size_allocate): move button size allocation 
6936         above emitting the scroll signals, to ensure a sane state when we
6937         hit user code
6938         (gtk_tree_view_button_release): remove queue_resize after
6939         tree_view_set_size(), set_size() will handle any resize queuing
6940         that's needed
6941         (gtk_tree_view_focus_in): just queue a draw, don't fool with
6942         draw_focus goo
6943         (gtk_tree_view_focus): use gtk_get_current_event() and
6944         gdk_event_get_state()
6945         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
6946         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
6947         semicolon
6948         (gtk_tree_view_create_button): show the button here
6949         (gtk_tree_view_button_clicked): actually emit the clicked signal
6950         on the column
6951         (_gtk_tree_view_set_size): return right away if the size is
6952         unchanged, as a cheesy optimization
6953         (gtk_tree_view_setup_model): rename set_model_realized to 
6954         setup_model to match the flag that indicates whether we've 
6955         called it
6956         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
6957         exist, because set_scroll_adjustment does that and it shouldn't
6958         matter what order you call these in
6959         (gtk_tree_view_get_vadjustment): ditto
6960         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
6961         for paranoia
6962         (gtk_tree_view_set_headers_visible): call
6963         gtk_tree_view_map_buttons() instead of using cut-and-paste code
6964         (gtk_tree_view_append_column): clarify whether the return value
6965         is the count of columns before or after, and do the increment 
6966         separately from the return statement so you can tell from the code.
6967         (gtk_tree_view_remove_column): ditto
6968         (gtk_tree_view_insert_column): ditto
6969         (gtk_tree_view_get_column): remove g_return_if_fail for columns
6970         outside the existing range, the docs say that outside-range
6971         columns are allowed, so we handle them as documented. (Presumably
6972         this allows a nice loop with column != NULL as test.)
6973         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
6974         mean (left/right/center etc.).
6975         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
6976         (gtk_tree_view_expand_row): add docs
6977         (gtk_tree_view_collapse_row): add docs
6978
6979         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
6980         function to emit the clicked signal on a column
6981         
6982         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
6983         state of an event
6984         (gdk_event_get_time): don't treat GDK_SCROLL 
6985         as a button event, remove default case from switch so gcc 
6986         will whine if we don't explicitly handle all event types
6987
6988         * gtk/gtktreeselection.h: added some FIXME 
6989         
6990         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
6991         "columns" to "n_columns" and "column" to "columns" for clarity
6992
6993 2000-12-16  Havoc Pennington  <hp@pobox.com>
6994         
6995         * gtk/gtktextiter.c: General cleanup of the log attr iteration
6996         stuff. This should make e.g. the delete key work again in the
6997         text widget...
6998         (gtk_text_iter_forward_cursor_positions): handle negative count
6999         (gtk_text_iter_backward_cursor_positions): handle negative count
7000         (gtk_text_iter_forward_word_ends): handle negative count
7001         (gtk_text_iter_backward_word_starts): handle negative count
7002
7003         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
7004         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
7005         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
7006         GObject. No doubt will cause breakage.
7007
7008         * demos/gtk-demo/textview.c: remove hacks around
7009         non-GObject-ification of the text objects
7010
7011         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
7012         the text tag
7013         
7014 2000-12-14  Havoc Pennington  <hp@pobox.com>
7015
7016         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
7017         that we have Xrender
7018
7019 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
7020
7021         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
7022         Add two virtualized functions gdk_drawable_get_clip_region - to
7023         get the clip region when drawing.
7024         
7025         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
7026         use invalidate_region.
7027
7028         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
7029         region.
7030
7031         * acconfig.h configure.in: Check for Xft. For now, assume
7032         that if Xft is found, Pango was compiled with Xft support
7033         as well.
7034
7035         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
7036         gdk_colormap_query_color().
7037         
7038         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
7039         with Xft if appropriate.
7040
7041         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
7042         a pangoxft context if we have XFT and the environment
7043         variable GD_USE_XFT is set.
7044         
7045         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
7046         and also possibly an XftDraw structure.
7047
7048         * gtk/gtkfontsel.c: Handle the case where the font from the
7049         style doesn't match any of the fonts a bit better.
7050         
7051         * gtk/testgtk.c: Add tabs between directional segments for
7052         hebrew/arabic test. (Not really necessary, just a little
7053         prettier.)
7054
7055 2000-12-14  Havoc Pennington  <hp@redhat.com>
7056
7057         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
7058         reading a file
7059
7060 2000-12-14  Havoc Pennington  <hp@redhat.com>
7061
7062         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
7063         unused call to get_last_line()
7064
7065         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
7066         here until boxed is working (and maybe after that - we should
7067         really not gratuitously break old code)
7068
7069         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
7070         specific types for font_desc and tabs args, move them to
7071         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
7072         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
7073
7074         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
7075         use GTK_TYPE_POINTER for signal signatures as a hack-around
7076
7077         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
7078         PangoTabArray
7079
7080         * gtk/gtktextlayout.c (line_display_iter_to_index): 
7081         make static
7082         (line_display_index_to_iter): make static
7083
7084         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7085         to marshal a string not a boxed
7086
7087         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
7088
7089         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
7090         since the UTF-8 isn't validated yet
7091
7092         * gtk/gtktextsegment.c (char_segment_check_func): don't require
7093         lines to end in '\n'
7094         
7095         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
7096         forward_to_delimiters, and grapheme boundaries
7097         (gtk_text_view_delete_from_cursor): properly handle non-newline
7098         delimiters, and grapheme boundaries
7099
7100         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
7101         to gtk_text_iter_forward_to_delimiters, and make it work properly
7102         if empty lines end with a character other than '\n'
7103
7104         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
7105         position
7106
7107 2000-12-15  Tor Lillqvist  <tml@iki.fi>
7108
7109         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
7110
7111         * gtk/gtk.def
7112         * gdk/gdk.def: Update.
7113
7114         * gdk/win32/gdkmain-win32.c
7115         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
7116         gdkmain-win32.c here.
7117
7118         * gdk/win32/makefile.mingw.in (all): No need to make
7119         gdk-win32res.o here, the makefile one step up will call us to make
7120         it.
7121
7122         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
7123         gdkkeys-win32.
7124
7125         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
7126
7127         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
7128         call to g_source_add().
7129
7130         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
7131         leak. Thanks to Andreas Kemnade.
7132
7133 2000-12-13  Havoc Pennington  <hp@pobox.com>
7134
7135         * gtk/gtktextbtree.h: Remove double _ in front of some functions
7136
7137         * gtk/gtktext*.[hc]: update accordingly
7138         
7139 2000-12-13  Havoc Pennington  <hp@pobox.com>
7140
7141         * gtk/gtktextbtree.h: Put _ in front of every function in this 
7142         header file
7143
7144         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
7145
7146 2000-12-13  Alex Larsson  <alexl@redhat.com>
7147
7148         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
7149         Add support for ps2 intellimouse.
7150
7151         * gdkkeyboard-fb.c:
7152         Move shift-F1 repaint handling to xlate handler only.
7153         
7154         * docs/README.linux-fb:
7155         Add imps2 to docs.
7156         Document the new refresh keys.
7157         
7158 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
7159
7160         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
7161
7162         * gtk/gtkbox.c: change property types from (u)long to (u)int for
7163         ::position and ::padding.
7164
7165         * gtk/gtkcontainer.c: make ::border_width an INT property.
7166
7167         * gtk/gtkpacker.c: make ::position an INT property.
7168
7169         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
7170         guard against NULL h/v scrollbars, since this is used at construction
7171         time.
7172
7173         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
7174         internal gtk_clist_constructor().
7175
7176         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
7177         gtk_ctree_constructor().
7178
7179         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
7180         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
7181
7182         * docs/reference/Makefile.am: fun stuff, disabled docs generation
7183         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
7184
7185         * gtk/gtkwidget.[hc]:
7186         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
7187         and gtk_widget_get().
7188         (gtk_widget_new): use g_object_new_valist().
7189         (gtk_widget_set): use g_object_set_valist().
7190
7191         * gtk/gtkobject.[hc]:
7192         removed gtk_object_arg_get_info(), gtk_object_getv(),
7193         gtk_object_query_args(), gtk_object_newv(),
7194         gtk_object_class_add_signals(),
7195         gtk_object_class_user_signal_new(),
7196         gtk_object_class_user_signal_newv(),
7197         gtk_object_arg_set(), gtk_object_arg_get(),
7198         gtk_object_args_collect(),
7199         gtk_object_default_construct(),
7200         gtk_object_constructed(),
7201         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
7202         removed nsignals, signals and n_args members from GtkObjectClass.
7203         (gtk_object_new): use g_object_new_valist().
7204         (gtk_object_set): use g_object_set_valist().
7205         (gtk_object_get): use g_object_get_valist().
7206         
7207         * gtk/gtkcompat.h: define gtk_object_default_construct().
7208         
7209         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
7210         g_object_new().
7211
7212         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
7213         fucntions, cleaned up method assignments (make sure your structures
7214         are setup properly before calling out). removed all GTK_CONSTRUCTED
7215         hacks ;)
7216
7217 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
7218
7219         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
7220         off-by-one error in checks. (Dave Lambert)
7221
7222 2000-12-12  Alexander Larsson  <alexl@redhat.com>
7223
7224         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
7225         Don't free gdk_fb_keyboard twice.
7226
7227 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
7228
7229         * gtk/testgtk.c:
7230         (create_tooltips): 
7231         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
7232         use GObject swapped_signal:: properties instead.
7233
7234         * gtk/gtkcellrenderertoggle.c: 
7235         * gtk/gtkcellrenderertextpixbuf.c: 
7236         * gtk/gtkcellrenderertext.c: 
7237         * gtk/gtkcellrendererpixbuf.c: 
7238         * gtk/gtkcellrenderer.c:
7239         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
7240         missing warnings for invalid property ids, install properties
7241         with g_object_class_install_property() now.
7242         
7243         * gtk/gtksignal.c:
7244         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
7245         
7246 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
7247         
7248         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
7249         to determine if a window is the focus widget within
7250         its toplevel.
7251
7252         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
7253         to be boolean.
7254
7255         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
7256         of the case where the container CAN_FOCUS to here instead
7257         of having it in each individual move-the-focus place.
7258
7259         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
7260         focusing to be geometric in a much more obvious sense. Arrowing
7261         around is still non-intuitive because it isn't perfect and
7262         because entries, etc, grab the arrow keys, but it at least
7263         usually will do what you expect now.
7264         
7265         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
7266         file.
7267
7268         * gtk/gtknotebook.c: Change tabs to be a single item in
7269         the focus chain. Make movement of focus on tabs with arrow
7270         keys wrap around.
7271         
7272         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
7273         CHECK_FIND_CHILD macro to give informative error messages
7274         instead of silent returns.
7275
7276         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
7277         flag since we handle GdkReturn on the tabs.
7278
7279         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
7280         windows rather than sending expose events directly.
7281
7282         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
7283         definition for GtkNotebookPage into .c file, since it is private.
7284
7285         * gtk/testgtk.c (create_notebook): Add option for 
7286         testing borderless notebook.
7287
7288         * gtk/testgtk.c (page_switch): Removed egregious poking
7289         around in GTK+ internals.
7290
7291         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
7292
7293         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
7294         properly through gtk_clist_focus. Make the title headers a
7295         single item in the tab-focus chain, and make left-right wrap
7296         around.
7297
7298         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
7299         focus method so that wrapping around works properly.
7300
7301         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
7302         that is handled for the widget now. 
7303
7304 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
7305
7306         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
7307         widgets as TOPLEVEL.
7308
7309         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
7310         TOPLEVEL widgets are containers.
7311
7312         * gtk/gtkinvisible.h: Remove useless include.
7313
7314 2000-12-11  Havoc Pennington  <hp@redhat.com>
7315
7316         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
7317         Handle chopping off \r\n and 0x2029 in addition to \n before
7318         passing to PangoLayout
7319
7320         * gtk/gtkimcontextsimple.c
7321         (gtk_im_context_simple_get_preedit_string): 
7322         return an empty string if no match is pending
7323
7324         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
7325         assertion that the returned preedit string was sane
7326
7327         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
7328         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
7329         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
7330
7331 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
7332
7333         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
7334         Fix up finalizer to chain to its parent.
7335
7336 2000-12-11  Alexander Larsson  <alexl@redhat.com>
7337
7338         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
7339         Clearified the difference between the keyboard types. Wrote a note
7340         about the magic sysrq key to get out of raw mode.
7341
7342 2000-12-09  James Henstridge  <james@daa.com.au>
7343
7344         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
7345         member to hold masks for detecting the start of a protocol packet.
7346         (mouse_devs): add packet start masks for ps2 and ms device types.
7347         Left the mask for fidmour blank, as I have no idea what it should
7348         be.
7349         (handle_mouse_io): skip bytes until we get to the start of a
7350         packet.  My Logitech mouse seems to be passing an extra NULL pad
7351         byte, and GPM does a similar thing here.
7352         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
7353         this is the ms mouse driver.
7354         (gdk_fb_mouse_ms_packet): fix up button handling, which was
7355         completely broken except for button1.  It was checking the wrong
7356         bit in the packet for the status of the right mouse button, and
7357         wrongly assuming right == button2 rather than 3.  I fixed that and
7358         also added support for middle button (button2).
7359
7360 2000-12-08  Havoc Pennington  <hp@redhat.com>
7361
7362         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
7363         that cause a segfault on text insertion
7364
7365         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
7366         warning
7367
7368         * gtk/gtktextiter.c (test_log_attrs): use
7369         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
7370
7371         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
7372         Get log attrs for a line, using a cache stored on the buffer
7373         
7374         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
7375         reported by Jeff Franks
7376
7377 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7378
7379         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
7380         /dev/ttyS0 -> /dev/mouse
7381
7382 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7383
7384         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
7385         Added dummy gdk_fontset_load.
7386
7387 2000-12-08  Alexander Larsson  <alexl@redhat.com>
7388
7389         * docs/README.linux-fb:
7390         * docs/Makefile.am:
7391         Initial GtkFB docs.
7392         
7393         * gdk/linux-fb/Makefile.am:
7394         Define GDK_DATA_PREFIX.
7395
7396         * gdk/linux-fb/gdkmain-fb.c:
7397         Fix typo.
7398         Change default display to /dev/fb0.
7399
7400         * gdk/linux-fb/gdkpango-fb.c:
7401         Add $(prefix)/share/fonts/ to font path.
7402         
7403 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7404
7405         * gdk/linux-fb/gdkkeyboard-fb.c:
7406         New file containing the abstracted keyboard driver. Most code
7407         taken from gdkinput-ps2.c
7408
7409         * gdk/linux-fb/gdkinput-ps2.c:
7410         Removed file.
7411         
7412         * gdk/linux-fb/Makefile.am:
7413         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
7414
7415         * gdk/linux-fb/gdkcolor-fb.c:
7416         display->fb was renamed to display->fb_fd.
7417
7418         * gdk/linux-fb/gdkcursor-fb.c:
7419         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7420
7421         * gdk/linux-fb/gdkinput.c:
7422         Moved gdk_input_init here from gdkinput-ps2.c
7423
7424         * gdk/linux-fb/gdkmain-fb.c:
7425         display->fb was renamed to display->fb_fd.
7426         Now the tty and the console is opened here instead
7427         of in the keyboard driver. Also check GDK_VT to see what
7428         tty to open.
7429         Move gdk_beep () here from gdkinput-ps2.c
7430         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7431
7432         * gdk/linux-fb/gdkmouse-fb.c:
7433         Add header.
7434         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7435         Return correct keyboard modifiers.
7436         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
7437
7438         * gdk/linux-fb/gdkprivate-fb.h:
7439         Add tty and vt info to display.
7440         Add orignal modeinfo storage to display
7441         Update global functions
7442
7443         * gdk/linux-fb/gdkwindow-fb.c:
7444         Added gdk_fb_window_find_focus().
7445         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7446
7447 2000-12-07  Havoc Pennington  <hp@pobox.com>
7448
7449         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
7450         function, noticed by Alex
7451
7452 2000-12-06  Elliot Lee  <sopwith@redhat.com>
7453
7454         * configure.in: Detect freetype properly
7455
7456         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
7457         above.
7458
7459 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7460
7461         * gdk/linux-fb/Makefile.am:
7462         Add gdkmouse-fb.c
7463         
7464         * gdk/linux-fb/gdkmouse-fb.c:
7465         New file. Abstracted the mouse drivers a bit.
7466
7467         * gdk/linux-fb/gdkcursor-fb.c:
7468         The cursor hide/show functions was moved here from gdkinput-ps2.c.
7469
7470         * gdk/linux-fb/gdkinput-ps2.c:
7471         Removed old mouse handling code. Moved cursor handling code
7472         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
7473         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
7474         gdk_mouse_get_info.
7475
7476         * gdk/linux-fb/gdkmain-fb.c:
7477         Pass NULL pointers for x,y in gdk_mouse_get_info call.
7478
7479         * gdk/linux-fb/gdkprivate-fb.h:
7480         Removed public gdk_fb_find_common_ancestor, added and renamed
7481         functions for the new mouse handling code.
7482
7483         * gdk/linux-fb/gdkwindow-fb.c:
7484         Moved gdk_fb_window_send_crossing_events here. added global
7485         variable gdk_fb_window_containing_pointer. made
7486         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
7487         renamed to gdk_mouse_get_info.
7488
7489 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7490
7491         * gdk/linux-fb/gdkevents-fb.c:
7492         Update to match latest gmain/gsource changes.
7493
7494         * gdk/linux-fb/gdkinput-ps2.c:
7495         Bogus gdk_keymap_get_entries_for_keycode implementation so that
7496         it links. Will be implemented later.
7497
7498 2000-12-03  Havoc Pennington  <hp@pobox.com>
7499
7500         * gdk/Makefile.am: add gdkkeys.[hc]
7501
7502         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
7503         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
7504
7505         * acconfig.h, configure.in: add checks and command line options
7506         for XKB
7507
7508         * gdk/x11/gdkkeys-x11.c: Implement the above functions
7509         
7510         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
7511         and group in the key event
7512
7513         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
7514         field with the low-level hardware key code, and a group
7515         field with the keyboard group
7516
7517         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
7518         and declare a couple globals used for keymap handling
7519         
7520         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
7521         hold down Shift-Control and type a hex number to get a Unicode 
7522         character corresponding to the hex number
7523         (gtk_im_context_simple_get_preedit_string): Fix cursor position
7524         (return bytes not chars)
7525
7526 2000-12-05  Elliot Lee  <sopwith@redhat.com>
7527
7528         * gdk/gdkcolor.h: Make GdkColor specify element sizes
7529         to avoid waste on 64-bit platforms.
7530
7531 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
7532
7533         * INSTALL: Fix link to PNG home, remove reference
7534         to fribidi.
7535
7536         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
7537         
7538         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
7539         tested.)
7540
7541         * gtk/gtkcheckmenuitem.c: Permanently turn on
7542         always_show_toggle.
7543
7544         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
7545         be NULL. (Vladimir Klebanov, #26545)
7546
7547         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
7548         some signed/unsigned comparison problems. (#6510,
7549         David Kaelbling)
7550
7551         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
7552         return type to boolean (Oskar Liljeblad, #18648)
7553
7554 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7555
7556         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
7557         Remove bogus colormap setting.
7558
7559 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7560
7561         * gdk/linux-fb/gdkcolor-fb.c:
7562         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
7563
7564         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
7565         Must set colormap.
7566         
7567 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
7568
7569         * docs/tutorial/gtk-tut.sgml: DND updates
7570
7571 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
7572
7573         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7574         Remove old debug g_warning().
7575         (gdk_fb_draw_drawable): The src argument can be either a wrapper
7576         or an implementation, just pass the implementation to draw_drawable_2.
7577         
7578         * gdk/linux-fb/gdkprivate-fb.h:
7579         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
7580
7581         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7582         clear and invalidate area when window is destroyed.
7583         (send_map_events): Remove old commented out code.
7584
7585 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7586
7587         * gdk/linux-fb/gdkpango-fb.c:
7588         Use italic instead of oblique in font aliases.
7589         
7590         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
7591         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
7592         other unsupported functions.
7593
7594 2000-12-04  Havoc Pennington  <hp@redhat.com>
7595
7596         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
7597
7598         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
7599
7600         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
7601
7602         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
7603         hack to avoid infinite loops (synthetic expose event) - 
7604         Owen has more appropriate fixes in a branch he'll check in later.
7605
7606         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
7607         separator, CR, and CRLF as line ends
7608
7609         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
7610         into lines using pango_find_paragraph_boundary(); other bits of
7611         the widget are still going to be broken if the boundary isn't '\n'
7612         though
7613
7614 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7615
7616         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
7617         multiply.
7618
7619         * gdk/linux-fb/gdkpango-fb.c:
7620         Copied some 26.6 scaling macros from pango to clean up the rounding.
7621         (pango_fb_font_get_glyph_info): Correct sign on x value.
7622
7623         * gdk/linux-fb/gdkprivate-fb.h:
7624         Removed unreferenced external functions.
7625
7626         * modules/linux-fb/Makefile.am: Use ` instead of '.
7627
7628         * modules/linux-fb/basic.c:
7629         Remove dead code. In particular the dummy lang engine which broke all
7630         pango layouts in GtkFB. Don't include tables-big.i anymore.
7631
7632         * modules/linux-fb/tables-big.i:
7633         Upgrade to latest version from pango. Left for reference, basic_ranges
7634         moved to basic.c.
7635         
7636 2000-12-04  Havoc Pennington  <hp@redhat.com>
7637
7638         Fix bugs Alex found:
7639         
7640         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
7641         to "draw"
7642
7643         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
7644
7645         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
7646
7647         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
7648         implementation in here, apparently the expose() implementation was
7649         dead code.
7650
7651 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7652
7653         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7654         Return positive descent.
7655
7656 2000-12-02  Havoc Pennington  <hp@pobox.com>
7657
7658         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
7659         method and signal
7660         
7661         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
7662         calls gdk_window_process_updates() to push the exposes through
7663         (gtk_widget_class_init): No more draw signal, no
7664         gtk_widget_real_draw()  
7665         
7666         * gtk/gtkbin.c (gtk_bin_draw): remove
7667
7668         * gtk/gtkbox.c (gtk_box_draw): remove
7669
7670         * gtk/gtkbutton.c (gtk_button_draw): remove
7671
7672         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
7673
7674         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
7675
7676         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
7677
7678         * gtk/gtkclist.c (gtk_clist_draw): remove
7679
7680         * gtk/gtkentry.c (gtk_entry_draw): remove
7681
7682         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
7683
7684         * gtk/gtkfixed.c (gtk_fixed_draw): remove
7685
7686         * gtk/gtkframe.c (gtk_frame_draw): remove
7687
7688         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
7689
7690         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
7691
7692         * gtk/gtklayout.c (gtk_layout_draw): remove
7693
7694         * gtk/gtklist.c (gtk_list_draw): remove
7695
7696         * gtk/gtklistitem.c (gtk_list_item_draw): remove
7697
7698         * gtk/gtkmenu.c (gtk_menu_draw): remove
7699
7700         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
7701
7702         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
7703
7704         * gtk/gtknotebook.c (gtk_notebook_draw): remove
7705
7706         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
7707
7708         * gtk/gtkpacker.c (gtk_packer_draw): remove
7709
7710         * gtk/gtkrange.c (gtk_range_draw): remove
7711
7712         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
7713
7714         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
7715
7716         * gtk/gtktable.c (gtk_table_draw): remove
7717
7718         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
7719
7720         * gtk/gtktext.c (gtk_text_draw): remove
7721
7722         * gtk/gtktextview.c (gtk_text_view_draw): remove
7723
7724         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
7725
7726         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
7727
7728         * gtk/gtktree.c (gtk_tree_draw): remove
7729
7730         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
7731
7732         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
7733
7734         * gtk/gtkviewport.c (gtk_viewport_draw): remove
7735
7736         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
7737
7738         * gtk/gtkvscale.c (gtk_vscale_draw): remove
7739
7740         * gtk/gtkwindow.c (gtk_window_draw): remove
7741
7742 2000-20-01  Anders Carlsson  <andersca@gnu.org>
7743
7744         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
7745         a GtkToggleButton is both insensitive and active, it was being
7746         drawn by the GtkButton draw handler which doesn't check the
7747         state. Now it's calling gtk_toggle_button_paint instead.
7748         
7749 2000-12-01  Havoc Pennington  <hp@redhat.com>
7750
7751         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
7752         dangling pointers to the appearance attributes from the 
7753         line display
7754
7755         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
7756         width/height to mean "full width/height of drawable"
7757
7758         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
7759         click to select word/line
7760         
7761         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
7762         when getting log attrs. Get a slice, so that pixmaps and stuff
7763         are properly handled.
7764
7765         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
7766         paste into the selection (replaces selection now, previously
7767         crashed or added to selection). Reveals longstanding btree bug -
7768         select multiple lines, middle-click on the selection, boom. This
7769         isn't related to my changes though.
7770
7771         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
7772         PangoLogAttrs changes
7773         (gtk_entry_move_backward_word): ditto
7774
7775         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
7776         functions return bool whether the iter moved onto a
7777         dereferenceable position.
7778  
7779         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
7780         functions for motion in terms of display lines.
7781
7782         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
7783         get the buffer a mark is inside
7784         
7785 2000-12-01  Alexander Larsson  <alexl@redhat.com>
7786
7787         * gdk/linux-fb/Makefile.am:
7788         * modules/linux-fb/Makefile.am:
7789         Freetype 2 final uses freetype-config
7790
7791         * gdk/linux-fb/gdkpango-fb.c:
7792         Upgrade to use Freetype 2 final.
7793         More flexible support for font aliases, this also fixes a bug with
7794         GtkFontSelector, as the aliases must be visible in the font/family list,
7795         or GtkFontSelector reads uninitialized memory.
7796
7797 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
7798
7799         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
7800         XGetIMValues to properly terminate variable argument list, and do
7801         NULL return check for ic_values and xim_styles.
7802
7803         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
7804         Restore preedit state after XmbResetIC().
7805         
7806         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
7807         XvaCreateNestedList() should take XvaNestedList, but not
7808         XvaNestedList*.
7809
7810         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
7811         preedit_draw_callback, preedit_caret_callback): Match
7812         "preedit-changed" signal name to "preedit_changed" to be
7813         consistent to the spec.
7814
7815         * gtk/gtkimcontextsimple.c (check_table):
7816         Match "preedit-changed" to "preedit_changed" to be consistent
7817         to the spec.
7818
7819 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
7820
7821         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
7822         gc->clip_region == NULL>
7823
7824 2000-11-30  Tor Lillqvist  <tml@iki.fi>
7825
7826         Changes by Hans Breuer:
7827         
7828         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
7829         Dont't use negative width and height as max_hints. This fixes
7830         Owen's recent testgtk changes for win32.
7831
7832         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
7833         gdk_win32_hdc_release): These are exported and may be called with
7834         other drawable types than our GdkDrawableImplWin32 (?).
7835
7836         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
7837         so always #define USE_BACKING_STORE.
7838
7839         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
7840         of printf for debugging output.
7841
7842         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
7843         
7844         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
7845
7846         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
7847         declaration.
7848
7849         * gtk/gtktexttypes.h: Ditto.
7850
7851         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
7852         (GDK_VoidSymbol) also if in case of arg check failure.
7853
7854         * gtk/gtkimcontextsimple.c
7855         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
7856         position to the pointer, but to the variable it points to.
7857
7858         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
7859
7860         * gtk/gtk.def: Updates.
7861
7862 2000-11-29  Elliot Lee  <sopwith@redhat.com>
7863
7864         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
7865         GTK_TYPE_TREE_MODEL.
7866
7867 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7868
7869         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
7870         Set the size of the font from the description.
7871         (gdk_text_width): Gross hack that calculates the width
7872         of text by text_length * size/2. This is necessary because
7873         GtkLabel does some ugly gtk_string_width call to calculate
7874         an good size.
7875         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
7876
7877 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
7878
7879         * docs/tutorial/gtk-tut.sgml: DND updates
7880
7881 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7882
7883         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
7884         If you pass width or height == 0 to gdk_window_clear_area they
7885         should be calculated from the window size.
7886
7887 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7888
7889         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
7890         a grab, but no grab-cursor, use the cursor from the grabbed
7891         window. (gdk_fb_window_send_crossing_events): Send normal
7892         enter/leave notifications if grab and owner_events == TRUE.
7893
7894 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7895
7896         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7897         Do implicit button grabs, even if the window doesn't
7898         want the event.
7899         (gdk_fb_window_send_crossing_events): If there is a
7900         grab, only the grabbed window gets normal enter/leave
7901         notifications. On ungrab go from grabbed window to current.
7902         Don't send any notification to b when propagating from c -> b.
7903         If setting a grab on window, don't set prev_window.
7904         (handle_mouse_input): Send enter/leave events to the window the
7905         mouse is over, not the grabbed one.
7906         
7907 2000-11-28  Elliot Lee  <sopwith@redhat.com>
7908
7909         * gdk/gdkregion-generic.c: Zap warning.
7910         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
7911         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
7912
7913 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
7914
7915         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
7916         The cursor should be hidden if it is part of either the
7917         source or destination region. Not only if it is in both.
7918         (gdk_window_set_transient_for): Silence warnings.
7919
7920 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7921
7922         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
7923         The default mode in X is Pie Arcs, therefore that is
7924         what Gtk+ uses.
7925
7926 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7927
7928         * gdk/linux-fb/gdkinput-ps2.c:
7929         Implement correct EnterNotify/LeaveNotify:
7930         (gdk_fb_window_send_crossing_events): New function that sends
7931         all GdkCrossingEvents from the last mouse-window to the specified
7932         destination.
7933         (gdk_fb_window_visibility_crossing): Removed function.
7934         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
7935         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
7936         instead of gdk_window_get_pointer() for better readability.
7937
7938         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
7939         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
7940
7941         * gdk/linux-fb/gdkprivate-fb.h:
7942         removed gdk_fb_window_visibility_crossing, added
7943         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
7944
7945         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
7946         New function that finds the least common ancestor of two windows.
7947         (gdk_window_show, gdk_window_hide):
7948         Use gdk_fb_window_send_crossing_events.
7949         (gdk_fb_window_move_resize): Send configure events to toplevel
7950         windows. Use gdk_fb_window_send_crossing_events.
7951
7952 2000-11-27  Havoc Pennington  <hp@redhat.com>
7953
7954         * gtk/gtkprivate.h (enum): Remove a trailing comma
7955
7956 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
7957
7958         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
7959         the "changed" callback of the adjustment.  We need to redraw the
7960         spin button's arrows when the adjustment's range changes.
7961         (adjustment_changed_cb): Draw the arrows.
7962         (gtk_spin_button_value_changed): Draw the arrows.
7963
7964 2000-11-23  Alexander Larsson  <alexl@redhat.com>
7965
7966         * gdk/linux-fb/gdkselection-fb.c:
7967         Initial selection implementation.
7968
7969         * gtk/gtkselection.c:
7970         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
7971         requestor in gtk_selection_request.
7972         
7973         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
7974         Added gdk_selection_property atom.
7975
7976         * gdk/linux-fb/gdkprivate-fb.h:
7977         Export _gdk_selection_window_destroyed.
7978         Removed mask_off_x/y from GdkCursorPrivateFB.
7979         Removed hbearing, added top, left to PangoFBGlyphInfo.
7980
7981         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7982         Call _gdk_selection_window_destroyed
7983         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
7984         the root window has been created.
7985         (static_dx_hack, static_dy_hack, compare_draw_rects,
7986         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
7987         in region. They are already sorted. Instead just traverse them in
7988         reverse if draw_direction < 0.
7989         
7990         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7991         Double-clicks must be sent after the normal button_press.
7992         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
7993         
7994         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
7995         Pass _gdk_fb_screen_gc instead of NULL.
7996
7997         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
7998         Initialize gdk_selection_property.
7999         (gdk_event_make): Remove unused code.
8000
8001         * gdk/linux-fb/gdkcursor-fb.c:
8002         Make the pixmap for the cursor the same size as the mask. Also remove
8003         the mask_off_x/y fields in GdkCursorPrivateFB and combine
8004         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
8005         Now the whole cursor is visible.
8006
8007         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8008         Fix bug where xdest+height instead of ydest+height was used
8009         to calculate if the source and dest overlapped. This fixes the
8010         redraw bug when the main window in testgtk was scrolled when
8011         partially covered by a tall window.
8012         Copy rectangles in region in order depending on draw_direction.
8013         Also moved the draw_direction flipping of start_y and end_y into
8014         the gc functions, as this might not be what all of them want.
8015         (gdk_fb_draw_lines): Support dashed lines.
8016         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
8017         so that the text is positioned correctly (was 1 pixel high).
8018
8019         gdk/linux-fb/gdkgc-fb.c:
8020         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
8021         all lines were drawn a pixel to short. Also checked the default of
8022         the rest of the values, and they're the same as X now.
8023
8024         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
8025         Clean up pixel positioning of the glyphs. Just use bgy->top and
8026         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
8027         to all divisions to get correct rounding behaviour.
8028
8029         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
8030         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
8031         Moved start_y/end_y flip into draw_drawable implementations.
8032         Flip also x rendering when draw_direction < 0.
8033         Remove unneccesary multiply with draw_direction.
8034
8035 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
8036
8037         * docs/tutorial/gtk-tut.sgml:
8038           - get rid of gtk_toggle_button_toggled FUD
8039           - start DND section - needs work - based on:
8040                 http://wolfpack.twu.net/docs/gtkdnd/
8041
8042 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8043
8044         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8045         Correct calculation of font metrics. Now GtkEntrys have sane
8046         size.
8047
8048 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8049
8050         * gdk/gdktypes.h:
8051         Add new type GdkSpan
8052         
8053         * docs/reference/gdk/gdk-sections.txt,
8054         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
8055         gdk/gdkregion.h:
8056         Implement and document gdk_region_spans_intersect_foreach.
8057
8058         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
8059         Add new file gdkrender-fb.c which contains all core
8060         rendering code.
8061         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
8062         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
8063         (optimized rectangle fillers).
8064
8065         * gdk/linux-fb/gdkdrawable-fb2.c:
8066         Move all rendering code to gdkrender-fb.c.
8067         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
8068         Use the new span intersection functions in gdk_fb_fill_spans.
8069         gdk_fb_draw_rectangle() clips filled rectangles and calls
8070         gc->fill_rectangle with the result.
8071         gdk_fb_fill_spans() gets extra argument "sorted".
8072
8073         * gdk/linux-fb/gdkevents-fb.c:
8074         Remove unused includes and defines.
8075         New function gdk_fb_get_time() to get correct time for events.
8076
8077         * gdk/linux-fb/gdkinput-ps2.c:
8078         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
8079         Make sure to set the time of all events.
8080
8081         * gdk/linux-fb/gdkmain-fb.c:
8082         Use gdk_fb_get_time ().
8083
8084         * gdk/linux-fb/gdkprivate-fb.h:
8085         New virtual GC calls: fill_span & fill_rectangle.
8086         Export gdk_fb_get_time().
8087         gdk_fb_fill_spans() gets extra argument "sorted".
8088
8089         * gdk/linux-fb/mi*.c:
8090         Use GdkSpan instead of GdkRectangle.
8091         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
8092         from XFree 4 source)
8093         
8094 2000-11-22    <jrb@redhat.com>
8095
8096         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
8097         reversing the order in an if statement will do.  Doing so managed
8098         to make the treemodelsort half work.  Other half will follow after
8099         I get the insert function fully fixed.
8100
8101 2000-11-21  Elliot Lee  <sopwith@redhat.com>
8102         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
8103         more than 2 bits. Besides, I need to implement an evil hack. :)
8104
8105 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
8106
8107         * docs/tutorial/gtk-tut.sgml: minor corrections
8108
8109 2000-11-20  Jonathan Blandford <jrb@redhat.com>
8110         * gtk/gtktreemodelsort.h: Add convertion functions to let you
8111           convert to and from relative path's and iters.
8112
8113         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
8114           testing sorting functions a bit better.  Currently broken -- will
8115           fix in morning.
8116
8117 2000-11-20  Havoc Pennington  <hp@redhat.com>
8118
8119         * gtk/gtkwidget.c: Documented a bunch of functions in here
8120         (gtk_widget_realize): Warn if you try to realize
8121         a widget with no parent that isn't a toplevel
8122         (gtk_widget_intersect): return a gboolean
8123
8124 2000-11-20  Havoc Pennington  <hp@redhat.com>
8125
8126         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
8127         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
8128         scrolling to be implemented in GDK to finish. Also, right now
8129         we just size_allocate all children on every layout change,
8130         which is pretty lame. Test commented out of testtext.c, 
8131         until it works better.
8132
8133 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
8134
8135         * gdk/linux-fb/gdkdrawable-fb2.c:
8136         Removed unused arguments from gdk_fb_drawable_get_pixel().
8137
8138         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
8139         Renamed fidur specific mouse packet data in MouseDevice to
8140         generic. Used it in ps2 mouse handling code to avoid blocking
8141         reads.
8142
8143 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
8144
8145         * demos/gtk-demo/main.c: Changed to have the list become
8146         non-italic when the demo window is destroyed through an external
8147         event (like a close button).  Doing so found three bugs in the
8148         widget.
8149
8150         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
8151
8152         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
8153         we actually set the cell.
8154
8155         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
8156
8157         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
8158         free a leaked path.  Thanks memprof.
8159
8160 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
8161
8162         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
8163         off-by-one error when destroying allocated segments
8164         on failure. (Elliot)
8165
8166 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
8167
8168         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
8169         memleaks found by Evan Martin.
8170
8171 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
8172
8173         * Released 1.3.2
8174         
8175         * NEWS: Updates for 1.3.2
8176
8177 2000-11-17  Tor Lillqvist  <tml@iki.fi>
8178
8179         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
8180         but in general for window system specific events.
8181
8182         * gtk/gtk.def
8183         * gtk/makefile.mingw.in
8184         * gtk/makefile.msc.in: Update.
8185         
8186         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
8187
8188 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
8189
8190         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
8191         distribute gtk.immodules.
8192
8193         * gtk/Makefile.am (install-data-local): Don't install the
8194         gtk.immodules file created for the uninstalled modules;
8195         instead run gtk-query-immodules after install
8196
8197 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
8198
8199         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
8200         -rpath to the right install location.
8201
8202         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
8203         -export-dynamic.
8204
8205         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
8206         properly.
8207
8208 2000-11-15  Havoc Pennington  <hp@pobox.com>
8209
8210         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
8211         patch from Mikael Hermansson to temporarily stop blinking while
8212         the user is using the keyboard to type or navigate. 
8213
8214         Also, when blinking, stay on for longer than we stay off. Also,
8215         return from start_cursor_blink if !cursor_visible, to save
8216         checking that flag all over the place before we call
8217         start_cursor_blink.
8218
8219 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
8220
8221         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
8222         only contain a "fontset" line, which is now ignored.
8223
8224         * gtk/gtkentry.c (gtk_entry_button_release): Make 
8225         double-click-to-select-word work.
8226         
8227 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
8228
8229         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
8230         Don't move back one char when we are actually at the end of the 
8231         paragraph.
8232
8233 2000-11-15  Robert Brady  <robert@suse.co.uk>
8234
8235         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
8236         'o' < 'p'.
8237         
8238         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
8239         bind_textdomain_codeset.
8240
8241         (gtk_init_check): Make the warning about translating default:LTR
8242         sterner.
8243         
8244 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
8245
8246         * **/Makefile.am : remove unecessary rules for win32-specific
8247         config-substituted targets. If you want these rules, use
8248         --enable-maintainer-mode (called automatically by autogen.sh).
8249         Stops a lot of unneccessary make-time warnings.
8250
8251         * gtk/gtktext{layout,display}.c: Factor in total width as
8252         well as screen when figuring alignment for word-wrap as well as
8253         no wrap; this is necessary to handle lines that cannot be wrapped
8254         at all.
8255
8256 2000-11-15  Havoc Pennington  <hp@redhat.com>
8257
8258         * gtk/testtext.c: Implement essential color cycling feature
8259
8260 2000-11-15  Havoc Pennington  <hp@redhat.com>
8261
8262         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
8263         when we invalidate the main window.
8264
8265         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
8266         GtkTextView will now invalidate the side windows for us when text
8267         changes.
8268
8269 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
8270
8271         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
8272         unconditionally, since we may need to update the horizontal
8273         scrollbars even if the height didn't change.
8274
8275         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
8276         the extra attrs, since some of them affect size.
8277
8278         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
8279         x_offset correctly.
8280
8281 2000-11-15  Havoc Pennington  <hp@redhat.com>
8282
8283         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
8284         don't move the first line out into the margin, instead move the
8285         whole paragraph in order to make space for the first line within 
8286         the margin
8287
8288 2000-11-15  Havoc Pennington  <hp@redhat.com>
8289
8290         * gtk/gtktextview.c (changed_handler): offset redraw rect by
8291         xoffset in addition to yoffset, so horizontal scrolling doesn't
8292         break redraws
8293
8294 2000-11-15  Havoc Pennington  <hp@redhat.com>
8295
8296         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
8297         from the cursor
8298         (render_layout_line): fix reversed test that caused weird
8299         underlines to get drawn
8300
8301 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8302
8303         * gdk/linux-fb/gdkprivate-fb.h:
8304         Fix debug macros.
8305         
8306 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8307
8308         * gdk/linux-fb/gdkprivate-fb.h:
8309         Added virtual functions set_pixel, get_color,
8310         fill_span and draw_drawable to the GC.
8311         Added global _gdk_fb_screen_gc to use instead of
8312         NULL when drawing to the screen.
8313         Added _gdk_fb_gc_calc_state() prototype.
8314
8315         * gdk/linux-fb/gdkgc-fb.c:
8316         Call _gdk_fb_gc_calc_state() on any gc state change.
8317
8318         * gdk/linux-fb/gdkglobals-fb.c:
8319         Add _gdk_fb_screen_gc
8320                 
8321         * gdk/linux-fb/gdkdrawable-fb2.c:
8322         _gdk_fb_gc_calc_state() calculates best functions
8323         for the GC state and depth.
8324         Moved bpp specialized code to separate functions.
8325         Added optimized 24 bpp AA draw_drawable.
8326
8327         * gdk/linux-fb/gdkevents-fb.c:
8328         Silence gcc warning.
8329
8330         * gdk/linux-fb/gdkimage-fb.c:
8331         Use _gdk_fb_screen_gc
8332
8333         * gdk/linux-fb/gdkwindow-fb.c:
8334         Init and use _gdk_fb_screen_gc
8335
8336         * gdk/linux-fb/mitypes.h:
8337         Remove unused types.
8338
8339 2000-11-14  Havoc Pennington  <hp@pobox.com>
8340
8341         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
8342         to pixels
8343
8344 2000-11-14  Havoc Pennington  <hp@pobox.com>
8345
8346         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
8347
8348         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
8349         unknown char, no real reason we were using a variable. 
8350         Remove gtk_text_unknown_char variable. Fix all the text widget
8351         files accordingly.
8352
8353         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
8354         since the Unicode spec seems to prefer that character for our
8355         purposes.
8356
8357 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
8358
8359         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
8360         value of g_getenv() isn't freeable, so g_strdup it.
8361
8362         * modules/input/inuktitut.c: Inuktitut input method.
8363
8364         * modules/input/Makefile.am: Build this.
8365         
8366 2000-11-14  Elliot Lee  <sopwith@redhat.com>
8367
8368         * gtk/Makefile.am: Install gtk.immodules, needed for operation
8369         of gtk programs.
8370
8371 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
8372
8373         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
8374         reversed > that was causing Home to go to end of previous line.
8375
8376         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
8377         modified-keypresses (leave for bindings.)
8378
8379         * modules/input/Makefile.am: Remove useless -export-dynamic
8380         from module LDFLAGS.
8381
8382 2000-11-14  Havoc Pennington  <hp@redhat.com>
8383
8384         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
8385         higher.
8386
8387         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
8388         account. Also, render rise, underline, background, etc. for
8389         pixbufs as well as text. Also, draw underlines one pixel higher.
8390
8391         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
8392         PangoAttribute for the rise, so it gets drawn properly. Also,
8393         add the GtkTextAppearance attribute for pixbuf/widget segments
8394         as well; we should go ahead and have rise, underline, background,
8395         stipple work for those
8396
8397         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
8398         Pango
8399
8400 2000-11-15  Tor Lillqvist  <tml@iki.fi>
8401
8402         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
8403
8404         * gtk/gtk.def: Update.
8405
8406         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
8407         included.
8408         (gtk_rc_get_im_module_file): Use run-time installation directory
8409         on Win32.
8410
8411         * gdk/win32/rc/gdk.rc: Remove.
8412         * gdk/win32/rc/gdk.rc.in: New file.
8413         * gdk/win32/rc/Makefile.am: New file
8414         * gdk/win32/Makefile.am: Corresponding changes.
8415
8416         * gtk/gtk.rc: Remove.
8417         * gtk/gtk-win32.rc.in: New file.
8418         * gtk/Makefile.am: Corresponding changes.
8419
8420         * configure.in: Corresponding changes.
8421
8422         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
8423         has a built gtkcompat.h. Developers using CVS code on Win32 can
8424         hand-edit it from gtkcompat.h.in.
8425
8426         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
8427         gtkcompat.h from gtkcompat.h.win32.
8428
8429 2000-11-14  Havoc Pennington  <hp@redhat.com>
8430
8431         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
8432         to default to GDK_ACTION_MOVE if the drag is within a single
8433         widget. Defaults to GDK_ACTION_COPY between widgets.
8434
8435 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
8436
8437         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
8438
8439         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
8440
8441         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
8442         srcdir != builddir
8443
8444         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
8445
8446         * configure.in (GTK_VERSION): Up to 1.3.2
8447
8448         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
8449         gtkimcontextxim.h
8450
8451         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
8452         missing doc comment.
8453
8454 2000-11-14  Alexander Larsson  <alexl@redhat.com>
8455
8456         * modules/linux-fb/basic.c:
8457         Use the glib iconv wrappers.
8458
8459 2000-11-13  Havoc Pennington  <hp@pobox.com>
8460
8461         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
8462         still more bugs.
8463
8464         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
8465         scroll the GdkWindows before realization.
8466
8467 2000-11-13  Havoc Pennington  <hp@redhat.com>
8468
8469         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
8470         where GC didn't always get updated properly
8471
8472         * demos/gtk-demo/textview.c (create_tags): Use subattributes
8473         of fonts instead of setting the entire font
8474
8475         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
8476         setting entire font
8477
8478         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
8479
8480         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
8481         a bunch of individually-settable font attributes. You can still 
8482         use the "font" and "font_desc" args, they just set all the font
8483         attributes at once.
8484
8485 2000-11-13 Elliot Lee <sopwith@redhat.com>
8486
8487         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
8488
8489 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
8490
8491         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
8492         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
8493
8494         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
8495         work better.
8496
8497 2000-11-13  Havoc Pennington  <hp@redhat.com>
8498
8499         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
8500         the module file.
8501
8502         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
8503         dest->language
8504
8505         * gtk/testtext.c: Test pixels above/below/inside paragraphs
8506         settings
8507
8508         * gtk/gtktextview.c: Implement object args and setters/getters for
8509         all the aspects of the GtkTextAttributes that are not set from
8510         GtkWidget attributes. This is spacing, justification, margins,
8511         etc.
8512
8513         (gtk_text_view_set_arg)
8514         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
8515         args
8516         (gtk_text_view_class_init): Add args for justify, left_margin,
8517         right_margin, indent, and tabs
8518         
8519
8520         * gtk/gtktextlayout.c (set_para_values): fix to display indent
8521         attribute properly
8522
8523         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
8524         replace with indent attribute
8525
8526         * gtk/gtktextlayout.c (set_para_values): multiply indent by
8527         PANGO_SCALE
8528
8529         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
8530         rearranging code to do that
8531         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
8532         i.e. don't subtract the top_margin first, just to keep
8533         all margin-futzing in one place.
8534
8535         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
8536
8537         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
8538         special case of last line, Pango now handles this itself.
8539         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
8540         Y coordinate
8541         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
8542         (find_display_line_above): wasn't moving the byte index as it
8543         iterated over lines, so always returned byte 0. Also, port to use
8544         PangoLayoutIter.
8545         (find_display_line_below): same problem as
8546         find_display_line_above. Also, port to use PangoLayoutIter.
8547
8548 2000-11-13  Alexander Larsson  <alexl@redhat.com>
8549
8550         * gdk/linux-fb/*.[ch]:
8551         Massive reindent to gtk+ standard. My hands hurt.
8552
8553         * gdk/linux-fb/gdkcolor-fb.c:
8554         Move GdkColorPrivateFB from inherited to windowing_data
8555
8556         * gdk/linux-fb/gdkcursor-fb.c:
8557         _gdk_cursor_new_from_pixmap made static
8558
8559         * gdk/linux-fb/gdkdnd-fb.c:
8560         GdkDragContextPrivate moved to windowing_data
8561
8562         * gdk/linux-fb/gdkdrawable-fb2.c:
8563         Removed endian.h, use glib endianness macros instead
8564         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
8565         and GDK_DRAWABLE_IMPL_FBDATA
8566
8567         * gdk/linux-fb/gdkfont-fb.c:
8568         Add empty gdk_font_load(). Needed for linking of Gtk+.
8569
8570         * gdk/linux-fb/gdkimage-fb.c:
8571         Removed endian.h, use glib endianness macros instead
8572         Moved GdkImagePrivateFB to windowing_data
8573         gdk_image_new_bitmap didn't always allocate enough
8574         memory.
8575
8576         * gdk/linux-fb/gdkinput-ps2.c:
8577         Added semi-working support for MS serial mice.
8578
8579         * gdk/linux-fb/gdkprivate-fb.h:
8580         s/GdkWindowPrivate/GdkWindowObject/
8581         Removed GdkWindowPrivate typedef
8582         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
8583         Removed GDK_DRAWABLE_P
8584         Move GdkColorPrivateFB from inherited to windowing_data
8585         Moved GdkImagePrivateFB to windowing_data
8586
8587         * gdk/linux-fb/gdkvisual-fb.c:
8588         Removed some unused debug code.
8589
8590         * gdk/linux-fb/gdkwindow-fb.c:
8591         Use stock cursors instead of including X headers.
8592         s/GdkWindowPrivate/GdkWindowObject/
8593
8594         * gdk/linux-fb/mitypes.h:
8595         Removed unused types.
8596
8597         * modules/linux-fb/basic.c:
8598         Use the pango fribidi wrappers.
8599
8600 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8601
8602         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
8603         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
8604         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
8605         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
8606         GEqualFunc where applicable.
8607         
8608         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
8609         pango_font_description_equal as changed in pango.
8610         
8611         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
8612
8613         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
8614
8615         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
8616
8617         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
8618
8619         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
8620
8621         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
8622
8623         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
8624         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
8625
8626         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
8627         gtk_rc_styles_compare -> gtk_rc_styles_equal.
8628
8629 2000-11-12  Havoc Pennington  <hp@pobox.com>
8630
8631         * demos/gtk-demo/Makefile.am (democodedir): change demo install
8632         dir to datadir/gtk+-2.0/demo
8633
8634         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
8635         sorts of text widget and Pango font bugs. Urgh.
8636
8637         * demos/gtk-demo/Makefile.am (demos): Add textview.c
8638
8639         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
8640         tree that you should double click to see the demo. Fix 
8641         types of variables to reflect changed return values from 
8642         GtkTreeStore and GtkTreeViewColumn constructors.
8643
8644         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
8645         newly-created buffer to prepare for GObject semantics
8646
8647         * gtk/testtext.c: don't leak the buffer with GObject semantics
8648
8649         * gtk/testtextbuffer.c: ditto
8650         
8651 2000-11-12  Havoc Pennington  <hp@pobox.com>
8652
8653         Rename this testgtk to gtk-demo to avoid confusion, and 
8654         install it so people can use it as a supplement to 
8655         the documentation.
8656         
8657         * demos/gtk-demo: Moved from demos/testgtk
8658
8659         * demos/testgtk: Removed
8660
8661         * configure.in: make Makefile in gtk-demo
8662         
8663         * demos/gtk-demo/Makefile.am: Install sample source to 
8664         datadir/gtk-demo (maybe there's a better place?), and 
8665         rename the binary to gtk-demo
8666         
8667         * demos/gtk-demo/main.c (load_file): Load installed sample
8668         source if source isn't found in pwd.
8669
8670 2000-11-09  Havoc Pennington  <hp@pobox.com>
8671
8672         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
8673         argument to set the char displayed when visibility == FALSE
8674         (gtk_entry_create_layout): If !entry->visible, replace 
8675         all chars with the "invisible char"
8676
8677         * gtk/testgtk.c: Test the invisible_char deal
8678         
8679 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
8680
8681         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
8682         can't get a native font in the right encoding.
8683
8684 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
8685
8686         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
8687         respectively.
8688
8689 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
8690
8691         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
8692         Fix warning when moving between paragraphs.
8693
8694         * gtk/gtkentry.[ch]: Change move => move_cursor, 
8695         delete => delete_from_cursor, insert => insert_at_cursor
8696
8697 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
8698
8699         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
8700
8701         * modules/input/imthai-broken.c: A Thai input method for use if
8702         Thai keys are really generating Latin1 keysyms.
8703
8704         * modules/input/Makefile.am: Build these.
8705
8706 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
8707
8708         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
8709         g_filename_{to,from}_utf8 now takes an extra parameter.
8710
8711         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
8712         strftime into UTF-8.
8713
8714         (column_from_x, gtk_calendar_paint_day_names): Support RTL
8715         calendars.
8716
8717         (gtk_calendar_paint_day_names): Draw day names in the right 
8718         place.
8719         
8720 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
8721
8722         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
8723         problem with using result of g_get_charset() backwards -
8724         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
8725
8726         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
8727         negative min_width/height and max_width/height to
8728         mean "requisition"; this allows setting a window
8729         to be user-resizable in only one direction easily.
8730
8731         * gtk/testgtk.c (create_main_window): Remove hard-coded
8732         usize - set a default size in the vertical direction.
8733
8734 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
8735
8736         * gtk/gtkrange.c: Add some missing casts. Support 
8737         2 and 3 button clicks on the arrows to mean 
8738         "move by pages" and "jump to end". (Like gtkspinbutton)
8739
8740 2000-11-12 Hans Breuer <Hans@Breuer.Org>
8741
8742         * gdk/win32/makefile.msc : reflect build module changes
8743
8744         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
8745         from GdkPixmap*, cast implementation member instead.
8746
8747         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
8748         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
8749         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
8750         more Gdi functions return value checking. 
8751         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
8752         GdkImagePrivateWin32 *.
8753
8754         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
8755         menus useable again. Add #pragma message to keep reminded on this issue.
8756         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
8757         windows. This allows to enable backing store on Win32!
8758
8759         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
8760         in drawable is of impl type. Correct specific type checks appropriate.
8761  
8762         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
8763         GDK_WINDOW_DESTROYED before allocating new resources.
8764
8765         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
8766
8767         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
8768         (gdk_window_foreign_new) initialize parent handle.
8769         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
8770
8771         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
8772         Let the GDI invalidate the window on MoveWindow call to fix scrolling
8773         problems (e.g. main buttons in testgtk). 
8774
8775 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
8776
8777         * gtk/gtkentry.c (gtk_entry_key_press): Call 
8778         gtk_widget_activate for GDK_Return.
8779
8780         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
8781         of preedit cursor position.
8782
8783 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
8784
8785         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
8786         static.
8787
8788 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
8789
8790         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
8791         out support for multiple locales; that simple doesn't
8792         work reliably with current Xlib
8793
8794         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
8795         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
8796         Add support for positioning the cursor within the preedit string.
8797
8798 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
8799
8800         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
8801         at XIM input method module.
8802
8803         * gtk/gtktextview.c: Check for bindings after passing
8804         events to im context filter.
8805
8806 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
8807
8808         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
8809         empty attribute lists properly.
8810
8811 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
8812
8813         * gtk/queryimmodules.c (main): Return non-zero exit
8814         status if errors were encountered querying any
8815         modules.
8816
8817         * modules/input/Makefile.am (moduledir): remove
8818         leftover bin program target.
8819
8820         * docs/make-todo: Fix typo in error message.
8821
8822 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
8823
8824         * configure.in: Add modules/input/Makefile
8825
8826 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
8827
8828         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
8829         don't include gtkthemes.h.
8830
8831         * gtk/testgtk.c gtk/testtext.c: Set environment variables
8832         to point
8833
8834         * gtk/Makefile.am: Add new .c and .h files, build 
8835         gtk-query-immodules and use it to create a gtk.immodules
8836         file for use of test programs.
8837
8838         * gtk/gtkpreview.c: remove extra blank line.
8839
8840 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
8841
8842         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
8843         Add the ability to add extra tables beyond the default
8844         one, and also the ability to have compose sequences 
8845         that are prefixes of other compose sequences. 
8846
8847         * gtk/gtkimcontextsimple.c: Export a preedit string which
8848         consists of possible candidates for keystrokes that have
8849         been entered but not yet committed.
8850
8851         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
8852         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
8853
8854         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
8855         Add a function to add input-method switching menu items
8856         to a menu.
8857
8858         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
8859         when switching input methods.
8860
8861         * gtk/gtkimcontextsimple.[ch]: Change the format of
8862         the compose table to allow compose tables of different
8863         lengths / sequence.
8864
8865 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
8866
8867         * gtk/gtkimmodule.[ch]: Support routines for loading
8868         GtkIMContext implementations dynamically at runtime.
8869
8870         * modules/input/imcyrillic-translit.c: A sample input
8871         method (based on GtkIMContextSimple with an extra table),
8872         which demonstrates preedit strings and the module
8873         system for input modules
8874
8875         * gtk/queryimmodules.c: Program to query the available
8876         input modules and write the results into a file.
8877          
8878         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
8879         extra config options "im_module_file" (cache file for
8880         input method modules), and "im_module_path" - path
8881         to look for modules when generating cache file.
8882
8883         This doesn't scale.
8884
8885 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
8886
8887         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
8888         generic code from gtkthemes into a new abstraction
8889         GtkModule which has the logic for implementing
8890         a loadable module which implements a number of 
8891         GObject types.
8892
8893 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
8894
8895         * gtk/gtkeditable.[ch]: Convert GtkEditable from
8896         a class into an interface  
8897         
8898         * gtk/gtkoldeditable.[ch]: Move the old editable
8899         implementation into here, so legacy widgets can
8900         still rely on the implemenation. GtkOldEditable
8901         exports GtkEditable. Make selection handling
8902         code use new text conversion functions (and
8903         handle UTF-8 as a side-effect). Use GtkClipboard
8904         for CLIPBOARD.
8905
8906         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
8907         Adopt to match above changes.
8908
8909         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
8910         avoid GtkOldEditable implementation. Restructure
8911         to reduce number of places that modify state directly.
8912         Move to GtkBindingSet. Display the preedit string.
8913         Queue recomputation of PangoLayout and scroll position
8914         to improve effiency of doing complex changes naively.
8915         Add a menu with cut/copy/paste and input method selection.
8916
8917 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
8918
8919         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
8920         to set preedit string and attributes; display preedit string by
8921         inserting string and attributes at cursor when creating the
8922         GtkTextLineDisplay.
8923
8924         * gtk/gtktextlayout.c: Move all conversions between byte
8925         positions in PangoLayout and GtkTextIter into new functions
8926         line_display_iter_to_index/index_to_iter that properly
8927         handle the preedit string.
8928
8929         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
8930         it to return const char * (eventually will end up
8931         as GCONST char *, most likely.)
8932
8933         * gtk/gtktextview.[ch]: Handle the preedit string, call
8934         gtk_im_context_reset() as necessary, add a menu to switch
8935         input methods.
8936         
8937         * gtk/gtktextlayout.[ch]: Remove useless
8938         gtk_text_layout_get_log_attrs() function.
8939
8940 2000-11-11  Tor Lillqvist  <tml@iki.fi>
8941
8942         * gdk/gdk.def
8943         * gtk/gtk.def: Update.
8944
8945         * gdk/win32/*.c: Add last argument to g_type_register_static()
8946         calls.
8947
8948         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
8949
8950         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
8951         generated by older wheel mouse drivers. Get the correct y
8952         coordinate from WM_MOUSEWHEEL messages.
8953
8954         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
8955         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
8956         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
8957         Debugging functions.
8958
8959         * gdk/win32/gdkprivate-win32.h: Declare them.
8960
8961         * gdk/win32/gdkinput-win32.h: Add declaration for
8962         gdk_input_window_destroy().
8963
8964         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
8965
8966 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
8967
8968         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
8969         function to help handle keeping things in sync.
8970
8971 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
8972
8973         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
8974         BOXED marshallers.
8975
8976         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
8977         (gtk_list_store_class_init): use the new BOXED marshallers.
8978
8979         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
8980         new_with_values to new_with_types.
8981         (gtk_tree_store_get_column_type): add this.
8982         (gtk_tree_store_class_init): use the new BOXED marshallers.
8983
8984         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
8985         mirror some POINTER marshallers.
8986
8987 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
8988
8989         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
8990         allow more interesting iterators.  Also, made the lifecycle of
8991         iterators more explicit.
8992
8993         * gtk/gtktreemodelsort.[ch]: New model for sorting.
8994
8995         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
8996         types.
8997
8998 2000-11-09  Alexander Larsson  <alexl@redhat.com>
8999
9000         * demos/testgtk/menus.c:
9001         Changes to make the new testgtk compile after
9002         gtk_menu_append was removed.
9003
9004         * gdk/linux-fb/gdkdrawable-fb2.c
9005         (gdk_fb_get_depth, gdk_fb_get_visual,
9006         gdk_drawable_impl_fb_class_init): Implement
9007         these drawable functions. Now GtkImages work again.
9008
9009         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
9010
9011         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
9012         
9013         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
9014         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
9015         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
9016         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
9017
9018 2000-11-08  Havoc Pennington  <hp@pobox.com>
9019
9020         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
9021         visible_set args, don't know where these had gone, I thought they
9022         used to be there
9023
9024         * gtk/testtext.c: Add a menu item to apply invisibility tag;
9025         now we can test the feature and see that it's totally broken.
9026
9027 2000-11-08  Havoc Pennington  <hp@pobox.com>
9028
9029         Make DND copy pixbufs and tags when source and target share a 
9030         tag table.
9031         
9032         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
9033         in-process GTK_TEXT_BUFFER_CONTENTS target
9034         (gtk_text_view_drag_data_received): Paste from
9035         GTK_TEXT_BUFFER_CONTENTS if we receive it.
9036
9037 2000-11-08  Alexander Larsson  <alexl@redhat.com>
9038
9039         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
9040         API changes.
9041
9042         * gtk/gtkmenu.c: Add support for scrolling menus.
9043         Remove gtk_menu_append/prepend/insert, these have been moved to
9044         gtkcompat.h as #defines.
9045
9046         * gtk/gtkcompat.h.in:
9047         Add compatibility #defines for gtk_menu_append/prepend/insert
9048
9049         * gtk/gtkmenu.h: Add data needed for scrolling menus.
9050         GtkMenuPositionFunc gets an extra argument push_in.
9051         gtk_menu_append/prepend/insert removed.
9052         
9053         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
9054         positioning behaviour to fit to scrolling menus.
9055
9056         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
9057         into menuitem->submeny. That is wrong, and broke torn
9058         off submenus of torn off menus, since they were unrealized
9059         when the first menu was unrealized.
9060
9061         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
9062         gtk_menu_shell_select_item() since these need to be overridden in
9063         GtkMenu.
9064
9065         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
9066         positioning behaviour to fit to scrolling menus.
9067         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
9068         the current item so that it is prelighted when the menu pops up.
9069         This is a workaround to the fact that the menu doesn't get the
9070         initial enter event (due to grabs).
9071
9072         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
9073         s/gtk_menu_append/gtk_menu_shell_append/
9074
9075         * gtk/gtknotebook.c:
9076         s/gtk_menu_insert/gtk_menu_shell_insert/
9077
9078         * gtk/testgtk.c (create_menu, create_menus):
9079         Create the first menu with 50 items so that menu scrolling
9080         can be tested.
9081         
9082         
9083         Patch from Jonathan Blandford  <jrb@redhat.com>
9084
9085         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
9086         system to handle size requests.  First, we ask what the size of
9087         the toggle is.  Then, when allocating the size, we allocate the
9088         toggle_size first.  This way we can have multiple menu-item
9089         classes w/o needing a seperate class for each.
9090
9091         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
9092         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
9093
9094         * gtk/gtkcheckmenuitem.c
9095         (gtk_check_menu_item_toggle_size_request): New function to handle
9096         the toggle size-request.
9097
9098 2000-11-07  Havoc Pennington  <hp@redhat.com>
9099
9100         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
9101         Half-ass somewhat fix this function, so that scrolling to the
9102         insertion point works. Pango hacking is in the future to really
9103         fix it.
9104
9105         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
9106         length of data, no longer used.
9107
9108         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
9109         method contents in here, get rid of destroy method
9110         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
9111         that were backward. Remove debug spew.
9112         (cut_or_copy): Make the clipboard work with insert_range to
9113         preserve tags and pixbufs, not just the primary selection.
9114
9115 2000-11-07  Havoc Pennington  <hp@redhat.com>
9116
9117         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
9118         to gtk_text_mark_get_visible
9119
9120         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
9121         bug that was generating an invalid iterator
9122
9123         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
9124         ensure_char_offsets() in front of code placing the iter in an
9125         invalid state.
9126
9127         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
9128         make override_location arg const
9129         (paste): Replace the selection if we paste into the 
9130         current selection
9131
9132         * gtk/gtkselection.h: Remove "GtkSelectioData"
9133         (struct _GtkSelectionData): move the definition here.
9134
9135         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
9136         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
9137
9138         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
9139
9140         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
9141         (gtk_text_buffer_insert_range_interactive): implement
9142         (gtk_text_buffer_get_tags): Remove, replaced by
9143         gtk_text_iter_get_tags()
9144
9145         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
9146         limit parameter, to avoid infinite linear scan.
9147         (gtk_text_iter_backward_search): Add search limit
9148         (gtk_text_iter_forward_find_char): Add search limit
9149         (gtk_text_iter_backward_find_char): Add search limit
9150
9151 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
9152
9153         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9154         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
9155         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
9156         gdk/linux-fb/gdkwindow-fb.c:
9157         use g_object_new() instead of g_type_create_instance() which
9158         is a private function for fundamental type implementations.
9159
9160         * gdk/linux-fb/gdkinput-ps2.c:
9161         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
9162         instead just store the current modifier state. Add a (somewhat broken)
9163         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
9164         Rename exported function gdk_input_ps2_get_mouseinfo to
9165         gdk_input_get_mouseinfo.
9166
9167         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
9168         gdk/linux-fb/gdkwindow-fb.c:
9169         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
9170         
9171
9172 2000-11-02  Havoc Pennington  <hp@redhat.com>
9173
9174         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
9175         use stock buttons. Should be 100% source compatible, appropriate
9176         filesel fields now point to dialog->vbox and dialog->action_area.
9177         On the bizarre side, dialog->action_area and filesel->action_area
9178         are not the same widget.
9179         (gtk_file_selection_init): Put some padding around the selection
9180         entry, so it isn't touching the GtkDialog separator.    
9181
9182         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
9183         use stock buttons, etc. Should also be source compatible.
9184         Set the dialog default title in _init not _new().
9185         
9186         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
9187         Use stock buttons; don't put a button box inside the existing
9188         dialog button box. Don't bother with push/pop colormap anymore.
9189
9190         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
9191         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
9192         for message dialog, and necessary for the font selection and color
9193         selection with help and apply buttons.
9194         
9195         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
9196         to the created button widget. Set GTK_CAN_DEFAULT on the button.
9197         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
9198         between buttons, put less padding around the action area.
9199         (gtk_dialog_run): Exit on unmap rather than on destroy. 
9200         This will also exit the loop if the widget is hidden.
9201         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
9202         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
9203         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
9204         special-case delete event.
9205
9206         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
9207         formatting
9208         
9209 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
9210
9211         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
9212         button to temporarily disable position recording in the
9213         "saved position" test.
9214
9215 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
9216
9217         * gtk/gtkthemes.c: added compat code that temporarily implements
9218         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
9219         going to be revamped by owen's upcoming GtkModule patches, but
9220         untill then people want gtk to build, right? ;)
9221
9222 2000-11-04  Havoc Pennington  <hp@pobox.com>
9223
9224         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
9225         list
9226
9227         * docs/Changes-2.0.txt: Add note about
9228         gtk_container_get_toplevels()
9229
9230         * gtk/gtktextview.h: formatting
9231         
9232         * gtk/gtktextview.c: don't start descriptions with "Returns",
9233         confuses gtk-doc
9234
9235 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
9236
9237         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
9238         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
9239
9240 2000-11-03  Havoc Pennington  <hp@redhat.com>
9241
9242         * gtk/gtktexttagtable.c: Docs
9243         (gtk_text_tag_table_size): return a signed int
9244
9245         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
9246         (gtk_text_tag_event): make the event_object a GObject
9247
9248         * gtk/gtktextview.c: Write API docs for all functions.
9249
9250         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
9251         for gtk_text_view_get_window_type() called on one of the private
9252         windows.
9253
9254         * gtk/gtktextview.c: Instead of accessing text_view->buffer
9255         directly, call get_buffer() which demand-creates a default
9256         buffer. So gtk_text_view_new() can be used to create a view with a
9257         default buffer in it, if you just want an empty text box users can
9258         put data in. Useful for GUI builders also.
9259
9260 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
9261
9262         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
9263         the charset encodign portion MUST be in lowercase.
9264         * gtk/gtkrc.az: added file for Azeri language
9265
9266 2000-11-03  Havoc Pennington  <hp@redhat.com>
9267
9268         Get widgets working on the btree/buffer side. Display of them 
9269         still doesn't work.
9270         
9271         * gtk/gtktextview.c: start implementing child widget stuff
9272
9273         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
9274
9275         * gtk/gtktextlayout.c: handle embedded widgets
9276
9277         * gtk/gtktextdisplay.c: handle embedded widgets
9278
9279         * gtk/gtktextchild.c: Implement all the child anchor goo
9280
9281         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
9282         function
9283
9284         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
9285         (insert_pixbuf_or_widget_segment): abstract out common portions of 
9286         creating a child anchor or a pixbuf segment.
9287         (gtk_text_btree_create_child_anchor): new function
9288         (gtk_text_btree_unregister_child_anchor): new function
9289
9290         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
9291         allocate_child signal on GtkTextLayout
9292
9293         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
9294         values
9295         (gtk_text_iter_get_child_anchor): new function
9296
9297         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
9298         default handler for the changed signal, which calls
9299         gtk_text_buffer_set_modified(), instead of just always emitting
9300         changed then calling set_modified() manually. I guess this is
9301         maybe more flexible. It seems logical.
9302
9303 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
9304
9305         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
9306         now.
9307
9308         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
9309
9310 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
9311
9312         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
9313         been marked static.
9314
9315 2000-11-02  Havoc Pennington  <hp@redhat.com>
9316
9317         * gtk/testgtk.c (create_labels): had a test backward
9318
9319         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
9320         fields, so the dest GC ends up with the correct clip origin, 
9321         etc. Fixes a bug where colored labels didn't redraw 
9322         properly.
9323
9324 2000-11-02  Alexander Larsson  <alexl@redhat.com>
9325
9326         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9327         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
9328         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
9329         Add last argument to t_type_register_static call.
9330         
9331         * gdk/linux-fb/gdkdrawable-fb2.c:
9332         Add last argument to t_type_register_static call.
9333         export the get_image drawable virtual function.
9334
9335         * gdk/linux-fb/gdkimage-fb.c:
9336         Add last argument to t_type_register_static call.
9337         rename gtk_image_get to _gdk_fb_get_image and
9338         export it for use by gdkdrawable-fb2.
9339
9340         * gdk/linux-fb/gdkprivate-fb.h:
9341         export _gdk_fb_get_image.
9342
9343         * gdk/linux-fb/gdkselection-fb.c:
9344         Add new api call stubs.
9345
9346         * gtk/Makefile.am:
9347         Missing ( in linux-fb part.
9348
9349         * modules/linux-fb/Makefile.am:
9350         Must link with gdk_pixbuf or get unresolved symbol.
9351
9352 2000-11-01  Havoc Pennington  <hp@pobox.com>
9353
9354         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
9355         GTK_TYPE_TEXT_ITER and BOXED marshallers
9356
9357         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
9358
9359         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
9360         
9361         * gtk/gtk-boxed.defs: add GtkTextIter
9362
9363         * gtk/gtkmarshal.list: Add marshallers for text widget that 
9364         properly use OBJECT and BOXED
9365
9366 2000-11-01  Havoc Pennington  <hp@redhat.com>
9367
9368         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
9369
9370         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
9371         before returning it. 
9372         
9373 2000-11-01  Havoc Pennington  <hp@redhat.com>
9374
9375         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9376         Clip the rectangle to be rendered to the drawable, since
9377         get_from_drawable() requires a region within the drawable
9378
9379 2000-11-01  Havoc Pennington  <hp@redhat.com>
9380
9381         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
9382         from coordinates.
9383
9384 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
9385
9386         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
9387         it isn't NULL.
9388
9389 2000-11-01  Havoc Pennington  <hp@pobox.com>
9390
9391         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
9392         on a label
9393         (gtk_label_finalize): unref the attr list if any.
9394
9395         * gtk/testgtk.c (create_get_image): close test on second click
9396         (make_message_dialog): close dialog if it exists
9397
9398         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
9399
9400         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
9401         gdk-pixbuf
9402
9403         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
9404         from Pango markup format
9405         (gtk_label_set_markup_with_accel): ditto but with accelerator
9406         parsing
9407
9408         * gtk/gtkimage.c (gtk_image_expose): reformatting.
9409
9410         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
9411         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
9412         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
9413         call gdk_window_get_origin().
9414
9415         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9416         implement GDK_PIXBUF_ALPHA_FULL
9417         
9418 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
9419
9420         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
9421         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
9422         g_signal_handlers_disconnect_matched to block/unblock and disconnect
9423         multiple handlers respectively, instead of only treating the
9424         first handler found (bug reported by owen).
9425
9426 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
9427
9428         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
9429
9430         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
9431
9432         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
9433         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
9434         gtk/gtktreeviewcolumn.h: Fixed inline docs.
9435
9436         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
9437         widget.  Needs writing someday.
9438
9439         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
9440         the docs.
9441
9442 2000-10-30  Havoc Pennington  <hp@redhat.com>
9443
9444         * gtk/gtktextview.h, gtk/gtktextview.c:
9445         Rename delete_at_cursor delete_from_cursor, and 
9446         move to move_cursor.
9447
9448 2000-10-30  Havoc Pennington  <hp@redhat.com>
9449
9450         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
9451         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
9452         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
9453         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
9454         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
9455         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
9456         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
9457         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
9458         gtktexttypes.h, gtktextview.c, gtktextview.h:
9459
9460         Massive reindentation and reformatting. Arg alignment and comments
9461         still need fixing in various places.
9462
9463 2000-10-30  Havoc Pennington  <hp@redhat.com>
9464
9465         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
9466         to be named insert_at_cursor and delete_at_cursor so C++ can
9467         handle them.
9468
9469 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9470
9471         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
9472         to get a double directory separator in case the home directory
9473         ends with one. This would cause trouble especially on Windows,
9474         where the path will be confused with the syntax for an an UNC
9475         (network share) path \\server\share\path.
9476         (gtk_rc_add_initial_default_files): Ditto.
9477
9478 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
9479
9480         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
9481
9482         * gtk/gtktextview.c: Use correct marshallers.
9483
9484 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
9485
9486         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
9487         use new iter stuff, and added all the appropriate signals et al.
9488
9489         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
9490         code is internal to gtk only.
9491
9492 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9493
9494         * gtk/gtk.def
9495         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
9496         glib-genmarshal etc.
9497
9498 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
9499
9500         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
9501         parallel builds.
9502
9503 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
9504
9505         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
9506
9507 2000-10-27  Robert Brady  <robert@suse.co.uk>
9508
9509         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
9510         en_GB (British), ia (Interlingua).
9511
9512 2000-10-26  Havoc Pennington  <hp@redhat.com>
9513
9514         * gtk/gtktextiter.c (my_strrstr): fix constness warning
9515
9516         Fixed output of:
9517         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
9518         
9519         * gtk/gtktextsegment.c (char_segment_new): rename
9520         (_char_segment_new_from_two_strings): rename
9521         (_toggle_segment_new): rename
9522         
9523         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
9524         (make_clipboard_widget): make it static
9525         (text_get_func): static
9526         (text_clear_func): static
9527
9528         * gtk/gtkcolorsel.c (adjustment_changed): make this function
9529         static
9530         (hex_changed): make it static
9531         (hsv_changed): make it static
9532         (opacity_entry_changed): make it static
9533
9534         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
9535         (toggle_segment_check_func): rename with _gtk
9536
9537         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
9538         (_widget_segment_new): rename
9539         (_widget_segment_add): rename
9540         (_widget_segment_remove): rename
9541         (_widget_segment_ref): rename
9542         (_widget_segment_unref): rename
9543
9544         * gtk/gtktextmark.c (_mark_segment_new): Rename
9545         _gtk_mark_segment_new   
9546
9547 2000-10-26  Havoc Pennington  <hp@redhat.com>
9548
9549         * gtk/gtkmarshal.list: add new marshallers used by the text widget
9550         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9551         types
9552
9553         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
9554         marshaller types
9555
9556         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
9557         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
9558         license on these files.
9559
9560         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
9561         work.
9562
9563         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
9564         runtime random number different for each tree, instead of 
9565         a constant I made up.
9566
9567 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
9568
9569         * gtk/Makefile.am: buncha cleanups, kludged build sources
9570         dependencies with a Makefile: oldest-source-stamp dependancy
9571         for the moment. automake is really fighting us here, with
9572         intentionally not allowing user-defined rules or dependancies
9573         prior to it's -include $(DEP_FILES) statement. sucks rocks!
9574
9575         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
9576         to public headers. tehy have a comment stating that they are
9577         "semi-public" aren't included by gtk.h and if enums popup there,
9578         they can be /*< skip >*/-ed.
9579
9580         * gtk/gtktextlayout.h: 
9581         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
9582         added LGPL... <SIGH>
9583
9584 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
9585
9586         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
9587         GtkTreeIter.  Added iterators everywhere.
9588
9589         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
9590
9591         * gtk/gtktreeviewselection.c: Changed to use the iterators.
9592
9593         * gtk/gtktreestore.c: Changed to use the iterators.
9594
9595         * gtk/gtkliststore.c: Commented out the code.  Will convert to
9596         iterators tomorrow.
9597
9598         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
9599         iterators tomorrow.
9600
9601         * gtk/treestoretest.c: Changed to use iterators.
9602
9603         * demos/testgtk/main.c: Moved to use the new iterator system.
9604
9605 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
9606
9607         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
9608         localization misbehaviour.
9609
9610         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
9611         a useless type without copy/free.
9612
9613         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
9614         of GTK_TYPE_CTREE_NODE.
9615
9616 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
9617
9618         * gtk/gtksignal.c:
9619         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
9620         applicable.
9621
9622         * gtk/gtk-boxed.defs (GtkSelectionData): specify
9623         gtk_selection_data_copy and gtk_selection_data_free
9624         do GtkSelectionData work as params in signals.
9625
9626 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
9627
9628         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
9629         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
9630         couldn't they at least give it a non-standard name?
9631         
9632         * gtk/gtktextlayout.c: arg! yet another implementation of
9633         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
9634
9635         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
9636         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
9637         home. now i know this _is_ a conspiracy.
9638
9639         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
9640         ::state-changed.
9641
9642         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
9643         (gtk_accel_group_create_add): marshaller signature fixups.
9644
9645         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
9646         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
9647
9648         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
9649         anymore.
9650
9651 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
9652
9653         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
9654         due to the signal system changes, it wouldn't build currently. to
9655         be fixed soon.
9656
9657         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
9658
9659         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
9660         so it needs gtk_marshal_VOID__ENUM() instead of
9661         gtk_marshal_NONE__UINT().
9662
9663         * gdk/gdk*.c: adapted type registration functions.
9664
9665         * gtk/gtkbindings.c:
9666         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
9667         gone.
9668
9669         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
9670
9671         * gtk/gtkobject.c:
9672         (gtk_object_destroy):
9673         (gtk_object_shutdown): fixed recursion guards. basically we have to
9674         catch the case where any of GObject.shutdown() or gtk_object_destroy()
9675         is called during ::destroy, and avoid recursion there.
9676
9677         * gtk/gtktypeutils.c:
9678         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
9679         boxed_copy/boxed_free. this needs a more general solution based on a
9680         publically installed code-generator utility.
9681
9682         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
9683         glib's gobject has support for that now.
9684         define GtkSignalMarshaller in terms of GSignalCMarshaller.
9685
9686 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
9687
9688         * gtk/gtksignal.[hc]:
9689         * gtk/gtkmarshal.[hc]:
9690         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
9691         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
9692         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
9693         care of that.
9694
9695         * *.c: marshaller name fixups.
9696
9697         * gtk/gtkmarshal.list: added a comment briefing the format.
9698
9699 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
9700
9701         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
9702         compatibility macros here now. more specifically, most of
9703         the API is preserved (yes, _most_, nonwithstanding the
9704         following exceptions listed, the API is stil lHUGE ;)
9705         things that got removed completely:
9706         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
9707         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
9708         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
9709         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
9710         gtk_signal_remove_emission_hook().
9711         non-functional functions variants:
9712         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
9713         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
9714         not supported anymore.
9715         (gtk_signal_compat_matched): new internal function to aid
9716         implementation of the compatibility macros, it  provides
9717         functionality to block/unblock/disconnect handlers based
9718         on func/data.
9719
9720         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
9721
9722         * *.c: adaptions to new type registration API signatures.
9723
9724 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
9725
9726         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
9727
9728 2000-10-25  Robert Brady  <robert@suse.co.uk>
9729
9730         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
9731         gdk_property_delete): If window == NULL, assume the root window.
9732         (restoring the behaviour that was in 1.2).
9733         
9734         * gtk/testtext.c (save_buffer): Allow creation of new files when
9735         saving.
9736
9737         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
9738         calls to read().
9739
9740 2000-10-25  Tor Lillqvist  <tml@iki.fi>
9741
9742         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
9743
9744         * gdk/win32/gdkdrawable-win32.c
9745         * gdk/win32/gdkimage-win32.c
9746         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
9747         X11 backend.
9748
9749         * gdk/win32/gdkcc-win32.c
9750         * gdk/win32/gdkcolor-win32.c
9751         * gdk/win32/gdkfont-win32.c
9752         * gdk/win32/gdkinput-win32.c
9753         * gdk/win32/gdkmain-win32.c
9754         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
9755
9756 2000-10-24  Havoc Pennington  <hp@redhat.com>
9757
9758         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
9759         it a static function
9760
9761         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
9762         redraw text when a tag is applied to it.
9763
9764         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
9765         (gtk_text_tag_affects_nonsize_appearance): private functions to
9766         see if a tag requires various kinds of redraw/layout to be queued
9767         up.
9768
9769         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
9770
9771         * gtk/testtext.c (fill_example_buffer): Put the cursor 
9772         at the start of the buffer, so search works by default
9773
9774         * gtk/gtktextiter.c (lines_match): init match_start always
9775
9776         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
9777         function, get iter at a line + a byte index
9778
9779         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
9780         to set byte position within a line
9781         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
9782
9783 2000-10-23  Havoc Pennington  <hp@redhat.com>
9784
9785         * gtk/testtext.c: Re-enable the "find" dialog
9786
9787         * gtk/testgtk.c: Add test for gdk_drawable_get_image
9788         
9789         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
9790         the arguments to gdk_draw_drawable were in the wrong order
9791         (gdk_window_paint_init_bg): This function was ignoring the
9792         init_region, instead of clipping to it, so the entire backing
9793         pixmap was cleared on every begin_paint()
9794         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
9795         was in here again, the loop kept using the same GtkWindowPaint
9796         over and over.
9797         (gdk_window_begin_paint_region): Fix a bug where we had two
9798         x_offset instead of x_offset and y_offset
9799
9800         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
9801         before we get the image.
9802         (gdk_draw_drawable): get the composite before we draw the drawable.
9803         (gdk_drawable_real_get_composite_drawable): default
9804         get_composite_drawable implementation that returns the drawable 
9805         itself
9806
9807         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
9808         get_composite_drawable virtual function
9809
9810         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
9811         list-walking bug
9812
9813         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
9814         make this work if the source drawable is a GdkDrawableImplX11
9815         instead of a public drawable type. This is really broken; the
9816         problem is that GdkDrawable needs a virtual method get_xid(), but
9817         of course that doesn't work in practice. Enter RTTI.
9818
9819         Also, improve mismatched depth message.
9820
9821         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
9822         GdkPixmap
9823
9824         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
9825         install _gdk_x11_get_image as our implementation of get_image
9826         
9827         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
9828         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
9829
9830         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
9831         gdk_drawable_get_image
9832
9833         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
9834
9835         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
9836         get_image
9837
9838         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
9839         trailing semicolon after for loop
9840
9841 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
9842
9843         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
9844         where font_desc for widget's context lagged widget's font_desc by
9845         one step.
9846
9847 2000-10-22  Tor Lillqvist  <tml@iki.fi>
9848
9849         * gdk/win32/gdkgc-win32.c
9850         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
9851
9852         * gtk/makefile.mingw.in
9853         * gtk/gtk.def: Updates.
9854
9855         * gtk/testgtk.c: sleep() is called _sleep in MS's C
9856         library.
9857
9858         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
9859
9860         * gtk/makefile.msc: Remove
9861
9862         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
9863
9864         * gtk/Makefile.am: Add it.
9865
9866         * configure.in: Generate it.
9867
9868         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
9869         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
9870         something even if not implemented, to satisfy picky MSVC.
9871
9872         Patches by Hans Breuer:
9873         
9874         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
9875         SetBkMode() and SetTextAlign() before calling
9876         pango_win32_render().
9877
9878         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
9879         Set hcliprgn to NULL after destroying it.
9880         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
9881
9882         * gdk/win32/gdkgeometry-win32.c
9883         (_gdk_windowing_window_queue_antiexpose): More effective
9884         implementation.
9885
9886         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
9887         depth as default, not the visual's.
9888
9889         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
9890         against empty title.
9891
9892         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
9893         IMAGE_PRIVATE_DATA.
9894
9895         * gdk/win32/gdkimage-win32.c: Use it.
9896
9897 2000-10-22  Robert Brady  <robert@suse.co.uk>
9898
9899         * configure.in: Check for bind_textdomain_codeset
9900
9901         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
9902         present, make use of it.
9903
9904         Add a translatable string "default:LTR" which, if translated
9905         to "default:RTL", will cause the default direction to be
9906         Right-to-Left.
9907
9908         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
9909         direction if marked as flippable.
9910
9911         * gtk/gtkhscale.c: Mark widget as flippable.
9912         
9913 2000-10-04  Havoc Pennington  <hp@redhat.com>
9914
9915         * gtk/testgtk.c (create_buttons): create some stock buttons
9916         with the default accel group
9917         (create_image): test some new GtkImage features
9918         (make_message_dialog): test GtkMessageDialog
9919         (create_modal_window): fix someone's bizzarro indentation
9920
9921         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
9922         GTK_WIN_POS_CENTER_ON_PARENT. 
9923         Add "destroy with parent" setting, which means the window goes
9924         away with its transient parent.
9925         (gtk_window_get_default_accel_group): get the default accel group
9926         for the window.
9927         (gtk_window_set_destroy_with_parent): set/unset destroy with
9928         parent flag
9929         (gtk_window_read_rcfiles): invalidate icon set caches
9930         after reloading rcfiles 
9931
9932         * gtk/gtkenums.h (GtkWindowPosition): add
9933         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
9934         on its parent window when the dialog is mapped for the first time.
9935
9936         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
9937         a simple message dialog class
9938         
9939         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
9940         handler to emit response signal, and maybe later it would
9941         honor a hide_on_delete flag - though that isn't there yet.
9942         Set border width on the vbox to 2, so we get some padding.      
9943         Use a button box for the action area.
9944         (gtk_dialog_key_press): synthesize a delete event if Esc
9945         is pressed and the GtkWidget key press handler didn't 
9946         handle the escape key.
9947         (gtk_dialog_new_with_buttons): new function creates a dialog
9948         with some default buttons in it.
9949         (gtk_dialog_add_action_widget): add an activatable widget
9950         as a button in the dialog - you can also add a non-activatable
9951         widget by accessing the action area directly.
9952         (gtk_dialog_add_button): add a simple button - stock ID or 
9953         label - to the action area
9954         (gtk_dialog_response): emit response signal
9955         (gtk_dialog_run): block waiting for the dialog, return 
9956         the response. Override normal delete_event behavior, so that 
9957         delete_event does nothing inside gtk_dialog_run().
9958
9959         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
9960         emitted when an action widget is clicked or the dialog gets
9961         delete_event
9962
9963         * gtk/gtk.h: add gtkmessagedialog.h
9964
9965         * gtk/Makefile.am: add gtkmessagedialog.[hc]
9966
9967 2000-10-18  Havoc Pennington  <hp@redhat.com>
9968
9969         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
9970         where any number of empty lines would get skipped
9971
9972         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
9973         edge.
9974
9975         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
9976         warning about invalid iterators (explain more thoroughly)
9977         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
9978
9979         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
9980         big
9981
9982         * demos/*.c: Add error handling
9983
9984         * gtk/gtktextbuffer.c: don't modify const iterators
9985
9986         * gtk/gdk-pixbuf-loader.c: Add full error handling here
9987
9988         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
9989         on file load
9990
9991         * gtk/gtkiconfactory.c: Update to reflect addition of error
9992         handling to gdk-pixbuf loaders
9993
9994 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
9995
9996         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
9997         move to new modularized testgtk.
9998
9999 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
10000
10001         * gtk/gtktreeview.c: Draw the arrows correctly.
10002
10003         * gtk/gtktreemodel.c: Added user docs.
10004
10005         * gtk/gtk.h: remove gtktreedatalist.h.
10006
10007         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
10008         parent when generating my type.
10009
10010         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
10011         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
10012
10013 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10014
10015         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
10016         GtkTreeModel from object to interface.
10017
10018 2000-10-16  Havoc Pennington  <hp@redhat.com>
10019
10020         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
10021         compilation
10022
10023 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10024
10025         * gtk/gtktreeselection.c: Add API documentation to all public
10026         functions.
10027
10028         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
10029         functions.
10030
10031 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
10032
10033         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
10034         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
10035         docs to all public functions.
10036
10037         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
10038         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
10039         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
10040         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
10041         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
10042         issue.
10043
10044 2000-10-14  Robert Brady  <robert@suse.co.uk>
10045
10046         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
10047
10048 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
10049
10050         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
10051         values other then G_TYPE_STRING.
10052         * gtk/gtktreeselection.c: Minor commenting updates.
10053         * gtk/gtktreeview.c: Format updates.
10054
10055 2000-10-09  Tor Lillqvist  <tml@iki.fi>
10056
10057         * README.win32: Update.
10058
10059         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
10060         lines that had been deleted by mistake (?).
10061
10062         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
10063         also the case fg==white and bg==black (but still not randomly
10064         coloured cursors). Thanks to Wolfgang Sourdeau.
10065
10066         * gdk/win32/*.c: Silence gcc -Wall.
10067
10068         * gtk/gtk.def: Add missing entry points.
10069
10070         Fixes by Hans Breuer:
10071
10072         * gdk/makefile.msc
10073         * gdk/win32/makefile.msc: Update.
10074
10075         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
10076         some MSVC thing, presumably), cause breakpoint on failures. Add
10077         GDK_NOR case. Call g_log_set_always_fatal.
10078
10079         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
10080         should be pased by reference.
10081         
10082         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
10083         
10084         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
10085
10086         * gdk/win32/gdkevents-win32.c
10087         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
10088
10089         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
10090         implementation object.
10091
10092         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
10093         not just windows.
10094         
10095         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
10096         Use the wrapper object.
10097         
10098 2000-10-06  Havoc Pennington  <hp@redhat.com>
10099
10100         * Makefile.am (SRC_SUBDIRS): contrib subdir
10101
10102         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
10103         so it can be used in Xlib version
10104
10105         * demos/testpixbuf.c (update_timeout): error checking from 1.0
10106         tree
10107
10108         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
10109         change from 1.0 tree that returns first frame of animation
10110         if the loaded file is an animation.
10111
10112         * contrib: add new directory to hold stuff that comes with GTK+
10113         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
10114         
10115         * configure.in: add contrib/*
10116
10117 2000-10-05  Havoc Pennington  <hp@redhat.com>
10118
10119         * demos/testpixbuf-save.c: add pixbuf save test
10120
10121         * demos/Makefile.am: add testpixbuf-save.c
10122
10123 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
10124
10125         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
10126         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
10127         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
10128         * gtk/gtktreeselection.[ch]: Replaced
10129         "node_selected"/"node_unselected" signal with "selection_changed"
10130         signal.
10131
10132 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10133
10134         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
10135         tree widget.
10136
10137 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10138
10139         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
10140         drawing.
10141
10142 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
10143
10144         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
10145         Move list pointer forwards before removing item from
10146         list. (Crash reported by Salmaso Raffaele)
10147
10148         * gdk/gdkwindow.h: Remove spurious trailing ,
10149
10150         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
10151         dependencies on uninstalled libraries, sorry folks.
10152
10153 2000-10-04  Havoc Pennington  <hp@redhat.com>
10154
10155         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
10156         gtk/gtkiconfactory.c: Fix copyrights    
10157
10158         * demos/testpixbuf.c: add inline pixbuf test
10159         
10160 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
10161
10162         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
10163         Add gdk_window_iconify.
10164
10165         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
10166         (gdk_window_set_geometry_hints): Add win_gravity
10167         to geometry structure.
10168
10169         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
10170         Implement _NET_WM_PING.
10171
10172         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
10173         Set _NET_WM_PID on the client leader.
10174
10175         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
10176         Handle UTF-8 better.
10177
10178         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
10179         UTF-8 better, set _NET_WM_NAME as well. Only set
10180         icon name if it hasn't previously been explicitely 
10181         set.
10182
10183 2000-10-03  Havoc Pennington  <hp@redhat.com>
10184
10185         * gtk/testtextbuffer.c: clean up trailing whitespace,
10186         add extensive tests for tag toggle iteration.
10187         
10188         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
10189         distance
10190
10191         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10192         optimize case where the tag root is on level 1
10193         (gtk_text_line_previous_could_contain_tag): attempt to implement
10194         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
10195         functionality
10196
10197         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
10198         Implement this, though not very efficiently.
10199
10200         * gtk/gtktextiterprivate.h: reformat
10201
10202         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
10203         iterator
10204
10205         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
10206         this to properly revalidate the iterators.
10207
10208         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
10209         properly at the end of the line (and therefore on empty lines)
10210
10211         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
10212         maybe we should return a value...
10213
10214 2000-10-03  Tor Lillqvist  <tml@iki.fi>
10215
10216         * config.h.win32: Guard definition of alloca(). glib.h now handles
10217         that.
10218
10219         * gdk/gdk.def
10220         * gtk/gtk.def: Add new entry points.
10221
10222         Changes just to make GTK+ build without errors on Win32. No hope
10223         of it working in its current state, though...:
10224         
10225         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
10226         some functions from the X11 backend, just to make GTK+ build.
10227
10228         * gdk/makefile.mingw.in
10229         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
10230         number. Add new object files.
10231
10232         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
10233         GetMessageTime to get timestamp (where on X11 uses
10234         gdk_x11_get_server_time()).
10235
10236 2000-10-02  Havoc Pennington  <hp@pobox.com>
10237
10238         * gtk/gtktextview.c: text_window_* weren't static and should have
10239         been.
10240         Start work on child widgets; not yet complete, syncing to 
10241         office computer.
10242
10243         * gtk/gtktextchild.h: change this to contain a public interface,
10244         starting work on child interfaces.
10245         * gtk/gtktextchildprivate.h: move private interfaces here
10246
10247         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
10248
10249         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
10250         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
10251         gtk/gtktextmark.c: copyright notices
10252
10253         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
10254         internal functions      
10255
10256         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
10257         internal function
10258
10259         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
10260         Reformatting    
10261
10262 2000-09-30  Havoc Pennington  <hp@pobox.com>
10263
10264         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
10265         NULL start/end pointers
10266
10267         * gtk/gtktextbuffer.c: Write some docs
10268         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
10269         NULL, so you can just check whether there's a selection.        
10270
10271         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
10272         cleanup_line or segments_changed ourselves, it gets done 
10273         in unlink_segment
10274
10275         * gtk/gtktextmark.h:
10276         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
10277         
10278         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
10279
10280         * gtk/gtktextmark.c: delete some more old Tk cruft
10281
10282         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
10283         mark before removing it, so we can emit MARK_DELETED with a valid
10284         pointer.
10285         (gtk_text_buffer_mark_set): hold ref across signal emission
10286
10287         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
10288         whining about attempts to delete special marks
10289
10290         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
10291         underscore, since it's internal.
10292
10293         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
10294         now implemented in terms of iterators in gtktextiter.h
10295
10296         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
10297         New function, destructively sets contents of buffer. Also 
10298         a convenient way to clear the buffer by setting text to ""
10299
10300         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
10301         multiline string literal
10302
10303         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
10304         text changes.
10305
10306         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
10307         is not dereferenceable
10308         (gtk_text_iter_forward_lines): fix return value
10309
10310 2000-09-29  Havoc Pennington  <hp@redhat.com>
10311
10312         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
10313
10314         * gtk/gtktextview.c: Implement drag thresholding; change functions 
10315         that set border window size to have nicer name
10316         (gtk_text_view_mark_set_handler):  Fix this to have the 
10317         right signature.
10318
10319         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
10320
10321         * gtk/testtext.c: Update with API changes, put line numbers on 
10322         both sides.
10323         
10324         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
10325         with this
10326
10327         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
10328         pixbuf; delete a big block of #if 0 Tk code
10329
10330         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
10331         insert_pixmap with insert_pixbuf
10332
10333 2000-09-29  Martin Baulig  <baulig@suse.de>
10334
10335         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
10336         confusion with the GdkPixbuf of the GNOME 1.x platform.
10337
10338 2000-09-29  Havoc Pennington  <hp@pobox.com>
10339
10340         * gtk/gtktextview.c: Implement the side windows.
10341
10342         * gtk/testtext.c: Implement simple line numbering in the 
10343         left side window; seems to make scrolling sloooow. Oops.
10344         Also, cursor blink is for some reason causing redraws
10345         of the line numbers. Should investigate...
10346
10347 2000-09-28  Havoc Pennington  <hp@redhat.com>
10348
10349         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
10350         scrolling child windows, and draw focus rectangle properly.
10351         
10352         (gtk_text_view_buffer_to_window_coords):
10353         Coordinate transformation to deal with all these freaking windows
10354         and offsets
10355         (gtk_text_view_window_to_buffer_coords): transform the other way
10356
10357         * gtk/testtext.c (create_buffer): Update to match Pango API change
10358
10359         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
10360         anonymous tags
10361         (foreach_unref): don't emit remove signal from finalize, just
10362         set tag's parent to NULL
10363
10364 2000-09-26  Havoc Pennington  <hp@redhat.com>
10365
10366         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
10367         Fix some warnings       
10368
10369 2000-09-26  Havoc Pennington  <hp@redhat.com>
10370
10371         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
10372         headers into the private header list
10373
10374         * Makefile.am (pkgconfig_DATA): install pkg-config files
10375
10376         * configure.in: add pkg-config files
10377
10378         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
10379
10380         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
10381         outstanding icon caches on theme change.
10382
10383         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
10384         important types:
10385
10386         (GtkIconSource): Specification for creating a pixbuf 
10387         appropriate for a direction/state/size triplet from 
10388         a source pixbuf or filename
10389
10390         (GtkIconSet): List of GtkIconSource objects that are used to
10391         create the "same" icon (e.g. an OK button icon), and cache for
10392         rendered icons
10393
10394         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
10395         up the icon set for a given stock ID.  GTK maintains a stack of
10396         GtkIconFactory to search, and applications or libraries can add
10397         additional icon factories on top of the stack
10398         
10399         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
10400         the set of GtkIconSource specified for a given stock ID into 
10401         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
10402         RcStyle, under the specified stock ID.
10403
10404         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
10405         render_icon used to derive a GdkPixbuf from a GtkIconSource.
10406         This allows people to theme how prelight, insensitive, etc. are
10407         done.
10408
10409         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
10410         icon factories for a style, and return the resulting 
10411         icon set if any.
10412
10413         (gtk_style_render_icon): Render an icon using the render_icon 
10414         method in the GtkStyleClass.
10415
10416         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
10417         Use the style for a given widget to look up a stock ID, get the
10418         icon set, and render an icon using the render_icon method 
10419         of the style
10420
10421         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
10422         (contains information about a stock item), the built-in stock item
10423         IDs, and functions to add/lookup stock items.
10424
10425         * gtk/stock-icons/*: Stock icons that come with GTK
10426
10427         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
10428         a button based on a GtkStockItem
10429         (gtk_button_new_accel): Takes a uline string and accel group, and
10430         installs the accelerator.
10431
10432         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
10433         image-display widget.
10434
10435 2000-09-25  Havoc Pennington  <hp@redhat.com>
10436
10437         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
10438
10439         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
10440         Fix a bug when removing node data, we didn't properly 
10441         re-splice the linked list after removing the data.
10442
10443         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
10444         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
10445
10446         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
10447
10448         * gtk/gtktextlayout.c (set_para_values): Set tab array 
10449         for the layout from the GtkTextTag.
10450
10451         * gtk/gtktexttypes.h: delete tab and search cruft, 
10452         remove g_convert() in favor of GLib version
10453
10454         * gtk/gtktexttypes.c: remove tab implementation from here,
10455         move to Pango
10456
10457         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
10458         tab stuff using new PangoTabArray from Pango
10459
10460         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
10461         unused border_width stuff
10462
10463 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
10464
10465         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
10466         glib) and now useless utf_to_latin1() latin1_to_utf()
10467
10468         * gtk/gtktextview.[ch]: Change ::move_insert and
10469         ::delete_text action signals to ::move and ::delete;
10470         create the signals with the right enumeration type,
10471         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
10472         C-v bindings, change Home, End to move to beginning/end
10473         of line, Add C-Home C-End to move to beginning/end
10474         of buffer. Change ::cut_text to ::cut_clipboard, etc;
10475         combine ::scroll_text into ::move; use new GtkSelectionData
10476         functions to simplify DND text handling.
10477         
10478         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
10479         deletion enumerations here, rename enumeration values to 
10480         be consistently plural.
10481
10482         * gtk/gtktextbuffer.c: Use new clipboard interfaces
10483         for cut/copy/paste and primary selection.
10484
10485         * gtk/gtktextbuffer.[ch]: Remove excess time and
10486         'interactive' arguments from cut/copy/paste;
10487         rename cut to cut_clipboard, etc; remove
10488         gtk_text_buffer_get_clipboard_contents().
10489
10490         * gtk/gtktextlayout.[ch]: Add 
10491         gtk_text_layout_move_iter_to_line_end() to move the iter to 
10492         line ends.
10493
10494         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
10495         Functions to set or get a UTF-8 string on the selection
10496         data.
10497
10498         * gtk/gtkclipboard.[ch]: New, simplified selection handling
10499         interfaces.
10500
10501         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
10502         created widgets - one of these is useless if we don't.
10503
10504         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
10505         a public function clear all targets registered for the
10506         widget.
10507
10508         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
10509         Never call gtk_widget_realize() - that was just asking
10510         for bizarre side-effects.
10511
10512         * gtk/gtkselection.c (gtk_selection_owner_set): Call
10513         gdk_selection_owner_set even if the widget is the
10514         same so that we reliably update the timestamp on
10515         the server.
10516
10517         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
10518         gdk_x11_get_server_time() function.
10519         
10520         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
10521         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
10522         Add some tricky filtering on serial numbers for
10523         selection clear events to fix up long-standard
10524         race condition FIXME's in gtkselection.c.
10525
10526         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
10527         routines to convert from utf8 to compound text or
10528         STRING and from a text property to UTF-8.
10529
10530         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
10531         a convenience function gdk_get_current_event_time().
10532
10533         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
10534         and free selection_data->data properly
10535
10536 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
10537
10538         * gtk/gtkthemes.c: Remove some unecessary includes.
10539
10540 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
10541
10542         * gtk/gtktextdisplay.c
10543         * gtk/gtktextlayout.c
10544         * gtk/gtktexttag.c
10545         * gtk/gtktexttag.h
10546         * gtk/testtext.c: Change the overstrike property to strikethrough,
10547         to closer match pango.
10548
10549 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
10550
10551         * gtk/gtktextview.c: Fix up visibility so that focus,
10552         cursor_visible and blink interact properly.  Reenable cursor blink
10553         which had been roughly disabled. Make blink and focus
10554         properly per-view.
10555
10556         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
10557         Add a flag for whether to display insertion cursor and
10558         a function to set the flag.
10559
10560         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
10561         get_line_y() to get_line_yrange(), to be a bit more generally
10562         useful.
10563
10564 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
10565
10566         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
10567           do stop_navigating_submenu, to clear last timeout properly.
10568           Also in gtk_menu_motion_notify move ignore_enter above
10569           the conditional to make it always happen as suggested by Owen
10570
10571 2000-09-07  Tor Lillqvist  <tml@iki.fi>
10572
10573         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
10574
10575         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
10576         w32api headers.
10577
10578         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
10579         declarations.
10580
10581         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
10582         (gdk_win32_get_colormap): A line had been deleted by mistake.
10583
10584         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
10585         (gdk_event_translate): Handle more virtual keycodes to be able to
10586         generate GDK events for Control-comma, Control-period, etc.
10587
10588         * gtk/gtk.def: Add some missing entry points.
10589
10590 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
10591
10592         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
10593         Doc comment fixing. (Mostly non-matching parameter names.)
10594
10595         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
10596         comments a little to avoid looking like a doc comment.
10597
10598         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
10599         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
10600         conversions be changed to GError?)
10601
10602         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
10603         Move private #defines into .c file.
10604
10605         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
10606         order of argument addition, remove duplicates.
10607
10608         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
10609         parent class is FrameClass, not BinClass.
10610
10611         * gtk/gtk.h: Add gtkinvisible, which was missing.
10612         (It's occasionalyl useful for client apps, if seldom.)
10613
10614         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
10615         #define.
10616
10617 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
10618
10619         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
10620         coordinates when creating window, instead of GDK-space
10621         coordinates. (Avoid BadValue on too large windows.)
10622
10623 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10624
10625         * configure.in (use_mmx_asm): Remove conftest* after use along the
10626         lines of AC_TRY_COMPILE.        
10627         
10628         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
10629         of g_dirname, which is deprecated.
10630         (gtk_rc_parse_any): Removed calls to
10631         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
10632
10633         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
10634         Removed calls to g_hash_table_{freeze,thaw}, as they are
10635         deprecated now.
10636
10637         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
10638         instead of g_basename.
10639         
10640 2000-09-04 Elliot Lee <sopwith@redhat.com>
10641         
10642         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
10643         ANSI warning.
10644
10645 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
10646
10647         * gtk/gtkwidget.h:  Add some documenting comments about 
10648           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
10649           just as owen said on irc.
10650
10651         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
10652           set HAS_DEFAULT.  Only set it if there isn't another window
10653           holding it (a focus window which RECEIVES_DEFAULT) and only unset
10654           it if the widget is not the focused window with RECEIVES_DEFAULT.
10655           This fixes weird double default bugs in dialogs which has things
10656           call gtk_window_set_default at times.
10657
10658 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
10659
10660         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
10661         Nils Barth and David Santiago to improve submenu
10662         navigation. The patch does this by creating a triangular
10663         region from the point where the pointer leaves the
10664         menu to the submenu.  While the pointer is in
10665         that region and a timeout has not expired, events 
10666         that would cause the active submenu to change are
10667         ignored.
10668
10669 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
10670
10671         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
10672         moving a toplevel window immediately after sizing it would
10673         result in it being sized back to the old size since 
10674         impl->width, impl->height aren't updated until we hear
10675         back from the server. There is still a (longstanding) bug
10676         here that gdk_window_get_size() will give the wrong size
10677         until we do hear back.
10678
10679 2000-08-31  Havoc Pennington  <hp@redhat.com>
10680
10681         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
10682         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
10683         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
10684         Rename GtkTextStyleValues to GtkTextAttributes
10685
10686 2000-08-31  Havoc Pennington  <hp@pobox.com>
10687
10688         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
10689         for rapid testing whether an iterator is the end iterator
10690         (gtk_text_btree_new): init end line cache
10691         (gtk_text_line_is_last): use fast cached line to 
10692         see if we're the last line.
10693         (get_last_line): use cached line here too, should 
10694         speed up some random unrelated code.
10695         
10696 2000-08-30  Havoc Pennington  <hp@pobox.com>
10697
10698         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
10699         signals.
10700
10701         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
10702         delete_text signals. This allows the signals to be used for
10703         implementing undo.
10704
10705         * gtk/gtktextbuffer.c: Change signal handler signatures; 
10706         provide "interactive" argument when emitting insert_text or
10707         delete_text signal.
10708         
10709 2000-08-30  Havoc Pennington  <hp@pobox.com>
10710
10711         * gtk/gtktextbuffer.c: Docs
10712
10713 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
10714
10715         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
10716         from switch statements, since Tor removed the enumeration
10717         value.
10718         
10719         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
10720         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
10721
10722 2000-08-29 Elliot Lee <sopwith@redhat.com>
10723         * */*.h: Use G_GNUC_CONST.
10724
10725 2000-08-27  Havoc Pennington  <hp@pobox.com>
10726
10727         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
10728         minor indentation fixes, inserted some FIXME about stuff I
10729         realized was broken while documenting it.
10730         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
10731         GTK convention  
10732
10733 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
10734
10735         * gtk/testgtk.c (create_styles): Fix double free of
10736         font desc.
10737
10738 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10739
10740         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
10741         
10742         * gtk/testgtk.c (create_styles): Add a test for modifying
10743         the style through gtk_widget_modify_*.
10744
10745         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
10746         a function to get the current modifier style.
10747
10748         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
10749         of the passed in GtkRcStyle instead of ref'ing it.
10750
10751         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
10752
10753 2000-08-20  Tor Lillqvist  <tml@iki.fi>
10754
10755         * gdk/gdkimage.h
10756         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
10757         shared memory image+pixmap GdkImage type, or
10758         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
10759         I am dropping that.
10760
10761         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
10762         actually call gtk_init_abi_check(), passing also
10763         sizeof(GtkWindow). Ditto for gtk_init_check(). 
10764
10765         * gtk/gtk.def
10766         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
10767         New functions, used to check that the GTK+-using code has been
10768         compiled using the correct compiler and switches. In particular,
10769         with gcc one has to use the -fnative-struct switch as GTK+ is
10770         compiled with that.
10771
10772 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
10773
10774         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
10775         ->prev fields when merging lists. (Found simultaneously
10776         by Pawel Salek and Jakub Jelinek)
10777
10778 2000-08-12  Tor Lillqvist  <tml@iki.fi>
10779
10780         * gdk/gdk.def
10781         * gtk/gtk.def: Add missing entries.
10782
10783         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
10784         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
10785
10786         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
10787         function. Dummy implementation at this point.
10788
10789         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
10790         rules. Undefine GTK_COMPILATION when compiling the test programs.
10791         
10792         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
10793
10794 2000-08-11  Tor Lillqvist  <tml@iki.fi>
10795
10796         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
10797         to convert back and forth from UTF-8 and the "system" (or "current
10798         locale") charset when necessary. Indentation/spacing cleanup.
10799
10800 2000-08-10  Havoc Pennington  <hp@redhat.com>
10801
10802         * Makefile.am (snapshot): Change the format of the snapshot
10803         version to match glib
10804
10805         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
10806         from EXTRA_DIST since it doesn't seem to exist
10807
10808 2000-08-10  Tor Lillqvist  <tml@iki.fi>
10809
10810         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
10811         version of the directory name (not the UTF-8 one) when building
10812         the path name to stat().
10813
10814 2000-08-03  Elliot Lee  <sopwith@redhat.com>
10815
10816         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
10817         PANGO_ATTR_SHAPE set.
10818
10819 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
10820
10821         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
10822         Peter Osterlund to simplify the code while keeping the
10823         functionality the same.
10824
10825 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
10826
10827         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
10828         is_viewable() test further inside the function, since removing the 
10829         window from the redraw list without clearing ->update_area
10830         was also very broken.
10831
10832 2000-08-02  Tor Lillqvist  <tml@iki.fi>
10833
10834         * configure.in: Check for <unistd.h>.
10835
10836 2000-08-01  Martin Baulig  <baulig@suse.de>
10837
10838         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
10839         to display the message that this is a development version of GTK+.
10840
10841 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
10842
10843         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
10844         was depending on widget->allocation instead of the width of text_area,
10845         which was incorrect for subclasses like GtkSpinButton.
10846
10847         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
10848         with width == 1 tests that should be width == -1.
10849
10850 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
10851
10852         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
10853         (broken, Elliot, every single window blank on X) custom code with call
10854         to gdk_window_is_viewable() which a) prevents code duplicate and
10855         b) works. 
10856
10857 2000-07-31  Elliot Lee  <sopwith@redhat.com>
10858
10859         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
10860         to get the GDK_PARENT_ROOT() macro to work.
10861         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
10862         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
10863         of, windows that aren't shown.
10864         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
10865         pointer grab stuff.
10866
10867 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
10868
10869         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
10870           s/gtk_main_iteration/g_main_iteration/
10871
10872           Did this already in change:
10873                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
10874           don't know how it got reverted.
10875
10876 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
10877
10878         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
10879         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
10880
10881         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
10882         not gdk_pixbuf.
10883
10884 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
10885
10886         * configure.in,po/{sp,sr}.po: Added Serbian files
10887
10888 2000-07-30  Tor Lillqvist  <tml@iki.fi>
10889
10890         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
10891
10892         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
10893         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
10894         GIOChannel implementation.
10895
10896         * gdk/win32/gdkinput.c
10897         * gdk/win32/gdkpango-win32.c: Update license name here, too.
10898
10899         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
10900         definition to match prototype.
10901
10902         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
10903
10904 2000-07-27  Elliot Lee  <sopwith@redhat.com>
10905
10906         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
10907         function, to allow handling image formats that cannot be detected
10908         by looking at content alone.
10909
10910 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
10911
10912         * docs/tutorial/*.gif *.jpg *.eps
10913           Update these to the same look-n-feel.
10914           Why does including images in DocBook suck so badly?
10915
10916 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
10917
10918         * gtk/gtktable.c: applied patch from Phil Thompson
10919         <phil@river-bank.demon.co.uk> that enables space settings for
10920         the last row/columns as well.
10921
10922 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
10923
10924         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
10925         updates the license headers to the GNU Lesser General Public License,
10926         as well as updating the copyright year to 2000.
10927
10928 2000-07-26  Robert Brady  <rwb197@zepler.org>
10929
10930         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
10931           and po/Makefile, was installing and looking for them under gtk20
10932           and gtk2 respectively.
10933
10934 2000-07-25  Havoc Pennington  <hp@redhat.com>
10935
10936         * gtk/testtext.c: Comment out some stuff that depends on the rest
10937         of my patches.
10938
10939 2000-07-25  Havoc Pennington  <hp@redhat.com>
10940
10941         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
10942         buffer
10943
10944 2000-07-25  Havoc Pennington  <hp@redhat.com>
10945
10946         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
10947         widget changes.
10948
10949         * gtk/gtktextview.h: To be consistent with usage of "line"
10950         throughout the API to mean "newline-terminated thingy", change
10951         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
10952         to MOVEMENT_LINE.
10953
10954         (GtkTextView): Add flags for default editability, and whether to
10955         show the cursor. Add functions to get/set that. Add 
10956
10957         (gtk_text_view_get_iter_location): new function
10958
10959         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
10960         gtktextlayout.h
10961         (g_convert): Add g_convert temporarily, will go in glib in a bit
10962         
10963         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
10964         GtkTextTagTableForeach instead of brokenly using GHFunc.
10965         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
10966
10967         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
10968         moved to public header.
10969
10970         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
10971         "invisible", since "elide" was a bad name.
10972         (gtk_text_tag_get_priority): Added
10973
10974         (GtkTextStyleValues): put this in public header, along with
10975         functions to use it.
10976
10977         * gtk/gtktextmarkprivate.h: Include more headers, since we no
10978         longer include gtktextbtree.h.
10979
10980         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
10981         gtk_text_mark_deleted
10982
10983         * gtk/gtktextlayout.h: Don't include the "really private" headers,
10984         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
10985         to make this possible. Now we only need to install
10986         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
10987         (However the Makefile.am isn't changed yet because of the
10988         logistics of merging gtk-hp-patches piecemeal)
10989
10990         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
10991         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
10992         gtk_text_iter_get_line is now used in the public API for a
10993         different purpose.
10994
10995         * gtk/gtktextiter.h: Clean up function names to be more
10996         consistent. Always call char offset "offset" and byte index
10997         "index". A "line" is always a line number. 
10998
10999         (gtk_text_iter_is_last): new function, more efficient than 
11000         the existing way to check
11001         (gtk_text_iter_is_first): new function, also more efficient
11002
11003         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
11004
11005         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
11006         gtk_text_iter_forward_char, etc.
11007
11008         (gtk_text_iter_forward_to_tag_toggle): Renamed from
11009         forward_find_tag_toggle, since this isn't a linear search
11010
11011         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
11012
11013         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
11014         New functions, search for a buffer substring.
11015
11016         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
11017         interactive and default editable (since we need to store that info
11018         until we receive the selection data).
11019
11020         Remove all the _at_char and at_line etc. versions of functions;
11021         only have iterator versions.
11022
11023         Add _interactive() versions of functions, that consider the
11024         editability of text. (FIXME add interactive flag to the 
11025         insert/delete signals per Darin's suggestion)
11026
11027         (gtk_text_buffer_get_tag_table): new function, demand-creates the
11028         tag table if necessary
11029
11030         Remove declaration of gtk_text_buffer_get_iter_from_string
11031
11032         (_gtk_text_buffer_get_btree): private/internal function, added.
11033         
11034
11035         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
11036         (gtk_text_line_is_last): new function
11037
11038 2000-07-25  Havoc Pennington  <hp@redhat.com>
11039
11040         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
11041         using GtkProgressBar. See Changes-2.0.txt for details.
11042
11043         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
11044         "pulse_step" which are the equivalent of
11045         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
11046         Implement new API.
11047         
11048         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
11049         (use_text_format) to mark whether text set on the progress bar is
11050         a format string. Deprecate entire GtkProgress interface.
11051
11052         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
11053         (gtk_progress_build_string): make this a no-op if use_text_format
11054         is FALSE
11055
11056         * docs/Changes-2.0.txt: Describe progress bar changes.
11057
11058 2000-07-25  Tor Lillqvist  <tml@iki.fi>
11059
11060         * Makefile.am: Include the build directory.
11061
11062         * configure.in: Generate build/Makefile, build/win32/Makefile,
11063         gdk/, gdk/win32/, and gtk/makefile.mingw.
11064
11065         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
11066         Add GETTEXT_PACKAGE.
11067         
11068         * gdk/gdk.def
11069         * gtk/gtk.def: Updates.
11070
11071         * gdk/gdkfont.h
11072         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
11073         need them any longer.
11074
11075         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
11076
11077         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
11078         PANGOWIN32_LIBS and gdk_pixbuf.
11079
11080         * gdk/win32: Compiles, but no doubt doesn't work at all.
11081
11082         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
11083
11084         * gdk/win32/gdkinput.c: New file, temporarily.
11085         
11086         * gdk/win32/gdkinput-win32.h: New file
11087
11088         * gdk/win32/gdkinputprivate.h: Remove.
11089
11090         * gdk/win32/gdkpango-win32.c: New file.
11091
11092         * gtk/makefile.mingw.in: New file
11093
11094         * gtk/makefile.cygwin: Removed
11095         
11096         * gtk/Makefile.am: Update accordingly.
11097
11098         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
11099         made externally visible.
11100
11101         * gtk/gtkmain.c: Use it.
11102         
11103         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
11104         is enough.
11105
11106         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
11107
11108 2000-07-24 Elliot Lee <sopwith@redhat.com>
11109         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
11110         individual backends already.
11111         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
11112         again. Yes, there really is a good reason for this, if you are using the gdkregion
11113         internals, and if you're not, why do you care?
11114         * gdk/gdkwindow.c: Fix inverted condition
11115         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
11116         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
11117         * gtk/gtkrange.c: Redraw trough when moving.
11118         * gtk/gtktypeutils.c: Fix warning by adding const cast.
11119         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
11120
11121 2000-07-23  Tor Lillqvist  <tml@iki.fi>
11122
11123         * configure.in: Check for mkstemp and sigsetjmp. Output
11124         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
11125
11126         More work on GDK for Win32. Still in an intermediate state.
11127
11128         * gdk/makefile.cygwin
11129         * gdk/win32/makefile.cygwin: Removed.
11130         
11131         * gdk/makefile.mingw.in
11132         * gdk/win32/makefile.mingw.in: New files.
11133
11134         * gdk/Makefile.am
11135         * gdk/win32/Makefile.am: Generate and distribute them.
11136
11137         * gdk/win32/gdkwindow-win32.h
11138         * gdk/win32/gdkdrawable-win32.h
11139         * gdk/win32/gdkpixmap-win32.h: New files.
11140
11141         * gdk/win32/gdkcolor-win32.c
11142         * gdk/win32/gdkcursor-win32.c
11143         * gdk/win32/gdkdrawable-win32.c
11144         * gdk/win32/gdkgc-win32.c
11145         * gdk/win32/gdkimage-win32.c
11146         * gdk/win32/gdkprivate-win32.h
11147         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
11148         Rename fields and variables called xcursor, xid, etc (these names
11149         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
11150
11151 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
11152
11153         * gtk/gtkentry.[ch]: Fix some problems with vertical
11154         alignment.
11155
11156         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
11157         char/byte confusion.
11158
11159 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
11160
11161         * gtk/gtktextview.c (changed_handler): Fix bug where
11162         redraw wasn't being done properly when height of
11163         dirty region changed.
11164
11165         * demos/Makefile.am: Remove various references to
11166         -lgmodule
11167
11168 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
11169
11170         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
11171         PangoAttrShape to reserve space for pixmaps, add 
11172         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
11173         in the display functions.
11174         
11175         * gtk/testgtk.c (create_layout): Set some more exotic
11176         scrolled window options
11177
11178         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
11179         Add function to set the shadow type of a window, to allow
11180         putting a shadow around widgets such as GtkLayout or GnomeCanvas
11181         which don't draw their own frame.
11182
11183 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
11184
11185         * docs/tutorial/package-db-tutorial.sh: New file for
11186           packaging DocBook format tutorial
11187
11188 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
11189
11190         * docs/tutorial/gtk-tut.sgml: Minor updates
11191
11192         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
11193
11194 2000-07-19  Tor Lillqvist  <tml@iki.fi>
11195
11196         * gtk/gtksignal.c: Fix C++ comment.
11197
11198         * gtk/gtkimmulticontext.c
11199         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
11200         don't return value from void functions.
11201
11202         * gtk/gtk.def: Add gtk_rc_style_unref.
11203
11204 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11205
11206         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
11207         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
11208         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
11209         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
11210         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
11211         gtk/gtktypeutils.h: Include files outside of the extern "C"
11212         block. Makes some C++ compiler happy. Reported by Denis Vakatov
11213         <vakatov@peony.nlm.nih.gov>.
11214
11215 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
11216
11217         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
11218           Completes first pass. Hurrah!
11219
11220 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
11221
11222         * docs/tutorial/gtk-tut.sgml: More clean ups.
11223
11224 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
11225
11226         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
11227         paint the background of the text area which was accidentally
11228         removed at some point.
11229
11230         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
11231           
11232          - Move most of the functionality from the theme vtable
11233            into GtkRcStyleClass and GtkStyleClass. The moved
11234            vtable functions were changed a bit in the move to
11235            work better in their new home.
11236
11237          - Get rid of the engine and engine_data fields from
11238            GtkRcStyle and GtkStyle; instead the theme
11239            engine derives theme-specific subclasses of GtkRcStyle
11240            and GtkStyle
11241
11242          - Add extra dlsym() found entry point to themes,
11243            theme_create_rc_style().
11244
11245         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
11246         in gtk_style_real_copy.
11247
11248         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
11249         to register a type associated with an engine. (The engine
11250         won't be unloaded as there is an instance of the type.)
11251
11252
11253 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
11254
11255         * docs/tutorial/gtk-tut.sgml: Clean ups.
11256
11257 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
11258
11259         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
11260           of cleaning up to do.
11261
11262 2000-07-15  Tor Lillqvist  <tml@iki.fi>
11263
11264         * gdk/testgdk.c: New file, quick hack to test backends for
11265         pixel-by-pixel correctness of the most simple graphic operations.
11266
11267 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
11268
11269         * Really release 1.3.1
11270         
11271         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
11272         include structure.
11273
11274 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
11275
11276         * Released 1.3.1
11277
11278 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
11279
11280         * gtk/gtktextlayout.c: use FALSE for size_only most
11281         of the time when calling gtk_text_layout_get_line_display()
11282         to avoid causing double reshapes when a redraw follows
11283         immediately after.
11284
11285 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
11286
11287         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
11288         appropriate region and gdk_window_process_updates() so trough
11289         updating doesn't lag behind the window being scrolled.
11290
11291         * gdk/gdkgc.c: Make parent_class pointer static.
11292          
11293 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
11294
11295         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
11296         include <string.h>.
11297          
11298         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
11299         cut-and-paste error in computing memory offset for 4 channels.
11300
11301 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
11302
11303         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
11304         gtk_rc_append_default_pixmap_path(), since it wasn't
11305         adding an interesting path and we don't have a meaningful
11306         default for this value.
11307
11308 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
11309
11310         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
11311         gtk-config to gtk-config-2.0 move gtk_.m4 to
11312         gtk-2.0.m4
11313
11314         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11315         gdk/Makefile.am demos/Makefile.am: Change 
11316         library names to libgtk-1.3.la, etc, so that we
11317         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
11318
11319         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11320         gdk/Makefile.am gdk/x11/Makfile.am
11321         Move include files into /usr/include/gtk-2.0, 
11322         /usr/lib/gtk-2.0/include/
11323          
11324         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
11325         gtk/gtkintl.h: Change package for gettext from 
11326         gtk+ to gtk20. Put hack in autogen.sh to modify
11327         po/Makefile.in.in after gettextize to make this
11328         possible.
11329
11330         * gtk+.spec: Some updates, not tested.
11331
11332         * gdk-pixbuf/Makefile.am: Move loaders into
11333         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
11334
11335         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
11336         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
11337         to THEMENAME/gtk-2.0/. Move engine directory  to
11338         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
11339         
11340 2000-07-12  Tor Lillqvist  <tml@iki.fi>
11341
11342         Win32 changes, still doesn't build though.
11343
11344         * gdk/makefile.cygwin
11345         * gdk/win32/makefile.cygwin
11346         * gtk/makefile.cygwin: Updates.
11347
11348         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
11349         default values for fg and bg pixel as X11 does (0 and 1), not
11350         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
11351         Use 0 for pen width by default (treated as 1 anyway later, but for
11352         apps that might check the value in the GdkGC).
11353         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
11354         interface to gdk_gc_predraw and _postdraw.
11355
11356         * gdk/win32/gdkwin32.h
11357         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
11358
11359         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
11360         extraneous semicolon.
11361
11362         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
11363
11364         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
11365         not the Win32 bitspixel value.
11366
11367         * gdk/win32/gdkcc-win32.c:
11368         * gdk/win32/gdkcolor-win32.c 
11369         * gdk/win32/gdkprivate-win32.h
11370         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
11371         GDK object structure.
11372
11373 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
11374
11375         * docs/tutorial/gtk_tut_12.es.sgml (name): 
11376         * docs/tutorial/gtk_tut_it.sgml (name): 
11377         * docs/tutorial/gtk_tut_fr.sgml (name): 
11378         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
11379         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
11380
11381 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
11382
11383         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
11384           small changes.
11385
11386 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
11387
11388         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
11389         a bug here, never been here and never fixed anything ;(
11390         (don't segfault if tree->root_tree is NULL, which happens prior
11391         to widget realization, but puke instead).
11392
11393 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
11394
11395         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
11396         add the necessary tokens.
11397
11398         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
11399         (gtk_rc_style_to_style): copy thicknesses.
11400         (gtk_rc_init_style): apply thicknesses.
11401         (gtk_rc_parse_style): parse xthickness and ythickness.
11402
11403         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
11404
11405         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
11406         (gdk_window_new): 
11407         (_gdk_windowing_window_init): 
11408         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
11409         (gdk_pixmap_create_from_data): 
11410         (gdk_bitmap_create_from_data): 
11411         (gdk_pixmap_new): 
11412         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11413         (gdk_image_new): 
11414         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
11415         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
11416         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
11417         (gdk_colormap_get_system): 
11418         (gdk_colormap_new): 
11419         * gdk/gdkwindow.c (gdk_window_init): 
11420         * gtk/gtkstyle.c (gtk_style_new):
11421         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
11422         * gdk/gdkpixmap.c (gdk_pixmap_init): 
11423         * gtk/gtkrc.c (gtk_rc_style_new):
11424         use g_object_new() instead of g_type_create_instance() which
11425         is a private function for fundamental type implementations.
11426
11427 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
11428
11429         * configure.in: Add check for db2html
11430
11431 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
11432
11433         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
11434         hack to set glib_debug_objects based on gtk_debug_flags.
11435
11436 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
11437
11438         * INSTALL.in: Update the Prerequisites section.
11439
11440         * Makefile.am demos/Makefile.am docs/Makefile.am
11441         docs/tutorial/Makefile.am gdk/x11/Makefile.am
11442         gdk/linux-fb/Makefile.am: Dist fixes
11443
11444 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
11445
11446         * NEWS: 10,000 foot view of 1.3.1 changes.
11447
11448 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
11449
11450         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
11451         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
11452         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
11453         gdk/x11/gdkmain-x11.c: 
11454
11455         Patch from George Lebl to add a GdkGrabStatus enumeration to use
11456         as a return value of gdk_*_grab(). Previously, we just
11457         returned the X11 values directly.
11458
11459 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
11460
11461         * gdk/x11/Makefile.am: Patch from George Lebl to 
11462         install all the headers in the right place.
11463
11464 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
11465
11466         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
11467           initial conversion to DocBook.
11468
11469 2000-07-04  Tor Lillqvist  <tml@iki.fi>
11470
11471         * README.win32: Improve a bit.
11472
11473         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
11474         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
11475         Alt+0nnn on the numpad (used to enter characters by numeric code
11476         from current DOS or ANSI codepage) working correctly, as in other
11477         Windows apps.
11478
11479         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
11480         same argument validity tests as in X11 version.
11481         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
11482
11483         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
11484         definitions in case missing from headers.
11485
11486         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
11487         destroy the window-specific cursor.
11488         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
11489         calling GetModuleHandle(NULL).
11490         (gdk_window_set_cursor): Reworked to always copy the passed cursor
11491         with CopyCursor before setting it as the window-specific
11492         cursor. It is OK for the caller to destroy the GdkCursor (and thus
11493         also its Windows cursor) after calling this function. Destroy any
11494         previous window-specific cursor.
11495
11496 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
11497
11498         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
11499         font charset is iso8859-1, not iso-8859-1.
11500
11501 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
11502
11503         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
11504         Use g_get_charset() instead of g_get_codeset().
11505
11506         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
11507         Comment out some strdup'ing functions to keep timj
11508         happy until we finish fighting this out.
11509
11510 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
11511
11512         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
11513         <= width or height.
11514
11515         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
11516         from 1.2 for parent/child states.
11517
11518         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
11519         of typos.
11520
11521         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
11522         event structures, replace with a generic axes field. Replace 
11523         deviceid/sourec with GdkDevice *device.
11524
11525         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
11526         to extract particular axis use value from event. (Also
11527         can be used for normal X/Y.)
11528
11529         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
11530         allow for arbitrary number of axes, namespace everything
11531         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
11532         everywhere.
11533
11534         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
11535         Get rid of the gdk_input_vtable setup if favor of simply
11536         defining the functions in gdkinput-none/gxi/xfree.c in
11537         a similar fashion to the way that the port structure is 
11538         done.
11539
11540         * gtk/gtkdnd.c: Fix fields of synthesized button press event
11541         for new event structures. 
11542
11543         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
11544         new device interfaces.
11545
11546 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
11547
11548         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
11549         set the initial text.
11550
11551         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
11552         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
11553         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
11554         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
11555
11556         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11557         pango_layout_set_font_description to simplify.
11558
11559 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
11560
11561         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11562         pango_layout_set_font_description to simplify.
11563
11564 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
11565
11566         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
11567         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
11568         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
11569
11570         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
11571         PANGO_PIXELS() macro.
11572
11573 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
11574
11575         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
11576         that returns a PangoContext owned by the widget and updated to
11577         match future changes in the widget. Also, make 
11578         gtk_widget_create_pango_layout() use this context. If we ever
11579         add a ::changed signal to PangoContext, this will make things
11580         much more convenient. 
11581
11582         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
11583         in the appropriate places instead of destroying the layouts and
11584         creating new ones.
11585
11586         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
11587         in a few strategic places.
11588
11589 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
11590
11591         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
11592         gtk_widget_size_request() on reparented child, if one. Otherwise,
11593         queue_resize() on the child never results in it getting size-requested
11594         at all.
11595
11596         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
11597         in option menus, so that (with luck) people won't copy it into
11598         their apps in the future.
11599
11600         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
11601         to gtk_option_menu_calc_size. This isn't perfect, but should fix
11602         a lot of problems with changing the size of the menu's menu
11603         items after adding it to the option menu.
11604
11605         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
11606
11607         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
11608         the text direction for a widget changes.
11609
11610         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
11611         ::direction_changed to get rid of various hacks.
11612
11613 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
11614
11615         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
11616         name.
11617
11618 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
11619
11620         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
11621         flag to the structure. Do not call XFreePixmap on pixmaps created
11622         by gdk_pixmap_foreign_new().
11623
11624 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
11625
11626         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
11627         value using GdkRGB functionality given GdkColormap and GdkColor.
11628         (name not final, waiting for inspiration.)
11629         
11630         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
11631         set the foreground/background of a GC using the GC's colormap
11632         and GdkRGB. (name not final, waiting for inspiration.)
11633
11634         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
11635         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
11636
11637         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
11638         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
11639         purely a function of the corresponding colormap. Make
11640         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
11641
11642         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
11643         gdk_pixbuf_*create_from_xpm_* in terms of
11644         gdk_pixbuf_new_from_xpm_data(), move into platform independent
11645         code.
11646
11647         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
11648         advantage of the new draw_rgb_32_image_dithalign.
11649
11650         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
11651
11652         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
11653         on each created GC.
11654
11655         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
11656
11657         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
11658         which we initialize from the drawable when the GC is created,
11659         if the drawable has a colormap.
11660
11661         * gdk/x11/gdkgc-x11.c: include string.h for memset.
11662
11663         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
11664
11665         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
11666
11667 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
11668
11669         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
11670         actually returning expose events, make sure to set
11671         the count field properly.
11672
11673         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
11674         accidentally reintroced bug which always cleared
11675         the graphics_exposures value. 
11676
11677 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
11678
11679         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
11680
11681 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
11682
11683         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
11684
11685 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
11686
11687         * docs/faq/gtk-faq.sgml: Start of Section 6.
11688
11689 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
11690
11691         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
11692         
11693         (Fixes problem with drawing childless frames. Pointed out
11694         by and a first patch from Anders)
11695         
11696         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
11697         compute a child_allocation, even if we don't have a child.
11698
11699         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
11700         Always chain to the parent's impl, even if we don't have a child.
11701
11702 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11703
11704         * gdk/gdkrgb.c: If possible, create only a single shm segment and
11705         use multiple parts of it instead of creating a bunch of separate
11706         segments, since the maximum number of segments per system is not
11707         large. (This might be worth backporting to GTK+-1.2.x if we make a
11708         new release )
11709
11710         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
11711         structure in preparation for per-colormap GdkRGB.
11712
11713         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
11714         to False when we get EINVAL from shmget so that the caller of
11715         gdk_image_new can retry with a smaller segment size.
11716
11717 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
11718
11719         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
11720
11721 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
11722
11723         * configure.in: make the current version number 1.3.1 (binary age 0,
11724         interface age 0).
11725         
11726         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
11727         gtkcompat.h is all we want.
11728
11729         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
11730         GLib primitive types. fixed g_type_register_fundamental() argument
11731         ordering.
11732
11733         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
11734         compiles.
11735
11736         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
11737         object code cleanup, comment trigraph fixes, etc...
11738
11739 2000-06-23  Havoc Pennington  <hp@redhat.com>
11740
11741         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
11742         instead of making up a bogus name for first_para_mark
11743
11744         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
11745         0 as a context ID
11746
11747 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
11748
11749         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
11750
11751 2000-06-21  Havoc Pennington  <hp@pobox.com>
11752
11753         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
11754         we didn't check window->bg_pixmap != GDK_NO_BG.
11755
11756         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
11757         gdk-pixbuf
11758
11759 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
11760
11761         * docs/faq/gtk-faq.sgm: Move file to here.
11762           TODO: Update Makfile.am 
11763
11764 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
11765
11766         * docs/gtk-faq.sgm: Add Section 2
11767
11768 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
11769
11770         * docs/gtk-faq.sgm: New file. Start of DocBook
11771           version of the FAQ.
11772
11773 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
11774
11775         * configure.in (GDK_PIXBUF_MAJOR): Define version
11776         numbers for GDK_PIXBUF_*, as they get substituted
11777         into a header file. Need to consider versioning
11778         for gdk-pixbuf more carefully later.
11779
11780 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
11781
11782         Work with srcdir != builddir.   
11783         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
11784         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
11785         * demos/testpixbuf.c: Likewise.
11786         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
11787         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
11788         <gdk/x11/gdkx.h>.
11789         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
11790         "gdk-pixbuf.h".
11791         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
11792
11793 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
11794
11795         * TODO.xml: Change 1.4 version numbers to 2.0.
11796
11797 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
11798
11799         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
11800         fixups to GTK+ standard.
11801
11802 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
11803
11804         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
11805         gdk-pixbuf.
11806
11807         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
11808         fixups for GObject.
11809
11810         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
11811         gdk-pixbuf with GDK dependencies moved into GDK.
11812         
11813         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
11814         move gdk-pixbuf-loader here until GObject has signals.
11815
11816         * demos/: New directory of demos. Move demos from
11817         gdk-pixbuf here.
11818
11819         * demos/pixbuf-init.c: Small bit of code to check for
11820         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
11821         set GDK_PIXBUF_MODULEDIR appropriately.
11822
11823         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
11824         define which no longer makes sense.
11825
11826 2000-06-21  Havoc Pennington  <hp@redhat.com>
11827
11828         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
11829         gtk_get_default_language
11830
11831         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
11832         new function to get the default language
11833
11834         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
11835         s/gtk_text_view_style_values/gtk_text_style_values/
11836
11837         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
11838         Add a "language" field to tags.
11839
11840         (gtk_text_tag_set_arg): Fix bug in setting
11841         "bg_full_height_set" tag.
11842
11843 2000-06-21  Havoc Pennington  <hp@redhat.com>
11844
11845         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
11846         in the interfaces
11847
11848         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
11849         stuff instead when possible.
11850
11851         * gtk/gtktexttypes.h: Delete some unused constants
11852
11853         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
11854         testtextbuffer.c: use glib instead of custom unicode routines
11855
11856 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
11857
11858         * docs/es/: Removed mistakenly added generated sgml
11859
11860         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
11861         Remove outdated info files.
11862
11863         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
11864         Moved tutorial files into subdir
11865
11866         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
11867         subdir.
11868
11869         * docs/man/gtk_button.pod: Remove. (contents will be
11870         integrated into gtk-reference button page.)
11871
11872         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
11873         docs/faq/Makefile.am: Adjust for new organization
11874
11875 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
11876
11877         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
11878         not $(MKINSTALLDIRS)
11879
11880 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
11881
11882         * gtk/testgtk.c (create_text): Finish the job Elliot started
11883         of removing font setting test for text widget. (Since text widget
11884         and GdkFont are not deprecated, and cause portability problems.)
11885
11886 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
11887
11888         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
11889         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
11890         Remove use of libunicode in favor of new GLib functions.
11891
11892         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
11893         nano-x, framebuffer. The X11 include is just a hack until we get
11894         the necessary functions in gdkcolor.h, so there is no reason to
11895         add other includes of platforms.
11896
11897         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
11898         window bigger than the screen change.
11899
11900         * gtk/testgtk.c: Revert some random changes from Elliot
11901         that had no particular point and were causing testgtkrc
11902         not to function correctly.
11903         
11904         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
11905         because GdkSegment and GdkRegionBox have the same fields,
11906         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
11907         results in clearer code.
11908
11909         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
11910         gdk_input_translate_coordinates): Fix missed GdkObjectification
11911
11912 2000-06-18  Elliot Lee  <sopwith@redhat.com>
11913
11914         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
11915         * gtk/gtk{plug,socket}.h: Missed commits from previous.
11916
11917 2000-06-20  Havoc Pennington  <hp@redhat.com>
11918
11919         * modules/linux-fb/Makefile.am: Make this compile
11920         without framebuffer enabled
11921
11922         * gdk/linux-fb/Makefile.am: Add conditional to not build
11923         framebuffer unless specified in configure
11924
11925         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
11926         the size of the target instead of source if -1 was passed for
11927         width/height
11928
11929         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
11930         width/height confusion.
11931
11932 2000-06-19  Havoc Pennington  <hp@redhat.com>
11933
11934         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
11935         GDK_DRAWABLE_XID. In the future, we probably want to make it
11936         faster with G_DISABLE_CHECKS turned on.
11937
11938 2000-06-14  Havoc Pennington  <hp@redhat.com>
11939
11940         * gdk/Makefile.am: add gdkpixmap.c
11941
11942         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
11943         s/gdk_image_init/_gdk_windowing_image_init
11944
11945         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
11946         ref/unref
11947
11948         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
11949
11950         * gdk/gdkcompat.h: remove GdkWindowType compat, since
11951         GdkWindowType is now non-deprecated; 
11952         change gdk_window_get_type() compat to be
11953         gdk_window_get_window_type().
11954
11955         * gdk/gdkdnd.h: make GdkDragContext a GObject.
11956
11957         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
11958         virtual GObject. Make all functions call into the vtable.
11959         Move gdk_image_put() guts in here. Remove GdkDrawableType
11960         and gdk_drawable_get_type(), these are now GdkWindow-specific.
11961         draw_image, get_depth, get_size, set_colormap, get_colormap,
11962         get_visual added to the vtable.
11963         
11964         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
11965         GObject. Virtualize everything. 
11966         (gdk_gc_new_with_values): remove check for destroyed window,
11967         because now GdkWindow::create_gc will check this.
11968         (gdk_gc_set_values): New function to set GC values, this 
11969         was already implemented but wasn't in the header
11970
11971         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
11972
11973         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
11974         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
11975         remove _gdk_window_class; add _gdk_window_impl_get_type() and
11976         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
11977         _gdk_windowing_window_init, rename gdk_image_init to
11978         _gdk_windowing_image_init.
11979         
11980         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
11981         (gdk_draw_layout): Remove check for destroyed window, 
11982         because all the drawable methods already check it.
11983         
11984         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
11985         Add gdkpixmap.c which contains implementation of GdkDrawable
11986         virtual table (by chaining to a platform-specific implementation
11987         object).
11988         
11989         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
11990         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
11991         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
11992         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
11993         GdkColormapPrivate. 
11994
11995         * gdk/gdktypes.h: #include <glib-object.h>
11996
11997         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
11998         Move most functionality to platform-specific implementation
11999         object. GdkWindow itself now handles the backing store, then
12000         chains to the platform-specific implementation.
12001         (gdk_window_get_window_type): return GdkWindowType of the window.
12002         (gdk_window_peek_children): New routine, returns the children of 
12003         a GdkWindow
12004         (gdk_window_get_children): Was in X11-specific code and did 
12005         XQueryTree. Changed to simply return a copy of window->children; 
12006         so it can go in cross-platform code.
12007         
12008         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
12009
12010         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
12011         GdkColormap; just changed to use the new private data instead
12012         of casting to GdkColormapPrivate.
12013
12014         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
12015         gdk_cursor_new().
12016
12017         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
12018         (private data member in the GObject). 
12019         (xdnd_manager_source_filter): Function had broken 
12020         error handling, fix it (use gdk_error_trap_push).
12021
12022         * gdk/x11/gdkdrawable-x11.c: This file now implements
12023         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
12024         base class is purely for the convenience of the X port,
12025         and not part of the interface to cross-platform GDK.
12026
12027         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
12028         
12029         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
12030         specific to X, and returned by the create_gc virtual method
12031         of GdkDrawableImplX11. 
12032         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
12033         rather than gchar, this was also changed in the GdkGC vtable.
12034         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
12035         mask is 0, return immediately, instead of checking every flag.
12036         This is faster, and keeps us from segfaulting if values is NULL
12037         and the mask contains some nonzero flags.
12038
12039         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
12040         GdkWindow.
12041
12042         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
12043         GdkWindowPrivate is gone.
12044
12045         * gdk/x11/gdkim-x11.c: rename things that got renamed.
12046
12047         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
12048         remove the image_put stuff that got transferred to GdkDrawable.
12049         
12050         * gdk/x11/gdkinput.c: renamings
12051
12052         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
12053
12054         * gdk/x11/gdkpixmap-x11.c: GObject conversion
12055
12056         * gdk/x11/gdkprivate-x11.h: indentation fixes
12057
12058         * gdk/x11/gdkproperty-x11.c: renamings
12059
12060         * gdk/x11/gdkselection-x11.c: renamings
12061
12062         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
12063         implements the platform-specific "impl" object.
12064         Moved gdk_window_get_children to gdk/gdkwindow.c
12065
12066         * gdk/x11/gdkx.h: Remove all the private structs and private datas
12067         that no longer exist. Add declaration of GdkGCX11 object here.
12068         Fix all the macros to still work. 
12069
12070         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
12071         GdkDragContext from the boxed types since they are now GObjects.
12072
12073         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
12074         moved xthickness/ythickness into the instance. GtkStyleClass
12075         functions are now in the standard vtable for GtkStyle, so you have
12076         to create a GObject subclass to write a theme engine.
12077         (gtk_style_copy): fixed a leaked PangoFontDescription
12078         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
12079         can be the standard GObject function.
12080         
12081         * Throughout GTK:
12082         s/style->klass->[xy]thickness/style->[xy]thickness
12083         s/pango_layout_unref/g_object_unref/
12084
12085         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
12086         
12087         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
12088         accessing GDK internals.
12089
12090         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
12091         accessing GDK internals.
12092
12093 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12094
12095         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
12096
12097         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
12098         problem by calculating event position relative to the trough
12099         rather than the slider.
12100         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
12101
12102         * gdk/gdkgc.h: Add GDK_NOR.
12103
12104         * configure.in, Makefile.am: Add modules top level dir
12105         * configure.in: Only use pangox library if building x11 target.
12106         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
12107
12108 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12109
12110         * gtk/gtkcolorsel.c: Change private class member to be named
12111         private_data throughout the file.
12112
12113         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
12114         private_data to avoid clashing with keyword.
12115
12116 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12117
12118         * gdk/gdkdnd.h: Add comment to remove warning.
12119
12120 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
12121
12122         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
12123         Byelorussian language; changed the Makefile and file names 
12124         to reflect that.
12125
12126 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
12127
12128         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
12129         rather than gdk_window_hide; this makes things work
12130         correctly if the window is programmatically hidden while
12131         iconified.
12132
12133 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
12134
12135         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
12136         cut and paste typo where wrong pixmap was being
12137         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
12138
12139 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
12140
12141         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
12142         Add helper function to compute format / bytes 
12143         relationship. Use in a couple places to fix up
12144         errors which assume 8 * format.
12145
12146         * gtk/gtkselection.c (gtk_selection_request): Use 32
12147         rather than 8 * sizeof (GdkAtom), to work correctly
12148         on Alpha.
12149
12150 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
12151
12152         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
12153         libgtk.la
12154         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
12155         versions
12156
12157         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
12158         checking macros return NULL since the function has a return value.
12159
12160 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
12161
12162         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
12163         GTK+ from building at all.
12164
12165         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
12166
12167 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
12168
12169         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
12170         gtk/Makefile.am: make it possible to configure gtk for different
12171         targets on the same platform. The library name is now 
12172         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
12173         flag. Only the x11 target compiles right now.
12174         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
12175         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
12176         * gdk/nanox/gdk*generic*: delete generic region code.
12177         * gdk/linux-fb/gdk*generic*: delete generic region code.
12178         * README.nanox: update information.
12179         
12180 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
12181
12182         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
12183         prepend not append. (Pointed out by Brett Hall.)
12184
12185 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
12186
12187         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
12188
12189 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
12190
12191         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
12192         need this later, and this makes sure that the atexit for
12193         glib gets called after that for GDK, so atexits are
12194         properly ordered for object leak checking.
12195
12196         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
12197
12198         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
12199         pango_x_shutdown_display()
12200
12201         * gtk/simple.c (main): Close window on destroy.
12202
12203 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
12204
12205         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
12206         to treat initial creation different from setting with 
12207         regards to the graphics-exposures parameter, so add a parameter
12208         indicating whether this is initial or not.
12209
12210 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
12211
12212         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
12213         to sort of work by adding an extra return_exposes arg
12214         to gdk_event_translate() - it might be better to simply
12215         deprecate the function altogether and force people to rewrite
12216         without it. gdk_window_scroll() handles most of it, and where
12217         gdk_window_scroll() doesn't work, simply redrawing more does.
12218
12219         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
12220         assertion.
12221
12222         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
12223
12224         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
12225         bunch of pretty much useless /* Print debugging info */ comments 
12226         which had drifted away from the code they were commenting.
12227
12228 2000-06-02  Havoc Pennington  <hp@pobox.com>
12229
12230         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
12231         is in working order.
12232         
12233         * gtk/testtext.c: Change to reflect anonymous mark API
12234
12235         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
12236
12237         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
12238         field, which was unused.
12239
12240         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
12241         saves some typing.
12242
12243         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
12244
12245         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
12246         flag on the insertion point and selection bound
12247
12248         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
12249         make mark-manipulation functions take a GtkTextMark* instead of a
12250         mark name.
12251         
12252         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
12253         GtkTextMarkBody; will be used to detect attempts to delete
12254         the permanent marks (insert and selection bound)
12255
12256         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
12257
12258 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
12259
12260         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
12261         flag to on.
12262
12263         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
12264         Honor DOUBLE_BUFFRED_FLAG
12265
12266         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
12267         function to set the DOUBLE_BUFFERED flag.
12268
12269         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
12270         or not exposes done on the widget should be double-buffered.
12271
12272         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
12273         to be what would be expected. (Fixes problem with a
12274         g_return_if_fail() validating a TextDirection enumeration)
12275
12276 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
12277
12278         * gtk/gtkwidget.c: Remove all references to 
12279         offscreen flag which was no longer used.
12280
12281         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
12282
12283         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
12284         for non-null label_widget->parent.
12285
12286         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
12287         which no longer was used.
12288
12289         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
12290
12291         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
12292         for null arguments.
12293
12294         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
12295         check for destroyed windows.
12296
12297 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
12298
12299         * gtk/gtkimmulticontext.c: Add a finalize method and unref
12300         the slave context there.
12301
12302         * gtk/gtkinvisible.[ch]: Make reference counting behavior
12303         identical to GtkWindow.
12304
12305 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
12306
12307         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
12308         pangox to here, so we can write them independent of rendering
12309         system, using GDK primitives.
12310
12311         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
12312         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
12313         since we have a rendering-system independent implementation in
12314         terms of draw_glyphs().
12315         
12316         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
12317         function to render a single line.
12318
12319         * gdk/x11/gdkpango.c: Move the guts of this file mostly
12320         into ../gdkpango.c, which simplifies things, since we
12321         don't have to deal with raw X gc's.
12322
12323 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
12324
12325         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
12326         get the logical attributes for a given GtkTextLine.
12327
12328 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
12329
12330         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
12331         g_locale_get_codeset() to g_get_codeset() change.
12332
12333 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
12334
12335         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
12336         descriptions.
12337
12338         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
12339         the entry.
12340
12341         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
12342         redoing (vastly simplifying) for Pango. Still needs quite
12343         a bit of work. (Size selection is currently poor. List of 
12344         predefined sizes is not a good idea, since all of these
12345         sizes won't necessarily be distinct.)
12346
12347 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
12348
12349         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
12350         CODESET results for LANG=C.
12351
12352 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
12353
12354         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
12355         which takes a stringized pango font description;
12356         ignore the older 'font' and 'fontset' declarations.
12357
12358         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
12359         field with a GdkFont derived via gdk_font_from_description(),
12360         for compatibility. (Should we just remove it entirely?
12361         Probably too much compatibility breakage, but people
12362         should be migrating to the new Pango stuff as quickly
12363         as possible.)
12364
12365 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
12366
12367         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
12368
12369 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
12370
12371         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
12372         redoing; there are some bugs in size allocation right
12373         now, the semi-existant distinction between header / day
12374         fonts was removed, but, with Pango, could actually
12375         be made functional in a nice way.
12376         
12377         * gtk/testcalender: Move calender from examples into this
12378         directory as a test program. (We really need to restrcture
12379         testgtk into a whole directory full of tests for every
12380         widget or functionality group, separated into multiple .c
12381         files.)
12382
12383 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
12384
12385         * gtk/testgtk.c (file_exists): Fix stupid typo that
12386         was keeping RC file from being loaded.
12387
12388         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
12389         RC file font code.
12390
12391 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
12392
12393         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
12394         Add function to load a GdkFont from a PangoFontDescription.
12395
12396 2000-05-29  Tor Lillqvist  <tml@iki.fi>
12397
12398         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
12399         variable should be of type GdkEventPrivate.
12400
12401 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
12402
12403         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
12404         to have any widget for the label, use a GtkLabel widget
12405         to display the text. (Based partially on a patch from
12406         Anders Carlson.)
12407
12408         (Quite a bit of code reorganization - strip 90% of the
12409         guts out of gtkaspectframe and add a single virtual
12410         func to GtkFrameClass - compute_child_allocation.)
12411
12412 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
12413
12414         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
12415         (Removed clist->row_center_offset field because caching
12416         it wasn't saving time or code, added private function
12417         _gtk_clist_create_cell_layout()).
12418
12419 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
12420
12421         * gtk/gtkaccellabel.c: Pangoized.
12422
12423         * gtk/[hv]ruler.c: Pangoized
12424
12425 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
12426
12427         * gtk/gtkfilesel.c (gtk_file_selection_init):
12428         Use gtk_clist_set_column_auto_resize() to remove need
12429         need for manual column width computations.
12430
12431 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
12432
12433         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
12434         ensuring Pango correctness, and considerably simplifying the
12435         code.
12436         
12437         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
12438
12439         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
12440         getting of numbers of lines.
12441
12442         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
12443         to the actual requested width of the lable, not to the wrap
12444         width we set.
12445
12446         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
12447
12448         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
12449           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
12450
12451         * gtk/gtktextview.c: Fix structure inheritance.
12452
12453         * gtk/gtkprogressbar.c: Pangoize.
12454
12455 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
12456
12457         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
12458         in a function.
12459
12460         * gtk/gtktextlayout.c (find_display_line_above): Fixed
12461         bug with computing line tops.
12462
12463         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
12464
12465 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12466
12467         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
12468         and y_offset coordinates to do what we need now. (The offset between
12469         buffer and layout coordinates has been reintroduced, but is a 
12470         bit different than before.)
12471
12472         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
12473         handle the adjustments ourselves, and scroll as necessary using
12474         the new gdk_window_scroll().
12475         
12476         The advantage of this is that when we are incrementally revalidating,
12477         we are essentially rearranging things around the visible portion
12478         of the screen. With the old setup, the visible portion of the
12479         screen was moved around in the layout, so scrolling and redrawing
12480         to track that caused jumping of the display. Since we now
12481         control the scrolling ourselves, we can suppress this and
12482         only redraw when things actually change.
12483
12484 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
12485
12486         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
12487         the region not just redisplay it after-all, since we store the
12488         cursors in the LineDisplay. (Ugly interactions here between
12489         GtkLayout and GtkTextBTree here.)
12490         
12491         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
12492
12493 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12494
12495         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
12496         Added function to scroll contents of a window while keeping the
12497         window constant. Works by XCopyArea or guffaw-scrolling depending
12498         on the details of how the window is set up. (guffaw-scrolling
12499         still needs to be filled in.)
12500
12501 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
12502
12503         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
12504         move the debugging that was tied to a global variable
12505         to that.
12506
12507         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
12508
12509         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
12510         validated flag, in line data instead of setting height/width to
12511         -1. This allows us to perform operations with partially invalid
12512         buffer (using the old size for invalid lines) and thus to do
12513         incremental vaidation. Keep height/width aggregates up to date
12514         when deleting text and rebalancing the tree.
12515
12516         * gtk/gtktextbtree.[ch]: Add functions validate a line
12517         (gtk_text_btree_validate_line), and to validate up
12518         to a number of pixels (gtk_text_btree_validate).
12519
12520         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
12521         that indicates that something is changed and a revalidation
12522         pass is needed. Change ::need_repaint to ::changed, and
12523         make it take old and new yranges instead of a rectangle.
12524
12525         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
12526         the line_data_destroy() function from 
12527         gtk_text_btree_add_view() to a virtual function in 
12528         GtkTextLayout
12529
12530         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
12531         since we are handling partial repaints in a different fashion
12532         now.
12533
12534         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
12535         of the selection instead of queueing a repaint on the
12536         entire widget.
12537
12538         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
12539         get_selection_bounds() down to btree, make the function
12540         in buffer a wrapper around the btree function.
12541
12542         * gtk/gtktextlayout.[ch]: Add functions to check if the
12543         layout is valid and to recompute either a range of pixels
12544         aroudn a line or a certain total number of pixels.
12545
12546         * gtk/gtktextlayout.[ch]: Cache a single line display;
12547         now that we only redraw the needed portions, the hit rate
12548         for this cache is quite high.
12549         
12550         * gtk/gtktextview.[ch]: Keep track of the first paragraph
12551         on the screen so that when re-laying-out the buffer, we can
12552         keep the same place. This requires connecting to ::value_changed
12553         on the adjustments
12554
12555         * gtk/gtktextview.[ch]: Add idle functions to revalidate
12556         the buffer after we receive an ::invalidated signal.
12557         
12558 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
12559
12560         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
12561         to max of allocation and layout size, not just to the
12562         layout size.
12563
12564         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
12565         Invalidate window so it gets redrawn properly.
12566
12567         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
12568         to mean the entire window.
12569
12570         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
12571         into public header.
12572
12573 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
12574
12575         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
12576         to get the name of a mark.
12577
12578         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
12579         to find the paragraph from a y position.
12580
12581 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
12582
12583         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
12584         nodes have width/height >= 0, not > 0.
12585
12586 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
12587
12588         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
12589         Add a size_only flag, so when we only need the size, we don't create
12590         useless appearance attributes.
12591
12592         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
12593         duplicate setting of font description.
12594
12595         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
12596
12597 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
12598
12599         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
12600         EXTRA_DIST. It does not work well when the file that
12601         everything depends on is not in the tarball.
12602
12603 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
12604
12605         * gtk/testgtk.c: Some hacks and fixes so that it basically
12606         works when not sitting in the GTK+ build tree.
12607
12608 2000-05-03  Havoc Pennington  <hp@redhat.com>
12609
12610         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12611         Properly determine the ordering of the tag root and the current
12612         line within the tree. Previous algorithm only worked if the tag
12613         root's immediate parent was the common root of both the current
12614         line and the tag root.
12615
12616 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
12617
12618         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
12619         alignment.
12620
12621         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
12622         the widget text directional dynamically.
12623
12624         * gtk/gtktextview.[ch]: Added functions to get and set default
12625         wrap mode.
12626
12627 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
12628
12629         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
12630         in cursor location computation.
12631
12632 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
12633
12634         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
12635         vadjusment values properly when layout gets smaller.
12636
12637         * gtk/gtktextview.c (need_repaint_handler): Areas being
12638         passed in are far completely inaccurate, and sometimes
12639         too small, so, for now, just queue a redraw on the
12640         whole visible region.
12641
12642 2000-04-25  Havoc Pennington  <hp@redhat.com>
12643
12644         * gtk/gtktextbtree.c (summary_destroy): new function to 
12645         destroy tag summary nodes
12646         (gtk_text_line_next_could_contain_tag): this function was 
12647         totally broken if the line passed in wasn't below the tag
12648         root. Fix it.
12649         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
12650         "wildcard" case, we have to do a linear scan. Blah.
12651         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
12652         we have to do the linear scan
12653         (tag_removed_cb): When a tag is removed from the tag table, 
12654         remove the GtkTextTagInfo node from the btree.
12655         (gtk_text_btree_spew): Implement the spew function, for 
12656         our debugging pleasure.
12657
12658 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
12659
12660         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
12661         a problem with referring to the wrong buffer.
12662
12663         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
12664
12665         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
12666         font description to gtk_style_new() - otherwise things
12667         don't work without a .gtkrc file.
12668
12669         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
12670         tags table if we create it ourself, too.
12671
12672         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
12673         it was conflicting with XKB modifiers.
12674
12675         * gtk/gtktextview.[ch]: Add simple support for 
12676         GtkIMContext.
12677
12678 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
12679
12680         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
12681         with deletion from last commit.
12682
12683 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
12684
12685         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
12686         in the context from the current locale.
12687         
12688         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
12689         context, not hardcoded value.
12690
12691         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
12692         not logical.
12693
12694 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12695
12696         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
12697         attributes - that doesn't handle partial-glyph selection
12698         properly. Instead use new pango_layout_line_get_x_ranges()
12699         functionality to draw the selection.
12700
12701         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
12702         now properly handles out-of-range coordinates.
12703
12704         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
12705
12706         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
12707         public.
12708
12709         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
12710         for paragraphs opposite to the base direction of the widget.
12711
12712         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
12713
12714         * gtk/gtktextlayout.c: Don't split segments on marks, since that
12715         causes Arabic words to reshape as you cursor through.
12716
12717         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
12718         cursor position when moving vertically with the arrow keys and
12719         scrolling with page-up/page-down. (Arrow keys save only the X,
12720         scrolling saves both X and Y.)
12721
12722         This means you can line-up / line-down or page-up / page-down
12723         without losing your place, and also that moving vertically
12724         with the cursor keys keeps the same X position, not the same
12725         character count:
12726
12727         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
12728         arrow keys move by display lines, not paragraphs.
12729
12730 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
12731
12732         * gtk/gtklayout.c: Make sure that the bin window is at least
12733         as big as the allocation. (Should we also make sure that the
12734         bin window is big enough to completely cover widget->window?)
12735
12736         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
12737         function to get the onscreen rectangle.
12738
12739         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
12740         for offsets in window coordinates.
12741
12742 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
12743
12744         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
12745         confusion.
12746
12747         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
12748         from the widget direction.
12749
12750         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
12751         Add a "direction" attribute.
12752
12753         * gtk/gtktextview.c: global s/tkxt/text_view/.
12754
12755         * gtk/testtext.c: Added long block of text in Arabic, to test out
12756         the direction attributes. (Some problems with the shaping system
12757         for arabic become obvious - like the fact the cursor splits words
12758         into unjoined pieces.)
12759
12760 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
12761
12762         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
12763
12764         * gtk/gtktextlayout.c: Fix up alignment.
12765
12766         * gtk/testtext.c: Add some tests for centering, wrapping.
12767
12768 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
12769
12770         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12771         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
12772         If we wrote GTK+-specific layout-render function this could just replace
12773         the draw_layout() operation in the vtable.
12774
12775         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
12776         pango_layout_get_cursor_pos() and use that function.
12777
12778         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
12779         is a non-static symbol.
12780
12781         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
12782         with gtk_text_btree_find_line_by_y()
12783
12784         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
12785         renderer that handles GtkTextAppearance attributes.
12786
12787         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
12788
12789           - Move the values in the style that don't affect geometry into a
12790             GtkTextAppearance structure.
12791           - Change underline to take a PangoUnderline and "font" a string
12792             representation of a font description
12793           - Add a "font_desc" attribute which takes a FontDescription structure.
12794
12795         * gtk/gtktextlayout.[ch]:
12796
12797           - Get rid of the display-line list per each line. Instead, we
12798             generate, on demand, a GtkTextLineDisplay structure which]
12799             contains a PangoLayout * and other necesary information
12800             (offsets, cursor locations) for displaying a paragraph.
12801           - Get rid of the code to wrap lines, create display chunks,
12802             etc. Instead, we just go through a paragraph and convert
12803             it into the necessary inputs to a PangoLayout.
12804           - Implement a new attribute type, GtkTextAttrAppearance. This
12805             holds a GtkTextAppearance, and is used to pass colors, 
12806             stipple, etc, through from the layout to the display without
12807             having to use lots and lots of individual attributes.
12808           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
12809             in terms of PangoLayout functions.
12810         
12811         * gtk/gtktextview.c: 
12812          
12813           - Handle passing the necessary PangoContext to the layout
12814           - Some fixups in painting to deal with the automatic backing store
12815             and offsetting of GTK+-1.4
12816           - Add a style_set handler so that the default style reacts
12817             properly to theme changes.
12818         
12819         * gtk/gtktext?*.[ch]: Random code-style fixes.
12820
12821         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
12822
12823 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
12824
12825         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
12826         in original form preparatory to Pango-ization and gdkimcontext-ization.
12827
12828 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
12829
12830         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
12831         so that we can derive from gtkimcontext in language bindings properly.
12832
12833 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
12834
12835         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
12836         Add a compose table including (almost) all the compose combinations
12837         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
12838         data in the XIM implementation.
12839
12840         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
12841         Moved functions to convert keyvalues from and to unicode here from
12842         the win32 port and made them public.
12843
12844 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12845
12846         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
12847
12848 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
12849
12850         * gtk/gtkimcontext.[ch]: Base class for new input context system
12851
12852         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
12853         the real input context implementation to be loaded from modules
12854         and switched on the fly.
12855
12856         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
12857         context that just does direct keysymbol => unicode translation.
12858
12859         * gtk/gtkentry.[ch]: Start switching editing over to using
12860         GtkInputContext. (No handling of preedit yet.)
12861
12862 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
12863
12864         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
12865         many substitutions. (klass should not be subsituted.)
12866
12867 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
12868
12869         * configure.in: Add checks for Pango
12870
12871         * configure.in docs/Makefile.am: Add test for sgml2html
12872         and allow 'make dist' without building html, but print out
12873         warnings in that case. (For making snapshots)
12874
12875         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
12876         Add Pango libraries and C flags
12877
12878         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12879         Add function (gdk_draw_layout) to draw a pango layout.
12880
12881         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
12882         for getting Pango contexts for GDK.
12883
12884         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
12885
12886         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
12887         editing.
12888
12889         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
12890         keysym => unicode translations. More languages can be added
12891         here, but real input-method support is needed.
12892
12893         * docs/Changes-1.4.txt: Added note about entry behavior.
12894         
12895         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
12896         to set the reading direction for a widget and the global direction.
12897         Add test which allows toggling the global direction. Two private
12898         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
12899
12900         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
12901           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
12902
12903         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
12904
12905         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
12906         underlining now handled by Pango.
12907
12908         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
12909         to RCStyle and Style. (Having both this and the old font name and GdkFont 
12910         is temporary.)
12911
12912         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
12913         convenience functions for creating contexts and layouts for widgets.
12914
12915         * gtk/testgtk.c: Enhance label tests with multilingual labels.
12916
12917 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
12918
12919         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
12920         titles to be active, even if they aren't visible.
12921         (gtk_clist_column_titles_passive):  Ditto.
12922
12923 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
12924
12925         * gtkmenu.c:
12926         * gtkmenu.h:
12927         * gtktypeutils.h: Spelling/grammar fixes in comments.
12928
12929 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
12930
12931         * gdk/nanox/*.h: add missing header files.
12932
12933 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
12934
12935         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
12936         send_event to TRUE.
12937         (gtk_drawing_area_size): queue a resize.
12938
12939 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
12940
12941         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
12942         the handlers, also invalidate them. bug nailed down by Karl Nelson
12943         <kenelson@ece.ucdavis.edu>.
12944
12945 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
12946
12947         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
12948         "(nil)" foundries, patch from Grigorios Magklis.
12949
12950         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
12951         on non-available fonts, based on a patch by Grigorios Magklis
12952         <maglis@cs.rochester.edu>.
12953
12954 2000-05-18  Elliot Lee  <sopwith@redhat.com>
12955
12956         * gdk/x11/gdkregion-generic.c: If a region does not have any
12957         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
12958         instead of GDK_OVERLAP_RECTANGLE_IN.
12959
12960 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
12961
12962         * gtk/gtklayout.c (gtk_layout_map): Remove references to
12963         OFFSCREEN, as it is no longer necessary.
12964
12965 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
12966
12967         * gtk/gtkcolorsel.c: Patch from David Santiago
12968         <mrcooger@cyberverse.com> to change things so that the 
12969         indicator of the active palette entry is done independently,
12970         not via the focus, since it should always be visible.
12971
12972 2000-05-17  Tor Lillqvist  <tml@iki.fi>
12973
12974         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
12975         refcount leaks as in the X11 backend.
12976
12977         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
12978         cosmetics.
12979
12980         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
12981         backend. Add _gdk_windowing_window_destroy().
12982
12983         * gtk/gtkcolorsel.c: Include correct backend-specific header.
12984         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
12985         either, but these probably do exist on nanox?)
12986         
12987         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
12988         which isn't necessarily defined by <math.h>.
12989
12990         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
12991         ancestry past GtkObject.
12992
12993         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
12994         from DLL on Win32.
12995
12996         * gtk/gtk.def: Update corresponding to recent changes.
12997
12998         * gtk/makefile.{cygwin,msc}: Updates.
12999
13000 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
13001
13002         * docs/Changes-1.4.txt: A bit of editing.
13003
13004         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
13005         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
13006         to clear the update area for the window, and clear it
13007         when hiding a window.
13008
13009         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
13010         if window destroyed.
13011
13012         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
13013
13014         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
13015         gdk_window_destroy() to the generic code, since there was a lot of 
13016         window-system-independent logic it in. Add a function:
13017         
13018          _gdk_window_destroy() 
13019
13020         to the internal API to destroy a window without unreferencing it.
13021         Add a function:
13022
13023          _gdk_windowing_window_destroy()
13024
13025         That does the windowing-system-dependent part of destroying 
13026         the window.
13027
13028 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
13029
13030         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
13031
13032 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
13033
13034         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
13035         Make gtk_widget_shape_combine_mask() keep a reference count on
13036         the pixmap since it keeps it around.
13037
13038 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
13039
13040         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
13041         leak.
13042
13043         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
13044         leak with event filters.
13045
13046 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
13047
13048         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
13049         signal handlers with the right data arguments. (Fixes
13050         some warnings when a widget was repeatedly set as a drag
13051         destination.)
13052
13053         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
13054         window so we can avoid avoid setting the DND properties on the
13055         toplevel window repeatedly.
13056
13057 2000-05-13  Tor Lillqvist  <tml@iki.fi>
13058
13059         * gdk/win32/gdkwin32.h: Define more message types missing from
13060         mingw headers.
13061
13062         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
13063         call gdk_window_destroy_notify(). It was never called. This
13064         probably meant that the GdkWindow was never freed. Thanks Owen for
13065         noticing (!).
13066
13067         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
13068         window as destroyed before calling DestroyWindow(). DestroyWindow()
13069         causes a call to the window procedure (gdk_WindowProc), which
13070         calls gdk_event_translate(), which calls
13071         gdk_window_destroy_notify(), which gets confused unless the window
13072         is set as destroyed.
13073
13074         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
13075         this function to indicate it's win32 only. Put inside #ifdef
13076         G_ENABLE_DEBUG.
13077
13078         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
13079         debugging function. (gdk_event_translate:) Add a default branch
13080         that uses the above function to print debug messages with all
13081         Windows messages symbolically.
13082
13083         * gdk/win32/gdkprivate-win32.h: Declare it, and
13084         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
13085
13086 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
13087
13088         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
13089         public header file.
13090
13091 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
13092
13093         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
13094
13095         * gtk/gtktext.c: made the adjustments no-construct args, simply
13096         provide default adjustments.
13097         (gtk_text_destroy): release adjustments.
13098
13099         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
13100         adjustment argument non-construct.
13101
13102         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
13103         instead of in finalize.
13104         (gtk_progress_get_text_from_value): 
13105         (gtk_progress_get_current_text): 
13106         (gtk_progress_set_value): 
13107         (gtk_progress_get_percentage_from_value): 
13108         (gtk_progress_get_current_percentage): 
13109         (gtk_progress_set_percentage): 
13110         (gtk_progress_configure): ensure an adjustment is present.
13111
13112 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
13113
13114         * gtk/gtkcolorsel.[hc]:
13115         * gtk/gtkcolorseldialog.[hc]:
13116         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
13117         their parent implementation, use bit fields for boolean values, don't
13118         create unused widgets, usage of glib types, braces go on their own
13119         lines, function argument alignment, #include directives etc. etc. etc..
13120
13121         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
13122
13123 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
13124
13125         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
13126
13127         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
13128         of NULL.
13129
13130         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
13131         to freed data.
13132         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
13133
13134         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
13135         to NULL when the toplevel is getting destroyed.
13136         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
13137         (gtk_menu_destroy): 
13138         (gtk_menu_init): store the information of whether we have to
13139         readd the initial child ref_count during destruction in a new
13140         GtkMenu field needs_destruction_ref_count.
13141
13142         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
13143         here, those reading: learn from my mistake! ;)
13144         in order for set_?adjustment to support a default adjustemnt if
13145         invoked with an adjustment pointer of NULL, the code read (pseudo):
13146         if (v->adjustment) unref (v->adjustment);
13147         if (!adjustment) adjustment = adjustment_new ();
13148         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
13149         now imagine the first unref to actually free the old adjustment and
13150         adjustment_new() creating a new adjustment from the very same memory
13151         portion. here, the latter comparision will unintendedly fail, and
13152         all hell breaks loose.
13153         (gtk_viewport_set_hadjustment):
13154         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
13155         after unreferencing it.
13156
13157         * gtk/gtkcontainer.[hc]: removed toplevel registration
13158         functions: gtk_container_register_toplevel(),
13159         gtk_container_unregister_toplevel() and
13160         gtk_container_get_toplevels() which had wrong semantics
13161         anyways: it didn't reference and copy the list.
13162
13163         * gtk/gtkwindow.c: we take over the container toplevel registration
13164         bussiness now. windows are registered across multiple destructions,
13165         untill they are finalized. the initial implicit reference count
13166         users are holding on windows is removed with the first destruction
13167         though.
13168         (gtk_window_init): ref & sink and set has_user_ref_count, got
13169         rid of gtk_container_register_toplevel() call. add window to
13170         toplevel_list.
13171         (gtk_window_destroy): unref the window if has_user_ref_count
13172         is still set, got rid of call to
13173         gtk_container_unregister_toplevel().
13174         (gtk_window_finalize): remove window from toplevel list.
13175         (gtk_window_list_toplevels): new function to return a newly
13176         created list with referenced toplevels.
13177         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
13178
13179         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
13180         adjustment a non-construct arg.
13181         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
13182         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
13183         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
13184
13185         * gtk/gtkrange.c: added some realized checks.
13186         (gtk_range_destroy): get rid of the h/v adjustments in the
13187         destroy handler instead of finalize. remove timer.
13188         (gtk_range_get_adjustment): demand create adjustment.
13189
13190         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
13191         we simply create them on demand now and get rid of them in
13192         the destroy handler.
13193         (gtk_viewport_destroy): get rid of the h/v adjustments in the
13194         destroy handler instead of finalize.
13195         (gtk_viewport_get_hadjustment): 
13196         (gtk_viewport_get_vadjustment): 
13197         (gtk_viewport_size_allocate): demand create h/v adjustment
13198         if required.
13199
13200         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
13201         gtk_widget_real_destroy () functionality.
13202         (gtk_widget_real_destroy): reinitialize with a new style, instead
13203         of setting widget->style to NULL.
13204
13205 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
13206
13207         * gtk/gtkcalendar.c:
13208         * gtk/gtkbutton.c: ported _get_type() implementation over to
13209         GType, either to preserve memchunks allocation facilities,
13210         or because Gtk+ 1.0 GtkTypeInfo was still being used.
13211
13212         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
13213         over. prepare for ::destroy to be emitted multiple times.
13214         removed reference tracer magic. chain into GObjectClass.shutdown()
13215         to emit ::destroy signal.
13216
13217         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
13218         fundamental.
13219
13220         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
13221         cludge.
13222
13223         * gtk/gtksocket.c:
13224         * gtk/gtkplug.c:
13225         * gtk/gtklayout.c:
13226         * gtk/gtklabel.c:
13227         * gtk/gtkargcollector.c:
13228         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
13229         not being a fundamental anymore, and to work with the new
13230         type system (nuked fundamental type varargs clutter).
13231
13232         * gtk/*.c: install finalize handlers in the GObjectClass
13233         part of the class structure.
13234         changed direct GTK_OBJECT()->klass accesses to
13235         GTK_*_GET_CLASS().
13236         changed direct object_class->type accesses to GTK_CLASS_TYPE().
13237
13238         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
13239         GType. made most of the GTK_*() type macros and Gtk* typedefs
13240         simple wrappers around macros and types provided by GType.
13241         most notably, a significant portion of the old API vanished:
13242         GTK_TYPE_MAKE(),
13243         GTK_TYPE_SEQNO(),
13244         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
13245         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
13246         GTK_TYPE_ARGS,
13247         GTK_TYPE_CALLBACK,
13248         GTK_TYPE_C_CALLBACK,
13249         GTK_TYPE_FOREIGN,
13250         GtkTypeQuery,
13251         gtk_type_query(),
13252         gtk_type_set_varargs_type(),
13253         gtk_type_get_varargs_type(),
13254         gtk_type_check_object_cast(),
13255         gtk_type_check_class_cast(),
13256         gtk_type_describe_tree(),
13257         gtk_type_describe_heritage(),
13258         gtk_type_free(),
13259         gtk_type_children_types(),
13260         gtk_type_set_chunk_alloc(),
13261         gtk_type_register_enum(),
13262         gtk_type_register_flags(),
13263         gtk_type_parent_class().
13264         replacements, where available are described in ../docs/Changes-1.4.txt.
13265         implemented compatibility functions for the remaining API.
13266
13267         * configure.in: depend on glib 1.3.1, use gobject module.
13268
13269 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
13270
13271         * TODO.xml: Various updates to current status.
13272
13273 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
13274
13275         * gtk.m4: Print out version when test succeeds.
13276
13277 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
13278
13279         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
13280         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
13281         
13282         (Original triangle color selector from Simon Budig
13283         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
13284         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
13285         Santiago <mrcooger@cyberverse.com>)
13286
13287         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
13288         out into a separate widget.
13289
13290         * gtk/testgtk.c: Add some checkbuttons for toggling palette
13291         and opacity controls.
13292
13293 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
13294
13295         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
13296         snuck in prematurely.
13297
13298 2000-05-07  Tor Lillqvist  <tml@iki.fi>
13299
13300         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
13301         had deleted a ! operator by mistake, which caused
13302         GDK_SELECTION_CLEAR events never to be generated, which caused
13303         only the first copy to the clipboard from an gtkeditable to
13304         actually cause a copy to the Windows clipboard.
13305
13306 2000-05-06  Tor Lillqvist  <tml@iki.fi>
13307
13308         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
13309         compilation, too. Current mingw gcc distributions include the
13310         necessary headers. Also the necessary IIDs are now in mingw
13311         headers/libraries, and own definitions unnecessary.
13312
13313         More hacking on OLE2 DND, still doesn't work though, and thus
13314         ifdeffed out.
13315
13316         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
13317         here, too.
13318
13319 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
13320
13321         * gdk/nanox/*: nano-X port work in progress.
13322         * gdk/simple.c: simple test for Gdk.
13323         * README.nanox: notes about the port: read this first!
13324         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
13325         with nano-X.
13326
13327 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
13328
13329         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
13330         gdk_window_clear() into common code, implement in terms of
13331         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
13332         not redirected to the backing rectangle.
13333
13334 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13335
13336         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13337         EXTRA_DIST. It does not work well when the file that
13338         everything depends on is not in the tarball.
13339
13340 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
13341
13342         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
13343         with recursion where process_updates() is called from
13344         an expose handler. (GtkTextView is highly broken in
13345         doing this, but it should work, so it is a nice test
13346         case.)
13347
13348 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13349
13350         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
13351         handle the case where updates are queued during processing of
13352         updates.
13353
13354 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13355
13356         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
13357         window is on gdk_display - use that instead of segfaulting.
13358
13359 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
13360
13361         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
13362         broken and require an empty arg, give it to them.
13363
13364 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
13365
13366         * gtk/gtklabel.h: indentation fixes.
13367
13368 2000-05-02  Tor Lillqvist  <tml@iki.fi>
13369
13370         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
13371         draw too narrow or too low arcs, they seem to fail, at least with
13372         some display drivers.
13373
13374         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
13375
13376         Large changes to the Win32 backend, partially made necessary by
13377         the changes to the backend-independent internal
13378         structures. Attempts to implement similar backing store stuff as
13379         on X11. The current (CVS) version of the Win32 backend is *not* as
13380         stable as it was before the no-flicker branch was merged. A
13381         zipfile with that version is available from
13382         http://www.gimp.org/win32/. That should be use by "production"
13383         code until this CVS version is usable. (But note, the Win32
13384         backend has never been claimed to be "production quality".)
13385
13386         * README.win32: Add the above comment about versions.
13387
13388         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
13389
13390         * gdk/gdk.def: Update.
13391
13392         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
13393         presumably be replaced by some more better mechanism as 1.4 gets
13394         closer to release shape.
13395
13396         * gdk/makefile.{cygwin,msc}: Update.
13397
13398         * gdk/win32/*.c: Correct inclusions of the backend-specific and
13399         internal headers. Change code according to changes in these. Use
13400         gdk_drawable_*, not gdk_window_* where necessary.
13401
13402         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
13403         our old DND.
13404
13405         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
13406         to interpret single characters as UTF-8. Thanks to Hans Breuer.
13407         Use correct function name in warning messages.
13408
13409         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
13410         GSourceFuncs gdk_event_prepare and gdk_event_check.
13411         (gdk_event_get_graphics_expose): Do implement, use
13412         PeekMessage. Thanks to Hans Breuer.
13413         (event_mask_string): Debugging function to print an GdkEventMask.
13414         (gdk_pointer_grab): Use it.
13415
13416         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
13417         (old) book I used claimed was Hangul actually is CJK Unified
13418         Ideographs Extension A. Also, Hangul Syllables were missing.
13419         Improve logging.
13420
13421         * gdk/win32/gdkgc-win32.c: Largish changes.
13422
13423         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
13424         g_win32_getlocale() from GLib, and not setlocale() to get current
13425         locale name.
13426
13427         * gdk/win32/gdkprivate-win32.h
13428         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
13429         gdkwin32.h, similarily as in the X11 backend.
13430
13431         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
13432         assignment was used instead of equals in if test. Thanks to Hans
13433         Breuer.
13434
13435         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
13436         the X11 version.
13437
13438         * gdk/win32/makefile.{cygwin,msc}
13439         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
13440         path to the Win32 headers that works also with the mingw compiler.
13441
13442         * gtk/gtkstyle.c: Include <string.h>.
13443
13444 2000-04-26  Havoc Pennington  <hp@redhat.com>
13445
13446         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
13447         replacing the broken gtk_label_get ()
13448
13449 2000-04-15  Havoc Pennington  <hp@pobox.com>
13450
13451         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
13452         this keeps scanner scripts from getting confused.
13453
13454         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
13455         data, rather than void
13456
13457 2000-04-15  Tor Lillqvist  <tml@iki.fi>
13458
13459         * gtk/gtkclist.c (gtk_clist_motion)
13460         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
13461         with is_hint FALSE, get x and y from the event. They used to be
13462         used uninitialised. The Win32 backend never sends motion events
13463         marked as hints. This for instance fixes the annoying file and
13464         font selector behaviour in the Win32 version.
13465
13466 2000-04-14  Tor Lillqvist  <tml@iki.fi>
13467
13468         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
13469         gtk_private_n_signals variables, they are used by some software,
13470         sigh.
13471
13472         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
13473         installation directory from the Registry, where the installer
13474         should have put it.
13475
13476 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
13477
13478         * gdk/x11/Makefile.am: Fix problem with installation directory for
13479         gdkx.h
13480
13481         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
13482         <mrcooger@cyberverse.com> so that when selecting menus with the
13483         mouse, the first item will not be selected, but when selecting
13484         with an accelerator, or navigating left-right on a menubar with
13485         the menus popped up, the first item will be selected.
13486
13487 2000-04-05  Dan Damian  <dand@dnttm.ro>
13488
13489         * configure.in: Added "ro" to ALL_LINGUAS.
13490
13491 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
13492
13493         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
13494         indentation.
13495
13496         * Makefile.am (EXTRA_DIST): Fix typo.
13497
13498         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
13499         to catch gdkconfig.h
13500
13501         * gtk/gtkitemfactory.c: Added FIXME.
13502
13503 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
13504
13505         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
13506         s/return_if_fail/return_val_if_fail/g and add a return value.
13507
13508 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13509
13510         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
13511         merge slipup.
13512
13513         * gdk/gdkinput.h: Fix missing line from merge.
13514
13515 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
13516
13517         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
13518         instead of gdkprivate.h.
13519
13520 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
13521
13522         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
13523         parent class to correctly be GtkDialogClass.
13524
13525 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
13526
13527         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
13528         toplevel windows and their immediate children by their parents,
13529         since the size of toplevel windows is out of our immediate
13530         control and we don't get any real benefit from trying to track
13531         this size for clipping.
13532
13533         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
13534         for input_only windows.
13535
13536         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
13537         to fix some hacks and make sure that we don't try to set the
13538         background of input only windows.
13539
13540 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
13541
13542         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
13543         the _really_ internal stuff, and leave gdkprivate.h for the fake private
13544         stuff that we've traditionally exposed.
13545
13546         * gdk/**.c: Use gdkinternals.h where appropriate.
13547
13548         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
13549         not include gdkprivate-x11.h, move all stuff of conceivable public
13550         interest into gdkx.h; keep all really private stuff in
13551         uninstalled header gdkprivate-x11.h.
13552
13553         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
13554         image->image_put on windows through a new function _gdk_window_draw_image()
13555         to allow us to do backing store for images. (Sort of ugly)
13556
13557         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
13558         contexts locally so that we can offset them properly when drawing 
13559         onto backing pixmaps.
13560
13561         * gdk/gdkinput.h: Reindented
13562
13563         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
13564         pixmap or color for the window, so we can properly initialize
13565         our double-buffer pixmaps, and also so that we temporarily set
13566         a background of None while scrolling.
13567
13568         * gdk/gdkregion.h: Revise region boolean operators to have an
13569         interface that is actually convenient - switch from creating new
13570         regions on every op, to "methods" that modify existing regions
13571         (A = A OP B). 3 argument forms which allow dest == src, would also
13572         be possible, but the current interfaces seem to map nicely
13573         onto what needs to be done. (There is quite a lot of region
13574         code in GDK now.)
13575
13576         * gdk/gdkregion.h: Add constructor from rectangle and a copy
13577         operator.
13578
13579         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
13580         gdkpoly-generic.h: Copy region code from Xlib, switch it over
13581         to 32 bit coordinates, modify it to be mostly GTK+ style
13582         and to have interfaces that match gdkregion.h.
13583
13584         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
13585         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
13586         create a backing pixmap and redirect all drawing to
13587         that backing pixmap until a matching gdk_window_end_paint().
13588
13589         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
13590         Create a special drawable class for GtkWindow's that 
13591         redirects the drawing to the backing pixmap as necessary
13592         and then calls the real operations in _gdk_windowing_window_class.
13593
13594         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
13595         Store invalid region for each window. Generate expose events for invalid
13596         region in an idle. This replaces both the expose compression
13597         and the redrawing queuing in GTK+. It is both more efficient and
13598         simpler than either one individually and far more so then the
13599         combination.
13600
13601         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
13602         Emulate 32 bit coordinates for windows with 16 bit coordinates
13603         by offsetting drawing, guffaw scrolling techniques and
13604         mapping/unmapping child windows as necessary.
13605
13606         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
13607         where, when invalid regions are processed, the region is stored,
13608         and if expose events come in that are detectably duplicate
13609         the processed exposes (by comparison of event serial numbers),
13610         the stored region is subtracted out of those exposes.
13611
13612         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
13613         regions newly exposed when scrolling or resizing windows.
13614         This, combined with forcing processesing of queued invalidated
13615         regions, gives nice flicker-free scrolling.
13616
13617         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
13618         invalidated regions after every scroll.
13619
13620         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
13621         emulation in GDK. Its, for all practical purposes just a
13622         GtkViewport/GtkFixed hybrid now.
13623
13624         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
13625         (16-bit) structures as necessary instead of just casting.
13626
13627         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
13628         in terms of the structures from gdkregion-generic.c, using appropriate
13629         offsets from GDK to X11 coordinates. Cache clip mask and
13630         origin and ts origin locally and only flush to the server
13631         when drawing, to avoid constantly setting and resetting these
13632         values when offsetting GC's for scrolling and backing pixmaps.
13633
13634         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
13635
13636         * gtk/gtkcontainer.c: Call process_all_updates at end
13637         of resizing to reduce flicker. (Avoids having redraw
13638         lag arbitrarily behind resize under some circumstances)
13639
13640         * gtk/gtkentry.c: Remove old backing store code, and simply take
13641         advantage of the new backing store capabilities of GDK.
13642
13643         * gtk/gtkmain.c: Simple implementation of widget backing
13644         store - simply push a paint while handling each expose.
13645         (Should really be configurable widget for widget.)
13646         
13647         * gtk/gtkwidget.c: Remove all the old complicated redraw
13648         code, and simply invalidate the GDK windows from
13649         gdk_window_queue_clear(), etc. (Sigh, so much carefully
13650         debugged complexity ... gone to the winds.)
13651
13652         Remove all the code for suppressing expose events while
13653         resizes are pending; this isn't needed since the invalid
13654         areas won't be processed until after the resizes are
13655         processed, since they are in a lower priority idle.
13656
13657 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
13658
13659         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
13660         and height of dest rectangle for non-intersecting rectangles.
13661
13662 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
13663
13664         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
13665         for GdkRectangle.
13666
13667 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
13668
13669         * gdk/gdk{events,image,private,types,window}.h
13670          gdk/x11/gdkinputprivate.h: Change all coordinates
13671          from int16 to int. Also, Change width and height from
13672          unsigned to signed to avoid all the stupid C 
13673          signedness bugs.
13674
13675 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
13676
13677         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
13678         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
13679         Add some more detailed checking.
13680
13681         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
13682         New function to retrieve the depth of a drawable.
13683
13684         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
13685         field, reorder fields to save memory. 
13686
13687 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
13688
13689         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
13690         of the background image instead of scaling the background down to
13691         a line.
13692
13693         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
13694         which temporarily set slider to wrong size.
13695
13696         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
13697         queue_clear().
13698
13699 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
13700
13701 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
13702
13703         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
13704
13705 2000-03-17  Tor Lillqvist  <tml@iki.fi>
13706
13707         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
13708         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
13709
13710         * gdk/win32/gdkfont-win32.c
13711         * gdk/win32/gdkproperty-win32.c
13712         * gdk/win32/gdkselection-win32.c
13713         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
13714         now declared such.
13715
13716 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
13717
13718         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
13719
13720 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
13721
13722         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
13723         is called without trapping X errors.
13724
13725 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
13726
13727         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
13728         way into the fontset lists.
13729
13730 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
13731
13732         * gtk/gtkthemes.h: add extern "C" scope.
13733
13734 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
13735
13736         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
13737         to make appends to the list constant. (gtk-guy-990901-0.patch)
13738
13739 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
13740
13741         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
13742         for the typename hash table.
13743
13744 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
13745
13746         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
13747         to make sure we never divide by zero. 
13748         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
13749
13750 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
13751
13752         * gtk/gtkfontsel.c: Apply patch from
13753         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
13754         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
13755
13756         Also, some cleanups in atom handling.
13757
13758 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
13759
13760         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
13761         not GtkWidget.
13762
13763 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
13764
13765         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
13766         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
13767         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
13768         more guint wrap-around bugs before going to bed.
13769
13770 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
13771
13772         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
13773         guint wrap arounds in allocation.width.
13774
13775         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
13776         process untill we fit the allocation given.
13777
13778 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
13779
13780         * gtk/gtkwidget.c:
13781         (gtk_widget_unrealize): guard widget access with ref/unref
13782         around signal emission.
13783         (gtk_widget_hide): same here, but also check its destroyed
13784         state before queueing a resize.
13785
13786 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
13787
13788         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
13789         of gtk_default_insensitive_bg as insensitive base color.
13790
13791         * gtk/gtktext.c (gtk_text_style_set): set the background color according
13792         to the widget's state.
13793         (gtk_text_realize): same here.
13794         (gtk_text_state_changed): same here.
13795         (draw_bg_rect): compare background color against base[] from
13796         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
13797
13798 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
13799
13800         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
13801         grabs are active, unless a delete event is send to the toplevel
13802         of the currently grab holding widget.
13803
13804 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
13805
13806         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
13807         debugging g_print's.
13808
13809 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
13810
13811         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
13812         ever make the scrolled-window requisition ever depend on the 
13813         visibility state of the scrollbars for the AUTOMATIC policy. 
13814         This breaks the GTK+ requisition model, and causes loops.
13815
13816 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
13817
13818         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
13819         the default font to avoid problems with XFree86-4.0 where the
13820         default charset is iso10646-1, not iso8859-1.
13821
13822 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
13823
13824         * acinclude.m4
13825         * config.guess
13826         * config.sub
13827         * ltconfig
13828         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
13829
13830         * gtk/Makefile.am: minor cosmetic consistency tweak
13831
13832 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
13833
13834         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
13835         the activate_time to 0, so that we handle a quick
13836         press/release press/release properly and don't suppress
13837         the second release. (Red Hat bug #7545)
13838
13839 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
13840
13841         * gtk/gtkctree.c (row_delete):
13842         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
13843         bugs with destruction notifier, *always* update internal
13844         structures *before* calling user code.
13845
13846 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
13847
13848         A few more fixes for bug #5487, #2051, #2677.
13849         * gtk/gtkclist.c : 
13850         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
13851         not GDK_BUTTON_PRESS.
13852         (resync_selection): resync only if selection_mode is
13853         GTK_SELECTION_EXTENDED
13854         * gtk/gtkctree.c (resync_selection): same here
13855
13856 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
13857
13858         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
13859         gdk_drag_get_selection() and gtk_menu_detach().
13860
13861         [ From Jeroen Ruigrok/Asmodai ]
13862
13863 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
13864
13865         * gtk/gtknotebook.c (gtk_notebook_size_request): 
13866         page->tab_label can be NULL.
13867
13868 2000-01-25  Havoc Pennington  <hp@pobox.com>
13869         
13870         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
13871         arg is boolean
13872
13873         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
13874
13875         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
13876
13877         * gdk/gdkproperty.c (gdk_property_get): return boolean
13878
13879         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
13880
13881         * gdk/gdkim.c (gdk_im_ready): return boolean
13882
13883         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
13884
13885         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
13886         glib clash, should fix glib)
13887
13888         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
13889         (gdk_get_show_events): return gboolean, and canonicalize 
13890         to TRUE/FALSE
13891
13892         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
13893         colormap is private
13894         (gdk_colors_alloc): gboolean whether to be contiguous
13895         (gdk_color_equal): return gboolean since we are a predicate
13896         and not a qsort() (this looks semi-wrong due to glib breakage,
13897         IMO glib should be fixed)
13898         
13899         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
13900         (gdk_get_use_xshm): return gboolean
13901         (gdk_pointer_is_grabbed): return gboolean
13902
13903         * gdk/gdk.h: Change prototypes to match all the above changes,
13904         and re-run egtk-format-protos as required.
13905
13906 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
13907
13908         * gtk/gtkctree.c (resync_selection): 
13909         * gtk/gtkclist.c (resync_selection):
13910
13911         Return immediately if clist->drag_pos < 0. This is a workaround
13912         for the corrupt state that the clist gets into when a
13913         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
13914
13915         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
13916         
13917         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
13918         variable from recent commit.
13919
13920 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
13921
13922         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
13923
13924 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
13925
13926         * gtk/Makefile.am: prefix all autogenerated source that get build in
13927         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
13928         in builddir. since we subsequently cd into srcdir for autogeneration,
13929         the paths have to be stripped from the target file names, thusly we
13930         use $(@F) as target names now.
13931         put a comment about configure.in's --disable-rebuilds option,
13932         which can be used for non-writable source directories, for development
13933         setups though, srcdir has to be *writable*.
13934
13935 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
13936
13937         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
13938           Finish the job of allowing event to be NULL.
13939           (Fixes bug #4283, reported by Chris Blizzard)
13940
13941         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
13942           things so that the cursor appears on screen, properly
13943           take into account INNER_BORDER.
13944           (Fixes bug #4754, reported by Antonio Campos)
13945
13946 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
13947
13948         * gtk/gtknotebook.c (gtk_notebook_map): Don't
13949           show the tab_label unless it itself is visible.
13950
13951           gtk/gtknotebook.c (gtk_notebook_size_request):
13952           Do a better job of making sure that the visibility
13953           of the tab label corresponds to whether it should
13954           be mapped or not.
13955
13956 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
13957
13958         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
13959           Use the requisition, not the allocation, since the
13960           allocation has not necessarily been computed yet.
13961           (Pointed out by Eugene Osintsev)
13962
13963 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
13964
13965         * gtk/gtkstyle.c (gtk_style_new): Dont' set
13966           style/base[GTK_STATE_INSENSITIVE] both to
13967           gtk_default_insensitive_bg!
13968           (Bug #2187, reported by Jonathan Blandford)
13969
13970         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
13971           Add Alt_L, Alt_R to list of invalid accelerators.
13972           (Bug #3736, reported by Vlad Harchev)
13973
13974 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
13975
13976         * gtk/gtkfilesel.c (open_ref_dir): Fix several
13977         bugs which occured after an attempt to open 
13978         invalid home directory left cmpl_state->reference_dir == NULL.
13979
13980          - completion on files in home directory didn't work
13981          - completion on an empty string caused  segfault
13982
13983          (Bug #3678, reported by Steve Ratcliffe)
13984
13985         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
13986         cut and paste error that was causing scales to
13987         be incorrectly positioned.
13988         (Bug #2956,
13989          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
13990
13991 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
13992
13993         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
13994         when checking for dcgettext, if we've found we needed
13995         it for dgettext.
13996 +
13997 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
13998
13999         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14000         queue_clear on NO_WINDOW widgets during a reparent,
14001         since at that point the window and widget heirarchies
14002         are out of sync. This stops crashing in some cases
14003         (the scrolled window reparent test, for instance), and
14004         _probably_ won't cause drawing errors.
14005
14006         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
14007         test do what it was supposed to do and be robust against
14008         window closings, etc. (Bug #2443)
14009
14010 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
14011
14012         * gtk/gtkentry.c: Fix return values on mouse events.
14013         (Bug #2686, Sky <seb_sky@yahoo.com>)
14014
14015         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
14016         (pointed out by George Lebl)
14017
14018         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
14019         (From Ettore Perazzoli  <ettore@helixcode.com>)
14020  
14021 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
14022
14023         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
14024         clicks between rows or outside calender area correctly.
14025         (Patch from Damon Chaplin)
14026
14027         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
14028         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
14029           Call destroy function when overwriting existing data. 
14030           (Pointed out by Damon Chaplin)
14031
14032 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
14033
14034         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
14035           which was causing problems on various systems with Xmu.
14036           This hasn't been needed for a very long time.
14037           (Fixes #1185 3167)
14038
14039 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
14040
14041         * gdk/gdki18n.h: Include <ctype.h> when defining
14042           gdk_isw* in terms of is* as a fallback.
14043           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
14044
14045 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
14046
14047         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
14048           realize the widget when it is size allocated!
14049           (old, old bug)
14050
14051         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
14052           Removed unused call to gdk_window_get_size() that
14053           showed up when the above was fixed.
14054
14055 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
14056
14057         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
14058           fix up widget->window when the widget is a
14059           NO_WINDOW container widget.
14060
14061 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
14062
14063         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
14064           to account for the fact that feof() does _not_ 
14065           return TRUE on errors, and thus avoid infinite loops
14066           when trying to use gdk_pixmap_create_from_xpm()
14067           on unreadable values.
14068
14069 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
14070
14071         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
14072
14073 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
14074
14075         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
14076           gdk_gc_set_dashes to take gint8 instead of gchar to
14077           make it clearer that it is _not_ a NULL terminated string.
14078
14079         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
14080           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
14081           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
14082           arguments.
14083
14084 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
14085
14086         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
14087         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
14088         background size relative to our allocation, guard against small
14089         allocations, we may have not yet been size allocated.
14090
14091 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
14092
14093         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
14094         not just version == 3. We implement all 3 + most of 4 - 
14095         (we don't support matching text/plain;charset=iso-8859-1
14096         to a dest that expects text/plain). We'll still advertise
14097         3 to be safe, but any client implementing version >= 3
14098         must interoperate with 3.
14099         
14100 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14101
14102         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
14103         background and gc members, add a warning in gtk_tooltips_set_color()
14104         indicating that this function is deprecated.
14105
14106 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
14107
14108         * docs/gtkfaq.sgml: FAQ Update:
14109           - Minor cleanups (Emmanuel, me)
14110           - New questions:
14111                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
14112                 How can I retrieve the text from a GtkMenuItem? (timj)
14113                 How do I validate/limit/filter the input to a GtkEntry? (me)
14114                 Memory does not seem to be released when I free the list
14115                         nodes I've allocated (timj)
14116
14117 2000-03-07  Tor Lillqvist  <tml@iki.fi>
14118
14119         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
14120         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
14121         for which it is no use to call GetLastError onWin9x.
14122         (gdk_other_api_failed) New function, for general error
14123         reporting without calling GetLastError.
14124         (gdk_win32_api_failed) OTOH, this function always calls
14125         GetLastError. (gdk_win32_last_error_string) Remove this function,
14126         GLib has the equivalent now.
14127
14128         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
14129         call them with function name, file name and line number in the
14130         arguments.
14131
14132         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
14133         functions.
14134         
14135         * gtk/gtk.def: Add some missing entry points.
14136
14137         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14138         gtk_paned_set_gutter_size, which don't exist any longer, as void.
14139         
14140         Fixes by Hans Breuer:
14141
14142         * gdk/makefile.msc: Update for debugging.
14143
14144         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
14145         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
14146         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
14147         in the dash_list.
14148
14149         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
14150         the x11 backend.
14151
14152         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
14153
14154         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
14155
14156 2000-03-04  Tor Lillqvist  <tml@iki.fi>
14157
14158         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
14159         just pixel value of background colour.
14160
14161         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
14162         containing code snippet previously duplicated in a couple of
14163         places.
14164         
14165         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
14166         gdk_colormap_color.
14167
14168         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
14169         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
14170         events for autorepeated Shift, Control and Alt keys. Use
14171         gdk_colormap_color.
14172
14173         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
14174         pointer is inside the window the cursor of which we are setting,
14175         call SetCursor immediately.
14176
14177         * gdk/win32/makefile.cygwin
14178         * gtk/makefile.cygwin: If we don't have the build number stamp
14179         file, use zero.
14180
14181         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14182         gtk_paned_set_gutter_size as empty.
14183
14184         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
14185         
14186 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
14187
14188         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
14189           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
14190           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
14191           docs/gtk_tut.sgml docs/gtk.texi TODO:
14192
14193           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
14194
14195 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
14196
14197         * gtk/gtkcalendar.c: Implement num_marked_dates,
14198           and don't emit mutiple day_selected signals on
14199           month_prev.
14200
14201 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
14202
14203         * docs/make-todo (lineno): let title and logo be configurable so
14204         that GNOME can use this script too.
14205
14206         * TODO.xml: added logourl and a title
14207
14208 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
14209
14210         * TODO.xml: Added some UI items, and an explanatory
14211         comment at the top of the file.
14212
14213 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
14214
14215         * TODO.xml: some updates, added abunch of new entries.
14216         a note for those fiddeling with this file, when done
14217         with it, invoke:
14218         $ ./docs/make-todo TODO.xml >/dev/null
14219         and correct output errors before comitting changes.
14220
14221 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
14222
14223         * TODO.xml: Added XML-structured TODO file.
14224         * docs/make-todo: python script to turn TODO.xml into
14225           pretty XML output. 
14226
14227 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
14228
14229         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
14230         the function to let it draw the seven dots, instead of the old,
14231         much maligned, method.
14232         (draw_dot): New function to draw a dot.
14233
14234         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
14235         to draw the handle inside the border width as opposed to outside.
14236         Use paint function instead of gdk_draw_point.
14237
14238         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
14239         to draw the handle inside the border width as opposed to outside.
14240         Use paint function instead of gdk_draw_point.
14241
14242         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
14243         Change indenting to be more GTK like.
14244
14245 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
14246
14247         * docs/gtk_tut.sgml: New section on GtkCalendar
14248         * examples/calendar: Update example code
14249
14250 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
14251
14252         * docs/gtkfaq.sgml: FAQ Update
14253
14254 2000-02-19  Anders Carlsson  <andersca@gnu.org>
14255
14256         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
14257         to prevent the scroll event to be propagated upwards.
14258
14259 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14260
14261         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
14262         OwnerGrabButtonMask from button entries for
14263         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
14264
14265         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
14266         to the event mask (which will result in button/press release
14267         being added to the event mask on Unix) so scrolling works
14268         for layouts in scroll windows.
14269
14270         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
14271
14272         Patch from Anders Carlsson  <andersca@gnu.org> to add
14273         a scroll event.
14274
14275         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
14276         scrolling to the "Test Scrolling" part of testgtk.
14277  
14278         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
14279  
14280         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
14281         it against GDK_SCROLL.
14282  
14283         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
14284         way of mouse wheel scrolling.
14285  
14286         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
14287  
14288         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
14289  
14290         * gtk/gtkmain.c: Removed previous mouse wheel hack.
14291  
14292         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
14293         gdk_event_mask_table.
14294  
14295         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
14296         GdkEventScroll handler.
14297  
14298         * gdk/gdkevents.h: Added GdkEventScroll structure.
14299  
14300 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
14301
14302         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
14303         and Anders Carlsson to change the Paned widgets so that they
14304         can be dragged from anywhere along the length. Also change
14305         the way that this is drawn to make this apparent.
14306
14307         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
14308         from George Lebl to check that option_menu->menu is present
14309         before getting history.
14310
14311 2000-02-14  Tor Lillqvist  <tml@iki.fi>
14312
14313         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
14314         before the assertion for non-NULL segment list.
14315
14316         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
14317         Seems that pattern brushes *must* be 8x8 pixels! At least on my
14318         machine, but it might be display driver dependent. Sigh, so make
14319         sure the stipple is that size. Does Windows suck or what?
14320
14321         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
14322         places.
14323
14324 2000-02-13  Havoc Pennington  <hp@pobox.com>
14325
14326         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
14327         refcount to 1
14328         (gdk_cursor_new): init refcount to 1
14329
14330         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
14331
14332 2000-02-13  Tor Lillqvist  <tml@iki.fi>
14333
14334         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
14335         so that we don't have to do unnecessary settings to the HDC.
14336
14337         * gdk/win32/gdkdrawable-win32.c
14338         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
14339         gdk_gc_predraw.
14340
14341         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
14342         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
14343         GDI paths, call WidenPath to get the outline of the stroken path,
14344         and then fill the outline (with the brush that was built from the
14345         stipple).
14346
14347         * gdk/win32/gdkgc-win32.c: Factor out common code from
14348         _gdk_win32_gc_new and gdk_win32_gc_set_values into
14349         gdk_win32_gc_values_to_win32values. Use correct colour for
14350         SetBkColor() (Until now the code actually used a random colour in
14351         the call to SetBkColor()... but that didn't show up as not many
14352         GDI APIs use the background colour. Pattern (opaque stippled)
14353         brushes do.)
14354
14355         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
14356         gdk_win32_api_failed): New functions for error logging.
14357
14358         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
14359         WIN32_API_FAILED to call them, passing function or file name and
14360         line number.
14361
14362         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
14363
14364         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
14365         GdkColor for foreground and background in GdkGCWin32Data.
14366
14367         * gdk/makefile.cygwin: Link in the resource object separately.
14368
14369         * gdk/win32/rc/gdk.rc
14370         * gtk/gtk.rc (New file)
14371         * gdk/win32/makefile.cygwin
14372         * gtk/makefile.cygwin: Update build number in DLLs automatically,
14373         as in GLib.
14374
14375 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
14376
14377         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
14378         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
14379         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
14380         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
14381         parameters given and cursor->ref_count. coding style fixups.
14382
14383         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14384         not GtkWidget.
14385         
14386         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
14387         fix up widget macros and add _GET_CLASS() variant.
14388         
14389         * gtk/*.c: some GtkType fixups.
14390
14391 2000-02-09  Tor Lillqvist  <tml@iki.fi>
14392
14393         * gdk/win32/gdkproperty-win32.c
14394         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
14395         were reversed.
14396
14397 2000-02-04  Tor Lillqvist  <tml@iki.fi>
14398
14399         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
14400         g_filename_to_utf8 to convert the font names Windows gives us from
14401         whatever is the default codepage to UTF-8.
14402         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
14403         in the other direction.
14404
14405         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
14406         error in debugging output.
14407
14408 2000-02-02  Tor Lillqvist  <tml@iki.fi>
14409
14410         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
14411         and height parameters to gdk_window_clear_area(). Not minus one.
14412
14413 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
14414
14415         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
14416         checks if the widget passed to gtk_drag_get_data() was not the
14417         dest widget.
14418
14419 2000-02-01  Tor Lillqvist  <tml@iki.fi>
14420
14421         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
14422         g_filename_from_utf8 functions (which were added a moment ago to
14423         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
14424         size buffers.
14425
14426         gtk_file_selection_get_filename returns the filename in the C
14427         runtime encoding. It calls g_filename_from_utf8, but copies the
14428         returned string to a static buffer, which is returned. I think
14429         this is better than returning the result from g_filename_from_utf8
14430         directly, which would mean all apps that use it would have to free
14431         the return value. Or should this function care about this issue at
14432         all? Maybe a new function with clearly defined semantics.
14433
14434         * gtk/gtkfilesel.h: Add comment about
14435         gtk_file_selection_get_filename returning the filename in the C
14436         runtime's encoding.
14437
14438         * README.win32
14439         * gdk/gdk.def
14440         * gdk/makefile.{cygwin,msc}
14441         * gtk/gtk.def: Updates.
14442
14443         * gdk/gdkcursor-win32.c: Initialise refcount.
14444
14445 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
14446
14447         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
14448
14449 2000-01-30  Havoc Pennington  <hp@pobox.com>
14450
14451         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
14452         destroy
14453
14454         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
14455
14456         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
14457         implemented in platform-specific code
14458
14459         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
14460
14461         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
14462         underscore in front
14463
14464         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
14465         put an underscore in front
14466
14467         * gdk/gdkcursor.c: new file, implements
14468         gdk_cursor_ref/gdk_cursor_unref
14469
14470         * gdk/gdkcursor.h: Refcount GdkCursor
14471
14472         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
14473
14474 2000-01-29  Tor Lillqvist  <tml@iki.fi>
14475
14476         * gdk/gdkwindow.h
14477         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
14478
14479 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14480
14481         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
14482         structures to properly inherit from GtkWidget not GtkBin.
14483
14484 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
14485
14486         * gtk+.spec.in: Added lib/gtk+/include/* to %files
14487         (bug #5178 - Peter Wainright)
14488         
14489         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
14490         so that it will be installed.
14491         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
14492
14493 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
14494
14495         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
14496         for the GtkStyleClass vtable const.
14497
14498         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
14499         take a const string argument like GtkTranslateFunc. This will
14500         require changes in use code.
14501
14502 2000-01-19  Tor Lillqvist  <tml@iki.fi>
14503
14504         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
14505         semantics (to mimic the X11 backend, which just calls XClearArea)
14506         is to check for zero width (and height), and in that case use the
14507         window's width minus x (height minus y). This fixes for instance
14508         some redraw problems with gtkclist, which were easily noticeable
14509         in the gtk file selection widget.
14510
14511         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
14512         windows.
14513
14514 2000-01-13  Tor Lillqvist  <tml@iki.fi>
14515
14516         * configure.in
14517         * gdk/Makefile.am
14518         * gdk/x11/Makefile.am
14519         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
14520         (bug #5177).
14521         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
14522         out later.
14523
14524 2000-01-09  Tor Lillqvist  <tml@iki.fi>
14525
14526         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
14527         WM_MOVE for iconified or invisible windows. This fixes various
14528         problems when minimising windows. Thanks to Bernd Herd.
14529
14530 2000-01-05  Tor Lillqvist  <tml@iki.fi>
14531
14532         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
14533         backend's draw_lines method, not draw_points.
14534
14535 2000-01-02  Tor Lillqvist  <tml@iki.fi>
14536
14537         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
14538         before Owen's reorganisation: Don't have queued_events and
14539         queued_tail statics in this file, but use gdk_queued_events and
14540         gdk_queued_tail. This makes exposure event compression work again.
14541
14542         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
14543         seem to be needed?
14544
14545 1999-12-30  Tor Lillqvist  <tml@iki.fi>
14546
14547         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
14548         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
14549         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
14550         doesn't do anything.
14551
14552         * gdk/gdk.def: Add gdk_xid_table_insert.
14553
14554         * gdk/win32/gdkprivate-win32.h
14555         * gdk/win32/gdkevents-win32.c
14556         * gdk/win32/gdkinput-win32.c
14557         
14558         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
14559         extension_events field in the GdkWindowWin32Data struct. Use only
14560         the extension_events field in GdkWindowPrivate. Previously one was
14561         set, and the other one tested, which broke tablet
14562         functionality. Thanks to Keishi Suenaga for pointing this out.
14563
14564 1999-12-18  Tor Lillqvist  <tml@iki.fi>
14565
14566         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
14567         When handling a single character (text length == 1), don't handle
14568         it as if it was UTF-8.
14569
14570 1999-12-11  Tor Lillqvist  <tml@iki.fi>
14571
14572         * Makefile.am: Distribute README.win32.
14573         
14574         * gdk/Makefile.am
14575         * gdk/win32/Makefile.am: Distribute Win32 files.
14576
14577         * gdk/makefile.msc: New file.
14578
14579         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
14580         after label).
14581
14582         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
14583         gdk_error_code as GDKVAR, as they are referred outside GDK.
14584
14585         * gdk/win32/makefile.msc: Update.
14586
14587         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
14588         tweaks. Check only if at least one of those Unicode subrange bits
14589         we care for is set. If no code page bits are set, guess (wildly)
14590         based on the charset.
14591
14592         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
14593
14594         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
14595         non-NULL.
14596
14597         * gtk/gtkdnd.c
14598         * gtk/gtklayout.c
14599         * gtk/gtkplug.c
14600         * gtk/gtkselection.c
14601         * gtk/gtksocket.c
14602         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
14603         appropriate. There must be a cleaner way to handle this?
14604
14605         * gtk/gtkrc.c: Must include windows.h on Win32.
14606
14607         * gtk/testgtk.c: No need to include gdkx.h.
14608
14609         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
14610
14611 1999-12-07  Tor Lillqvist  <tml@iki.fi>
14612
14613         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
14614         the rbearing is set to the same as the width, but this should be
14615         fixed.
14616
14617 1999-12-06  Tor Lillqvist  <tml@iki.fi>
14618
14619         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
14620         function. If Windows doesn't tell us what Unicode subranges a font
14621         covers, guesstimate based on the codepages it covers. This will
14622         hopefully help those Windows versions or fonts that don't give us
14623         any useful Unicode subrange information with GetTextCharsetInfo.
14624         Call this function in gdk_font_load_internal.
14625
14626         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
14627         minor changes.
14628
14629 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
14630
14631         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
14632         New function, long needed.
14633
14634 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
14635
14636         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
14637         only_if_exists argument of gdk_atom_intern to
14638         bool.
14639
14640 1999-11-25  Tor Lillqvist  <tml@iki.fi>
14641
14642         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
14643         Fix two copy&paste errors.
14644
14645         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
14646         win32 has changed.
14647
14648         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
14649         GdkWin32SingleFont struct.
14650
14651         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
14652         subranges of loaded fonts. Clear font signature first, in case
14653         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
14654         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
14655
14656         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
14657         Unoffset clip region.
14658
14659 1999-11-23  Tor Lillqvist  <tml@iki.fi>
14660
14661         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
14662         event->any.window before calling filter functions.
14663
14664 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
14665
14666         * gtk/gtkgamma.h: Adapt cast macros to standard.
14667
14668 [ Merges from 1.2 ]
14669
14670 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
14671
14672         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
14673         If translation does not include a '/', use entire
14674         translation instead of crashing.
14675
14676 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
14677
14678         * docs/gtk_tut.sgml:
14679         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
14680
14681 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
14682
14683         * gtk/gtkselection.c (gtk_target_list_remove): Use
14684         g_list_remove_link, not g_list_remove.
14685
14686         [ From Geert Bevin <gbevin@thunderstorms.org> ]
14687         
14688 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
14689
14690         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
14691         statement upon unselection (how the heck did that slip in?).
14692
14693 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
14694
14695         * gtk/gtktext.c (gtk_text_freeze): 
14696         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
14697         in frozen state (and aparently crashes). patch provided by Anders
14698         Melchiorsen <and@kampsax.dtu.dk>.
14699
14700 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
14701
14702         * fix insensitive default/focus widget activation,
14703         reported by Matt Goodall <mgg@isotek.co.uk>.
14704
14705         * gtk/gtkwindow.c (gtk_window_key_press_event): 
14706         (gtk_window_activate_default):
14707         (gtk_window_activate_focus):
14708         return handled=FALSE for actiavtion of insensitive default
14709         widgets. return handled=TRUE for activation of insensitive
14710         focus widgets. don't activate in either case.
14711
14712 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
14713
14714         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
14715         and $glib_cflags to match library order and in the
14716         theory that an old version of GLib is more likely to
14717         be in the include directory for X then vice-versa.
14718         (Bug #2776)
14719
14720 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
14721
14722         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
14723         to determine the locale for fontsets, not LC_MESSAGES;
14724         the user may want English messages with a handling
14725         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
14726         will still be broken) (Bug #2891)
14727
14728 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
14729
14730         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
14731
14732 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
14733
14734         * gtk/gtkrc.ko: Changed the Korean default fontset.
14735
14736 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
14737
14738         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
14739         where when scrolling to the left or top double exposes
14740         were done, causing major slowdowns.
14741
14742 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
14743
14744         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
14745         names to lowercase and alphanumeric, before looking
14746         them up.
14747
14748         * gtk/Makefile.am: Install codeset variant gtkrc files
14749         with normalized names.
14750
14751 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
14752
14753         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
14754         popup menus when the menu is already visible, but its parent
14755         is still hidden, (happens after tornoff window got hidden).
14756
14757 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
14758
14759         * gtk/Makefile.am (install-data-local): Fix
14760         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
14761         deleted, causing error messages on install.
14762
14763 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
14764
14765         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
14766         the handle as well, since we now sometimes ignore
14767         exposes on the handle while resizing.
14768
14769 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
14770
14771         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
14772         extra g_free introduced in one of the last one or two 
14773         commits.
14774
14775 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
14776
14777         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
14778         consistent, put each style that a gtkrc.* file creates
14779         in a unique namespace, remove old files before installing.
14780
14781 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
14782
14783         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
14784         gtk_rc_init is called multiple times. (Yes, people who
14785         do that have bugs in their code.)
14786
14787 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
14788
14789         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
14790         Remove it since it's generated by the Makefile anyway
14791
14792 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
14793
14794         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
14795         device->info.axes for core pointer.
14796
14797 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
14798
14799         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
14800         idle_id, to deal with obsolete, broken C libraries.
14801
14802 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
14803
14804         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
14805         allocation->x/y twice!
14806
14807         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
14808         consistent with gtk_vscale_pos_trough().
14809
14810 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
14811
14812         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
14813         be queueing a resize on a toplevel container between
14814         the time we show it and when we map it. So, we need
14815         to test GTK_WIDGET_VISIBLE() for toplevels, and only
14816         use GTK_WIDGET_DRAWABLE() for child windows.
14817
14818 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
14819
14820         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
14821         (fixes bug #2144)
14822
14823 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
14824
14825         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
14826         container DRAWABLE (instead of VISIBLE), so we don't queue
14827         resizes on non-toplevel containers.
14828
14829 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
14830
14831         * gtk/gtkselection.[ch]: Make the data argument
14832         const guchar *.
14833
14834 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
14835
14836         * gtk/gtkwindow.c: Try to behave sensibly if 
14837         the focus widget is the window itself. (Should
14838         we allow this at all?)
14839
14840 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14841
14842         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
14843         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
14844         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
14845         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
14846         in prototypes and implementations consistent (Tomas Ogren).
14847
14848         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
14849         before the widget is unparented (reported by damon).
14850
14851         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
14852         since we provide unsigned data anyways.
14853
14854 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
14855
14856         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
14857         the call to gtk_tooltips_layout_text() until later.
14858
14859         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
14860         Call gtk_widget_ensure_style() before using the style.
14861
14862 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
14863
14864         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
14865         for old widgets that don't propagate draws to all
14866         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
14867
14868 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
14869
14870         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
14871         for a redraw but just the widget that requested the resize.
14872
14873 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
14874
14875         * gtk/gtkcontainer.c: added new widget level method
14876         gtk_container_set_reallocate_redraws() and a GtkContainer flag
14877         reallocate_redraws : 1 to reflect the setting, exported this through
14878         the argument system as a boolean ::reallocate_redraws.
14879
14880         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
14881         on the widget because the allocation changes, do so as well for
14882         widget->parent if the parent has reallocate_redraws set to TRUE.
14883         with that containers requesting reallocation redraws get automatically
14884         redrawn if their children changed allocation (this unfortunately
14885         affects also other children that didn't change allocation, but we
14886         cannot work around that before 1.3).
14887
14888 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14889
14890         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
14891         _and_ height are >0 (not _or_).
14892
14893         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
14894         instead of gtk_container_queue_resize(), which is a core gtk internal
14895         function (must have been on crack when i queued that).
14896
14897         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
14898         we can check more reliably if we want to discard expose events.
14899         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
14900         flag.
14901         
14902         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
14903         we simply trust these events. for deciding whether to discard exposes,
14904         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
14905         
14906 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
14907
14908         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14909         queues of areas that are completely off screen.
14910
14911         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
14912         logic for handleboxes.
14913
14914         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
14915         check on width/height.
14916
14917 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
14918
14919         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
14920         we are fine with using $@ the way we do (if we actually encounter
14921         brokeness with $@ in VPATH builds because of additional path prefixes,
14922         we need to use $(@F) actually).
14923
14924 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
14925
14926         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
14927         short lived bugs, that would allow language bindings to do surgeries
14928         to our guts.
14929
14930 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
14931
14932         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
14933         where comparison was being done against an uninitialized
14934         value causing intermittant results depending on
14935         compiler flags. Also make it clearer that we aren't
14936         ever initializing the child as 0x0 (though this will
14937         be caught in gtk_widget_size_allocate())
14938
14939 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
14940
14941         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
14942         gtk_window_unset_transient_for() call after we do checks
14943         involving the old transient parent.
14944         [ From Lance Capser <lmc@cyberhighway.net> ]
14945
14946 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
14947
14948         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
14949         an empty file.
14950
14951 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
14952
14953         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
14954         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
14955
14956 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
14957
14958         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
14959         `$@' is valid only in the build dir, not after we've done 
14960         `cd $srcdir'.  Also use `test -f' instead of less portable
14961         `test -e'.
14962
14963 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
14964
14965         * gtk/gtktext.c (correct_cache_insert): Rewrite
14966          for simplicity, and hopefully correctness.
14967          (Fixes bug #1322, which was a segfault when
14968           on some insertions with the properties around
14969           the insertion set up just wrong.)
14970
14971         * gtk/gtktext.c (gtk_text_adjustment): When we receive
14972          a "changed" signal, clamp the new value to the adjustment
14973          bounds to avoid segfaulting if someone tries to change
14974          the adjustment to a bogus value. (Bug #1795)
14975
14976 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14977
14978         * gtk/gtkmain.c: Ignore unexpected destroy notifies
14979         for children, for toplevel windows handle them
14980         like delete_event.
14981
14982         * gtk/gtkplug.c: Add an unrealize handler so that
14983         we unref plug->socket_window when we are done
14984         with it.
14985
14986 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
14987
14988         * gtk/gtktext.c (clear_area): Fix stupid signedness
14989          problem that was causing background to sometimes
14990          be misaligned.
14991
14992 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
14993
14994         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
14995         
14996         * gtk/gtkmenu.c (gtk_menu_position): Make
14997          sure we never position menus with negative x, y,
14998          since gtk_widget_set_uposition() can't handle that.
14999
15000         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
15001          Modify the positioning code a bit so that we always
15002          put the top-left corner onscreen. (This is for
15003          UI reasons, gtk_menu_position() now takes care of
15004          gtk_widet_set_uposition() brokeness.)
15005
15006 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
15007
15008         * gtk/Makefile.am: fixed up things for -jx, x > 1.
15009
15010 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
15011
15012         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
15013           RC style that is passed in. The lack of the ref
15014           before was a bug. If people worked around this
15015           bug, this will introduce a slight memory leak
15016           in their code. The code should typically look like:
15017
15018             rc_style = gtk_rc_style_new ();
15019             [...]
15020             gtk_widget_modify_style (widget, rc_style);
15021             gtk_rc_style_unref (rc_style);
15022
15023         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
15024           the style if it was already set.
15025
15026         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
15027           style if it was set before.
15028
15029 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15030
15031         * gtk/testgtk.c (main): Add a check to see if we
15032           are being run from the correct directory and
15033           to quit nicely if we are not.
15034
15035         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
15036           static.
15037
15038 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
15039
15040         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
15041
15042         * gtk/gtkwindow.c:
15043         queue resizes unconditionally (gtk_widget_queue_resize will figure
15044         what to do if the window is not realized).
15045         (gtk_window_move_resize): only recenter the window
15046         for GTK_WIN_POS_CENTER_ALWAYS.
15047         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
15048         the same way as GTK_WIN_POS_CENTER.
15049
15050 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
15051
15052         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
15053         with (!(info->last_flags & GDK_HINT_POS)) instead of
15054         (!info->last_flags & GDK_HINT_POS).
15055
15056         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
15057         new_height unconditionally, because we use these values even if
15058         !default_size_changed && !hints_changed.
15059         comented the (default_size_changed || hints_changed) case with
15060         respect to resize rejects from the window manager.
15061
15062         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
15063         in the zvt condition hack, since this includes the window hints, set
15064         the hints after the handling_resize case.
15065
15066         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
15067         window is initially shown with to the geometry.
15068
15069 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
15070
15071         * gtk/gtkwindow.c (gtk_window_move_resize):
15072         s/size_changed/default_size_changed/g so i know what's
15073         really going on (frying brain on smaller flame now).
15074
15075 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
15076
15077         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
15078         we have size_changed upon handling_resize. this is a gross
15079         workaround for the broken zvt widget and should be removed in
15080         1.3 again (search for FIXME).
15081         Owen provided an accurate comment for this:
15082
15083         /* We could be here for two reasons
15084          *  1) We coincidentally got a resize while handling
15085          *     another resize.
15086          *  2) Our computation of size_changed was completely
15087          *     screwed up, probably because one of our children
15088          *     is broken. It's probably a zvt widget.
15089          *
15090          * For 1), we could just go ahead and ask for the
15091          * new size right now, but doing that for 2)
15092          * might well be fighting the user (and can even
15093          * trigger a loop). Since we really don't want to
15094          * do that, we requeue a resize in hopes that
15095          * by the time it gets handled, the child has seen
15096          * the light and is willing to go along with the
15097          * new size. (this happens for the zvt widget, since
15098          * the size_allocate() above will have stored the
15099          * requisition corresponding to the new size in the
15100          * zvt widget)
15101          *
15102          * This doesn't buy us anything for 1), but it shouldn't
15103          * hurt us too badly, since it is what would have
15104          * happened if we had gotten the configure event before
15105          * the new size had been set.
15106          */
15107
15108 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
15109
15110         * gtk/gtkrc.c: deal properly with the fact that RC
15111           style lists may include rc styles more than once.
15112
15113         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
15114           unused static function.
15115
15116         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
15117           stack of directories of RC files currently being
15118           parsed and implicitely add them to pixmap path.
15119           
15120           This fixes a bug where the directory would get
15121           appended then overwritten by pixmap_path declarations.
15122
15123           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
15124
15125         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
15126           theme's exit function. (Patch from Peter Wainwright,
15127           bug #1454)
15128
15129         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
15130           Add a destroy() handler to take care of removing
15131           group for menu item. (Fixes bug #1197)
15132
15133         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
15134           in warning message.
15135
15136 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
15137
15138         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
15139         roundtrip to figure window's width and height, since we know that
15140         anyways from widget->allocation.
15141
15142 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
15143
15144         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
15145           the hints after we request the new size.
15146
15147 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
15148
15149         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
15150           GTK_WIDGET_REALIZED() assertion - we can compute the
15151           hints before we are realized.
15152
15153         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
15154           hint changing so that we have a value of hints_changed
15155           when we decide whether to constrain the window size.
15156
15157         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
15158
15159         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
15160         change back to G_MAXINT.
15161
15162 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
15163
15164         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
15165         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
15166         contain uncluttered values.
15167         (gtk_window_compute_hints): simply assert that window is realized
15168         and that geometry_info is valid, since we rely on this anyways.
15169         (gtk_window_constrain_size): major cleanups to the code.
15170         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
15171         for the base size, instead of the minimums. use 32767 as max width
15172         and height (like in gtkwindow.c) instead of G_MAXINT.
15173
15174 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
15175
15176         * cleaned up the GtkContainer.need_resize flag handling mess, we
15177         only need to force resize requests when we were prematurely
15178         realized, or our widget tree was modified when we were temporarily
15179         hidden. handling these cases directly upon showing the window (i.e.
15180         while the GdkWindow is still unmapped) avoids the need to wait for
15181         a configure event response and therefore makes the GUI more snappier
15182         and avoids blank windows during the roundtrip.
15183
15184         * gtk/gtkwidget.c:
15185         (gtk_widget_hide): 
15186         (gtk_widget_show): don't queue resizes on toplevels, they know how
15187         to deal with matters.
15188
15189         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
15190         flag directly for not visible resize containers and spare us unecessary
15191         signal emissions.
15192
15193         * gtk/gtkwindow.c:
15194         (gtk_window_realize): if we need to enforce premature size allocation,
15195         queue a container resize so we are correctly resized later on.
15196         (gtk_window_init):
15197         (gtk_window_size_request):
15198         don't freak around with the ->need_resize flag,
15199         gtk_container_queue_resize() will care about that.
15200         (gtk_window_show):
15201         handle initial resizing issues here, we can handle matters better in
15202         this place, especially since we know that our GdkWindow is still
15203         unmapped.
15204         (gtk_window_move_resize):
15205         don't care about ->need_resize at all.
15206         handle size changes properly that occoured while we waited for a
15207         configure event.
15208
15209 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
15210
15211         * gtk/gtkwidget.c (gtk_widget_set_uposition):
15212         * gtk/gtkwindow.[hc] (gtk_window_reposition):
15213         Move the hint setting code from gtk_widget_set_uposition
15214         to here; set the hints so that we respect any previously
15215         set geometry hints.
15216
15217         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
15218         change the window hints here or move the window here,
15219         let that happen in gtk_window_move_resize().
15220
15221 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
15222
15223         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
15224         to already queued resizes (and therefore redraws) on a widget, check
15225         its anchestry as well.
15226
15227         * gtk/gtkcontainer.c:
15228         (gtk_container_queue_resize): clear resize widgets for resize
15229         containers before aborting prematurely. this is especially important
15230         for toplevels which may need imemdiate processing or their resize
15231         handler to be queued.
15232         (gtk_container_dequeue_resize_handler): added new internal function for
15233         gtkwindow.c.
15234
15235         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
15236         configure event, take possible changes in window position into account
15237         as well.
15238         if we request a new window size, queue up a resize handler that will
15239         last until the configure event response arrives.
15240         combined the ->need_resize case (initial show) with the general size
15241         (hints) changed case and added even more comments.
15242         if !auto_shrink, only revert to the old allocation if the new size
15243         is smaller than the current allocation.
15244
15245 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
15246
15247         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
15248                            gtk_window_set_geometry_hints
15249                            gtk_window_set_default_size):
15250         When hints are set, queue a resize so that the hints will
15251         be eventually reset on the toplevel.
15252
15253         * gtk/gtkwindow.c (gtk_window_show): Use
15254         gtk_window_compute_default_size(). Clear the need_resize flag
15255         on the initail map so that we don't unnecessarily trigger the
15256         resize code.
15257
15258         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
15259         into separate functions. Compare the hints we are setting
15260         with what we set last time so that we can accurately
15261         tell when we need to reset the hints.
15262
15263         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
15264         function to figure out the size from requisition
15265         and default_size.
15266
15267         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
15268         from fvwm to constrain a size to the geometry hints.
15269
15270         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
15271         to compare two sets of geometry hints.
15272
15273         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
15274         from gtk_window_set_hints(), just compute the hints,
15275         don't set them.
15276
15277         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
15278         code from gtk_window_move_resize() to separate function,
15279         rationalize a bit.
15280
15281 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
15282
15283         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
15284         structure into a new private structure.
15285
15286         * gtkrc.c: Split GtkRcStyle into public/private.
15287         In the private part, add a list of pointers to the
15288         RcStyle lists this RcStyle participates in.
15289
15290         * gtkrc.c: When a RcStyle is free, remove all
15291         lists referencing it from the 
15292         realized_style_ht hash, and free those lists.
15293         
15294         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
15295         gtk_rc_init(), since that adds the default styles
15296         to the list of parsed RC files again.
15297
15298         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
15299         
15300 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
15301
15302         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
15303         checks that ensure that a widget's allocation is at least 1 in width
15304         and height. (GNOME note: this doesn't affect old panel code anymore,
15305         because GtkSocket will request width and height of at least 1 since
15306         Fri Jul 23).
15307
15308         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
15309         allocated yet (happens if the user realizes the window prematurely),
15310         size request and allocate it.
15311         (gtk_window_size_allocate): guard against guint underflows.
15312
15313 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
15314
15315         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
15316         in gtk_built_sources, so gtk.defs gets built prior to all other
15317         sources.
15318
15319 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15320
15321         * gtk/Makefile.am:
15322         invoke indent on gtkmarshal.*. 
15323         rewrote source generation rules, use COPYING as oldest source tag for
15324         a piggyback rule to generate all sources from (don't touch it ;).
15325         major cleanups, strip spaces on build rules for GNU Make.
15326
15327         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
15328         source and target files from commandline arguments. don't invoke indent.
15329
15330 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15331
15332         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15333         notebook after switch to avoid drawing problems.
15334         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15335         
15336         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15337         show them instead. 
15338         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15339
15340 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15341
15342         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15343         notebook after switch to avoid drawing problems.
15344         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15345         
15346         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15347         show them instead. 
15348         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15349
15350 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
15351
15352         * gtk/gtkwindow.c:
15353         we use window->need_resize from configure_event now, to indicate that
15354         the gtkwindow should keep its allocation (e.g. because the user resized
15355         the window through window manager handles). resize_count is now reliably
15356         used to figure whether we got the allocation we requested from the
15357         window manager.
15358         configure events get queued as resizes now, the real stuff (size
15359         computation and allocation) now only goes on in gtk_window_move_resize().
15360         GtkWindow's requisition now contains its *real* requisition (like all
15361         other widgets), *not* taking usize into account.
15362         geometry_info->last_{width|height} is now updated from set_hints() only
15363         so it always contains the last hints we set for the window manager.
15364         made some event handlers return TRUE instead of FALSE.
15365         the overall code should be much more straight forward now, and the
15366         significant code portions are accompanied by comments now.
15367         (gtk_window_set_hints):
15368         removed requisition argument and made it
15369         fetch the requisition through gtk_widget_get_child_requisition.
15370         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
15371         does that now.
15372         (gtk_window_show):
15373         ensure that the widget is realized before calling 
15374         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
15375         ensure that we got properly size requested and allocated before
15376         realization.
15377         (gtk_window_configure_event):
15378         ignore plain window moves, or reallocate the widget tree through the
15379         resize queue otherwise.
15380         (gtk_window_move_resize):
15381         mostly rewrote this function to figure window manager hints more
15382         reliably, coalesce window moves and resizes to reduce configure events
15383         and do actuall size allocations.
15384
15385 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15386
15387         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
15388         that have a resize pending, because a redraw is already queued for them.
15389
15390         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
15391         hack to clear resize_widgets.
15392
15393         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
15394         for resize containers prior to size allocation. (this is also a bit
15395         ugly, but avoids side effects for stopped emissions and is thus more
15396         reliable).
15397         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
15398
15399         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
15400         function from gtk_tooltips_expose, as we connect to ::expose_event
15401         *and* ::draw now.
15402
15403 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15404
15405         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
15406         checks.
15407         (gtk_target_list_unref): Likewise.
15408
15409         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
15410
15411 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
15412
15413         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
15414         guard against division by zero. (Fixes bug #1339)
15415
15416 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
15417
15418         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
15419         Prevent the trivial leak of information of allowing
15420         word motion when the entry is not visible.
15421
15422 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
15423
15424         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
15425         modality to error dialog as well as confirmation dialogs.
15426         (Bug #1803, reported by Rosanna Wing Sze Yuen)
15427
15428 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15429
15430         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
15431         tree->view_lines.
15432         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
15433
15434         * gtk/Makefile.am (install-data-local): Solaris apparently
15435         has various troubles with ln -f; use rm first instead.
15436         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
15437
15438 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
15439
15440         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
15441         use `cp' followed by `rm' (the `rm' was already there).
15442
15443 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15444         
15445         * configure.in: Fix autoconf warnings about cross compilation by
15446         trying to provide sane defaults for AC_TRY_RUN.
15447         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
15448         put them into $(srcdir) when generated. Also add a dependency of
15449         gtksignal.h on gtkmarshal.h for -j builds. 
15450         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
15451
15452 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
15453
15454         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
15455         GDK_THREADS_{LEAVE,ENTER} pair.
15456         (From Paul Fisher <pnfisher@redhat.com>)
15457
15458 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
15459
15460         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
15461         width and height are always >0 (owen).
15462
15463 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
15464
15465         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
15466         change that assured that a widget's allocated with and height are
15467         always >1, since this breaks *buggy* panel code. unfortunately this
15468         back-breaks the gimp's color selector.
15469
15470         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
15471         allocation is always >0 in width and height, before sending the
15472         configure event; this is a *gross* hack to get the gimp back to work.
15473         
15474         * marked both cases with TODO-1.3
15475
15476 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
15477
15478         * gtk/gtktext.c: Don't display wrap indicators when
15479         text is not editable and word wrap is on.
15480
15481 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
15482
15483         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
15484         option menus here as they are not derived from menu shell, assure that
15485         the option menu has a menu we can add items to.
15486
15487 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
15488
15489         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
15490         width/height to (gint) before calculations and check against < 0 to
15491         avoid guint wraparounds.
15492
15493 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
15494
15495         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
15496         width and height is never zero. sanity check both dimensions against
15497         32767 and issue a warning if the allocation is greater than that.
15498
15499 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
15500
15501         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
15502         to g_main_pending() as well.
15503
15504 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
15505
15506         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
15507         call to g_main_iteration() - since that will regrab
15508         GTK+ lock to process events.
15509
15510 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
15511
15512         * gtk/gtkwindow.c
15513         - Regularize with the rest of GTK+ by making widget->requisition
15514           not reflect the set_usize()
15515         - Always recompute geometry hints, then check if they
15516           changed before sending them to the X server. The
15517           previous checks for changes would fail in a number
15518           of circumstances. 
15519
15520 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
15521
15522         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
15523
15524 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
15525
15526         * gtk/gtkdnd.c:
15527         - Code cleanups
15528         - Instantaneously update on modifier key presses
15529         - Allow cancellation of the drag with Escape.
15530
15531 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
15532
15533         * gtk/testgtk.c (create_handle_box): Set the policy
15534         to auto_shrink - otherwise the appearance is rather
15535         strange when flipping between horizontal and vertical.
15536
15537 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
15538
15539         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
15540         (gtk_window_set_default_size): don't change a value if it's < 0.
15541         queue a resize.
15542
15543 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
15544
15545         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
15546
15547 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
15548
15549         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
15550         add an extra "/" when concating "/" + filename.
15551         (From Matt Grossman <mattg@oz.net>)
15552
15553 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
15554
15555         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
15556         for fg_gc if we set it for drawing pixmap.
15557
15558 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
15559
15560         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
15561         
15562         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
15563         already set, call old engine's destroy function and
15564         unref the old engine.
15565
15566 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
15567
15568         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
15569
15570 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
15571
15572         * gtk/gtkaccelgroup.h: mark certain functions as internal.
15573
15574 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
15575
15576         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
15577         expand behaviour changed.
15578
15579         * gtk/gtklabel.c (gtk_label_set_pattern):
15580         (gtk_label_set_justify):
15581         (gtk_label_set_line_wrap):
15582         don't bother invoking queue_clear, the reallocation does
15583         that for us, always free_words so the upcoming resize will
15584         relayout the label's contents.
15585
15586 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
15587
15588         * applied argument implementation patches from Elena Devdariani
15589         <elena@cogent.ca>.
15590
15591         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
15592         ::space_style, ::relief
15593         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
15594         * gtk/gtkpreview.c: ::expand
15595         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
15596         * gtk/gtknotebook.c: ::homogeneous
15597         * gtk/gtklabel.c: ::wrap
15598         * gtk/gtklist.c: ::selection_mode
15599         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
15600         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
15601         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
15602         * gtk/gtkclist.c: ::sort_type
15603         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
15604         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
15605
15606 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
15607
15608         * gtk/gtkstyle.c: Removed ill-thought-out part of last
15609         comment.
15610
15611 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
15612
15613         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
15614         counting right when we have to attach a new style
15615         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
15616
15617         * gtk/gtkstyle.c: Documented the refcounting
15618         peculularities of gtk_style_attach.
15619
15620 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15621
15622         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
15623         window types.
15624
15625         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
15626         of GTK_TOPLEVEL for creating the window.
15627
15628 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15629
15630         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
15631         the last argument (reported by Per Winkvist).
15632         
15633 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
15634
15635         Fixes for invisible XOR lines (Frank Loemker
15636         <floemker@TechFak.Uni-Bielefeld.DE>)
15637         
15638         * gtk/gtkclist.c (gtk_clist_realize): Always use
15639         a non-zero pixel for GDK_XOR.
15640
15641         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
15642         Use GDK_INVERT instead of GDK_XOR.
15643
15644 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
15645
15646         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
15647         signals if h/voffsets differ from adjustment values.
15648         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
15649
15650 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
15651
15652         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
15653         ::selection-done emissions up to the topmost menu shell.
15654
15655 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
15656
15657         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
15658         the user data on the window before destroying it.
15659
15660         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
15661         unrealize handler to take care of destroying 
15662         notebook->panel properly. 
15663         (Bug #1198 - Morten Welinder <terra@diku.dk>)
15664
15665         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
15666         of g_new and g_realloc to stop memory leak. (Actually,
15667         we could just use g_realloc(), but I'm not 100% sure
15668         that is portable).
15669         (Bug #1196 - Morten Welinder <terra@diku.dk>)
15670
15671 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15672
15673         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
15674
15675         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15676         for fontsets.
15677
15678         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
15679         with bin/button confusion.
15680
15681 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
15682
15683         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
15684         and show how preselection of radio items is done.
15685
15686 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
15687
15688         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
15689         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
15690         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
15691         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
15692         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
15693         * gtk/gtktable.c (gtk_table_attach): 
15694         * gtk/gtklist.c (gtk_list_insert_items): 
15695         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
15696         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
15697         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
15698         * gtk/gtkbin.c (gtk_bin_add): 
15699         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
15700         * gtk/gtkfixed.c (gtk_fixed_put): 
15701         * gtk/gtklayout.c (gtk_layout_put):
15702         general fixups to container_add logic. always realize child if
15703         child->parent is realized, only map the child and queue a resize
15704         if child and child->parent are both visible.
15705
15706 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
15707
15708         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
15709         instead of gtk_container_foreach to walk and unrealize children, so
15710         composite children get also unrealized.
15711         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
15712         (gtk_widget_map): assert that the widget is visible (basic constrain).
15713         (gtk_widget_real_map): assert that the widget is realized (basic
15714         constrain).
15715
15716 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
15717
15718         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
15719
15720 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
15721
15722         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
15723         file for iso-8859-2 locales.
15724
15725         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
15726
15727 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
15728
15729         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
15730          (Pointed out by andy@rz.uni-karlsruhe.de and others).
15731          Remove some suspicious and useless lines. 
15732
15733 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
15734
15735         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
15736         width,height = 0, 0 to mean - here to edge of window,
15737         instead of -1, -1, since the former is all we support.
15738
15739 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
15740
15741         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
15742         when removing from quit_functions list.
15743
15744 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
15745
15746         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
15747
15748 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
15749
15750         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
15751          When redrawing characters on non-visible entry, use appropriate
15752          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
15753
15754 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
15755
15756         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
15757         from drag coordinates.
15758         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
15759         use drag_dest_cell.
15760
15761         * gtk/gtktree (drag_dest_cell)
15762         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
15763         (Bug #1129)
15764
15765 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
15766
15767         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
15768         translate_* fields.
15769         (gtk_item_factory_finalize): invoke translate_notify independant from
15770         translate_data.
15771         (gtk_item_factory_set_translate_func): likewise.
15772         (gtk_item_factory_destroy): only remove ifactory pointer from those
15773         widgets that belong to us (stupid me).
15774
15775 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
15776
15777         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
15778         rc_style list when lookup succeeeds.
15779
15780 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
15781
15782         * gtk/gtkctree.c (resync_selection): 
15783         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
15784         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
15785         bug.
15786
15787 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
15788
15789         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
15790         Add some missing GDK_THREADS_ENTER()/LEAVE around
15791         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
15792
15793 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
15794
15795         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
15796         rather than emit_by_name.
15797
15798         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
15799         on the widget across multiple signal emissions.
15800         (gtk_editable_delete_text): same here.
15801         (gtk_editable_class_init): set widget_class->activate_signal after
15802         editable_signals[ACTIVATE] has been created.
15803
15804 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
15805
15806         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
15807         position here prematurely -- we might not have the
15808         right ->min_position and ->max_position yet.
15809
15810 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15811
15812         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
15813         Add error traps so if the other end of the connection
15814         dies, we survive.
15815
15816         * gtk/gtkselection.c (gtk_selection_notify): Clean
15817         up properly when selection property retrieval fails.
15818         
15819         * gtk/gtkselection.c (gtk_selection_request): Correctly
15820         reject SelectionRequest notifies where the handler
15821         returns no data.
15822
15823 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15824
15825         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
15826         when we've previously highlighted.
15827
15828         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
15829         emit two "drag_leave" signals for Motif drops.
15830
15831         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
15832         back the correct status messages when dropping from
15833         Motif onto a proxy window that is rejecting the
15834         drop.
15835
15836 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
15837
15838         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
15839         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
15840         to compare two argument values. added gtk_arg_to_valueloc() to set a
15841         variable from an arg through its location (pointer).
15842
15843         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
15844         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
15845         as gfloat*, uchars are collected as guchar*, ints are collected as
15846         gint*, etc...
15847
15848 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
15849
15850         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
15851         Include <string.h> instead of <strings.h>.
15852
15853         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
15854         (actually, a lot more duplicate includes occur if
15855          you trace through the sequence of #include's)
15856         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
15857         
15858 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15859
15860         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15861         gtk-a-higuti-990322-[0-3]
15862
15863         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15864         that was causing -DX_LOCALE not to work.
15865
15866         * gtk/gtkrc.c (gtk_rc_init):
15867         X_LOCALE will never have LC_MESSAGES defined
15868
15869 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
15870
15871         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
15872         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
15873
15874         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
15875         left/right as well (gtk-michael-980726-0.patch.gz).
15876
15877         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
15878         for pointer values, use gchar instead of char. fixed uline allocation
15879         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
15880         chunks instead of G_ALLOC_ONLY.
15881         (gtk_label_size_request): always alter requisition as passed and leave
15882         widget->requisition alone.
15883         (gtk_label_set_text): allow NULL strings.
15884         (gtk_label_new): likewise.
15885
15886 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
15887
15888         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
15889
15890 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
15891
15892         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
15893         *and* mapped (i.e. drawable).
15894         (gtk_bin_expose): only send exposes to drawable children.
15895
15896         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
15897         (gtk_box_expose): only send exposes to drawable children.
15898
15899         * gtk/gtkhscale.c (gtk_hscale_draw): 
15900         * gtk/gtkvscale.c (gtk_vscale_draw):
15901         hm, this is an ugly one. we first compute the size of our trough area
15902         here (window relative) and then check intersection with the draw_area
15903         which is parent relative because we're a NO_WINDOW widget, so we need
15904         to offset the trough area by allocation.x and allocation.y before the
15905         check. (this must not be done for the background area though, since
15906         that's already computed parent relative).
15907
15908 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
15909
15910         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
15911         unrealize title buttons.
15912
15913 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
15914
15915         * gtk/gtkclist.c (gtk_clist_column_title_passive)
15916         (gtk_clist_column_title_active): 
15917         only connect/disconnect to GtkWidgetClass::event to block mouse events.
15918
15919         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
15920         zero initialize event, removed superfluous gdk_window_get_pointer call
15921
15922         * gtk/gtklist.c (gtk_list_vertical_timeout)
15923         (gtk_list_horizontal_timeout): removed superfluous
15924         gdk_window_get_pointer call
15925
15926 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15927
15928         * plugging problems reported by "Bruce Mitchener, Jr."
15929         <bruce@puremagic.com> due to a purify session.
15930
15931         * gtk/gtkstyle.c:
15932         (gtk_style_ref): 
15933         (gtk_style_unref): assert ref_count to be > 0.
15934
15935         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
15936         the requisition.
15937         (gtk_clist_set_shift): likewise.
15938
15939         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
15940         adjustments.
15941
15942         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
15943         event before sending it and set send_event to TRUE (which needs to
15944         be done for *all* synthesized events).
15945         (gtk_list_vertical_timeout): likewise.
15946
15947         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
15948         leaks.
15949
15950         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
15951         to TRUE when synthesizing events.
15952
15953 [ *** end of merges from 1.2 *** ]      
15954         
15955 1999-11-21  Tor Lillqvist  <tml@iki.fi>
15956
15957         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
15958         (or copied from gdkconfig.h.win32 on Win32, sigh).
15959
15960         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
15961
15962         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
15963
15964         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
15965
15966         * gdk/gdkconfig.h.win32: New file.
15967
15968         * gdk/win32/makefile.cygwin: Build just a static archive here.
15969
15970         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
15971         for the DLL from the static archive built above.
15972
15973         * gdk/gdk.def: Moved here from the win32 subdirectory.
15974
15975         * gdk/win32/*: Adapt for the changed private struct organisation.
15976
15977         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
15978
15979 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
15980
15981         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
15982         for wheel mice (buttons 4 and 5).
15983
15984 1999-11-18  Tor Lillqvist  <tml@iki.fi>
15985
15986         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
15987         drawables use just the pixel field in the foreground and
15988         background GdkColor of the GdkGC.
15989
15990         gdk_gc_set_{fore,back}ground() are called in the GIMP with
15991         GdkColors containing uninitialized (red,green,blue) fields, and
15992         just the pixel field filled in, and furthermore in the
15993         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
15994         It thus turns out that we really don't need to have the full
15995         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
15996         it later to have just the pixel values.
15997
15998 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
15999
16000         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
16001
16002 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
16003
16004         * docs/gtkfaq.sgml: threads example from Erik Mouw.
16005         New question on GtkLabel background colors.
16006
16007         * docs/gtk_tut.sgml:
16008           - Correct the example code callback
16009             function definitions.
16010           - Update the gtkdial example code, from Frans van Schaik.
16011           - Update setselection.c to current API.
16012
16013         * examples/Makefile examples/*/*.c: Update to code
16014         listed in tutorial.
16015
16016 1999-11-10  Tor Lillqvist  <tml@iki.fi>
16017
16018         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
16019         subrange table (from the "Developing International Software for
16020         WIndows 95 and Windows NT" book) was missing the Hangul syllable
16021         block... Get the loaded font's charset correctly.
16022
16023         (Note that this, and the other *-win32.c files, still really are
16024         the old ones, the win32 subdirectory is not ready for compilation
16025         yet after the reorg.)
16026
16027 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
16028
16029         * gtk/gtkclist.c: Fix off-by-one bug in parameter
16030         check.
16031
16032 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
16033
16034         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
16035         on results of XQueryDeviceState().
16036
16037 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
16038
16039         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
16040         we need to accesss only ->children. We need an accessor
16041         for the children.
16042
16043         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
16044         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
16045         to get rid of gdkx.h include.
16046         
16047         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
16048         and random references to 'None'.
16049
16050         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
16051         Get rid of unused #include <gdk/gdkx.h>
16052
16053         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
16054         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
16055         gdkconfig.h.
16056
16057 1999-11-08  Tor Lillqvist  <tml@iki.fi>
16058
16059         * gdk/win32/gdkdraw.c
16060         * gdk/win32/gdkfont.c
16061         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
16062         following yesterday's changes. (Unrelated to Owen's reorg.)
16063
16064 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
16065
16066         * gdk/x11/gdkinput-gxi.c: Add missing include,
16067           fix GdkWindowPrivate => GdkDrawablePrivate.
16068
16069         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
16070
16071         * gdk/x11/Makefile.am (xinput_sources): Add missing
16072         backslash to fix building with --with-xinput=none
16073
16074 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
16075
16076         Move all X specific code into the x11/ directory.
16077         Aside from shuffling things around, did the following:
16078
16079        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
16080          gdk_arg_context_* - a simple argument parsing system
16081          in the style of popt.
16082
16083        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
16084          gdk/x11/gdkprivate-x11.h:
16085          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
16086          add ->klass and ->klass_data fields. The klass_data
16087          field points to an auxilliary structure that is
16088          windowing system dependent.
16089
16090        * gdk/gdkfont.c: Make most of the measurement functions
16091          simply wrappers around gdk_text_extents().
16092
16093        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
16094          _gdk_font_strlen() function that hides the weird
16095          behavior in gtk+-1.[02] where a string is interpreted
16096          differently for 8-bit and 16-bit fonts.
16097
16098        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
16099          to store common code for synthesizing double/triple
16100          press events.
16101         
16102        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
16103          Make all the function that modify an existing GC
16104          simply wrappers around gdk_gc_set_values().
16105          
16106        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
16107          for throwing out later.
16108
16109        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
16110          GdkImagePrivate and GdkColormapPrivate to have a
16111          windowing system dependent part (GdkFontPrivateX etc.)
16112          that "derives" from the system-independent part.
16113
16114        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
16115          Got rid of the included-source-files for XInput in
16116          favor of automake conditionals. (Which didn't exist
16117          when XInput support was originally added.)
16118
16119        * gdk/gdkrgb.c: Remove the visual id from the debugging
16120          statements since that is X11 specific; print out
16121          type/depth info instead.
16122          
16123
16124 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
16125
16126         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
16127         loading duplicates of hashed fonts.
16128
16129         * gdk/gdk.c (gdk_keysym_convert_case): rename
16130         gdk_XConvertCase to gdk_keysym_convert_case, allow
16131         results to be NULL in the GTK+ style.
16132
16133         * gdk/gdkcompat.h: Started compatibility header
16134         for renames.
16135
16136 1999-11-07  Tor Lillqvist  <tml@iki.fi>
16137
16138         * gdk/win32/gdkprivate.h: New font private structures, related to
16139         fontsets.
16140
16141         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
16142         gdk_font_list_free(). On X11, will just be wrappers to
16143         XListFonts() and XFreeFontNames(). On Win32, the code previously
16144         in gtkfontsel.c is now here.
16145
16146         New function gdk_font_xlfd_create(). On X11 will get the FONT
16147         property of the font (for GDK_FONT_FONTs), or call
16148         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
16149         builds a XLFD style name from the font information in the LOGFONT
16150         struct(s).
16151
16152         New function gdk_font_xlfd_free(), which correspondingly frees the
16153         string returned by gdk_font_xlfd_create().
16154
16155         Implement fontsets on Win32. Add a function that iterates over a
16156         wide char string and calls a callback function for each substring
16157         of wide chars from the same Unicode subrange (and thus probably
16158         available in the same real font).
16159
16160         Improve the XLFD emulation a bit.
16161
16162         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
16163
16164         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
16165         Beta3, WM_IME_CHAR messages don't seem to contain the composed
16166         multi-byte char as with the Active IMM on Win9x. Oh well, handle
16167         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
16168         ImmGetCompositionStringW() to get the composed Unicode chars.
16169
16170         * gdk/win32/gdkgc.c
16171         * gdk/win32/gdkdraw.c: Changes needed because of the font private
16172         struct changes.
16173
16174         * gdk/win32/gdk.def: Add the new functions.
16175
16176 1999-11-04  Tor Lillqvist  <tml@iki.fi>
16177
16178         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
16179         get the Platform SDK to get <dimm.h>.
16180
16181         * gdk/win32/gdkevents.c: More event handling fixes and
16182         simplification. Never generate motion events with is_hint true. We
16183         used to do that on bogus grounds earlier. Windows sends
16184         WM_MOUSEMOVE messages on button events even if the mouse hasn't
16185         moved, ignore these.
16186
16187         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
16188
16189         * gdk/win32/gdkglobals.c
16190         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
16191         the TrackMouseEvent function, and use it.
16192
16193         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
16194         char before calling WideCharToMultiByte in order to get a string
16195         for the window title.
16196
16197         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
16198
16199         * gdk/win32/gdk.def: Remove obsolete functions.
16200
16201         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
16202         /nodefaultlib and /defaultlib switches.
16203
16204         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
16205
16206 1999-10-31  Tor Lillqvist  <tml@iki.fi>
16207
16208         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
16209         EuroSign).
16210
16211         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
16212         same type as GdkWChar, especially on Win32.
16213
16214         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
16215
16216         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
16217         before passing to Windows GDI for drawing etc. Convert to the
16218         system default codepage before passing to Windows as window
16219         titles.
16220
16221         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
16222         support changing input locale on the fly.
16223
16224         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
16225         on-the-fly changes. Convert incoming characters from the current
16226         codepage to Unicode (and then to a UTF-8 multi-byte string) based
16227         on the current input language. Use keysym<->Unicode mapping tables
16228         and functions borrowed from xterm sources.
16229
16230         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
16231         editions of Win9x, use the ActiveX-based Active IMM (Input Method
16232         Manager) if available. IMEs and the Active IMM are available under
16233         the disguise of Chinese, Korean and Japanese support for IE and
16234         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
16235         support is present in all editions (as long as you install it).
16236
16237         Call DispatchMessage from gdk_events_queue() (and thus
16238         gdk_WindowProc()), instead of duplicating the code in
16239         gdk_WindowProc().
16240
16241         Reworked the grab handling and propagation code, factored out
16242         duplicated code snippets into separate functions. Other cleanups,
16243         too.
16244
16245         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
16246         the <dimm.h> header describing the Active IMM.
16247
16248         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
16249         just do the same as for "single" fonts.
16250
16251         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
16252         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
16253         the new keysyms from gdkkeysyms.h.
16254
16255         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
16256         fontset, so that gtkentry uses wide characters.
16257
16258         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
16259         GTk+'s system directory "gtk+", not "gtk".
16260
16261 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
16262
16263         * docs/gtkfaq.sgml: FAQ update
16264
16265 1999-10-21  Tor Lillqvist  <tml@iki.fi>
16266
16267         * gdk/win32/gdkprivate.h: Add more font private data.
16268
16269         * gdk/win32/gdkfont.c
16270         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
16271         fonts and strings. Now works much better. You still have to
16272         have a correct font selected, though. No fontset emulation yet.
16273
16274 1999-10-19  Tor Lillqvist  <tml@iki.fi>
16275
16276         * gtk/maketypes.awk: Use G_OS_WIN32.
16277
16278         * gtk/gtk.def: Add some missing entry points. Also some non-public
16279         ones, but PyGTK porter claims to need them.
16280
16281         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
16282         built-in type generation.
16283
16284 1999-10-14  Tor Lillqvist  <tml@iki.fi>
16285
16286         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
16287         GDK_FONT_FONT fonts (which is all we have for now, we don't
16288         emulate fontsets). The X11 version uses plain XDrawString in that
16289         case, too. The string passed to gdk_draw_text_wc seems to be in
16290         fact (at least, when used by gtkentry and gtktext) either in a
16291         single-byte charset, or a DBCS. Not Unicode.
16292
16293         This fixes the problem in gtkfontsel, where even if you had
16294         selected a font with a non-Latin1 charset (windows-greek, for
16295         instance), the preview still used Latin-1 glyphs.
16296
16297         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
16298         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
16299         (gdk_font_load): Recognize the demibold etc weights, even if we
16300         don't have the corresponding constants in the headers.
16301         (gdk_font_hash_insert): Use same hash mechanism as in the X11
16302         version. Should save font resources a bit, when we don't have
16303         multiple HFONTs for the same font.
16304
16305         * gdk/win32/gdkprivate.h: Add the names field as in the X11
16306         version.
16307
16308 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
16309
16310         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
16311         X values
16312
16313 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
16314
16315         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
16316         layout support (as mentioned on
16317         http://www.jcinteractive.com/gnome-ui/software/widgets/)
16318
16319 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
16320
16321         * gtk/fnmatch.c
16322         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
16323
16324 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
16325
16326         * configure.in (ALL_LINGUAS): Added Galician (gl)
16327
16328 1999-10-05  Tor Lillqvist  <tml@iki.fi>
16329
16330         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
16331
16332         * gdk/win32/gdkcompat.c: New file, actually provide an
16333         implementation for the deprecated functions. (Just temporarily.)
16334
16335         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
16336
16337         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
16338
16339         * gdk/win32/gdk.def gtk/gtk.def: Updates.
16340
16341 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
16342
16343         * configure.in: Added "uk" to ALL_LINGUAS.
16344         
16345 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
16346
16347         * configure.in: correct checking for BeOS check
16348
16349         * gdk/gdktypes.h
16350         * gtk/fnmatch.c
16351         * gtk/gtkfilesel.c
16352         * gtk/gtkitemfactory.c
16353         * gtk/gtkmain.[ch]
16354         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
16355
16356 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16357
16358         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
16359         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
16360         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
16361         by Bulgarian). 
16362
16363 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
16364
16365         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
16366         Fix a reference to window_private->destroyed.   
16367
16368         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
16369         (ugly) setting of an internal GdkWindow member to use
16370         a _slightly_ cleaner macro.
16371
16372         * gdk/gdkprivate.h: Split GdkWindowPrivate into
16373         GdkDrawablePrivate and GdkWindowPrivate.
16374         Add extra macros for accessing GDK_DRAWABLE_ components.
16375
16376         * *.[ch]: Massive adjustments for the above, use the
16377         new macros in a lot of places.
16378
16379 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
16380
16381         * gdk/gdktypes.h: Make GdkDrawable the base type,
16382         not GdkWindow.
16383
16384 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
16385
16386         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
16387
16388 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
16389
16390         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
16391
16392 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
16393
16394         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
16395         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
16396
16397         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
16398
16399         * docs/gtk-config.1: Now autogenerated.
16400         * docs/Changes-1.4.txt: started
16401         
16402 1999-10-03  Tor Lillqvist  <tml@iki.fi>
16403
16404         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
16405         to #ifdef also here.
16406
16407         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
16408         Owen did to the X11 backend.
16409
16410         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
16411         ScrollWindowEx when blitting inside a window, it can't be correct
16412         in the general case.
16413
16414         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
16415         WM_GETMINMAXINFO is easier.
16416
16417         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
16418         depth equal to the bitspixel value, not the visual's depth.
16419
16420         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
16421         to 24 even if the bitspixel value is 32.
16422
16423         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
16424         need to check for depth==32 when bpp==32, depth will always be 24.
16425
16426 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
16427
16428         * docs/Changes-1.4.txt: Started
16429         
16430         * gtk/Makefile.am (gdk_headers): Include all the new headers.
16431
16432         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
16433         
16434         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
16435         into C file.
16436         
16437         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
16438         header to gdkinputprivate.h.
16439
16440         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
16441         unused since before 1.2.
16442
16443 1999-09-30  Tor Lillqvist  <tml@iki.fi>
16444
16445         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
16446         expand possible hex escapes in the font family (put there by
16447         logfont_to_xlfd if the font name isn't a legal XLFD font family,
16448         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
16449         On Win32, add hex escapes here, too.
16450
16451 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
16452
16453         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
16454         to #ifdef GDK_WINDOWING_X11.
16455
16456 [ Merges from gtk-1-2 ]
16457
16458 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
16459
16460         * configure.in: fixed "GNU Make" check to pass with new make version
16461         3.77.95.
16462
16463 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
16464
16465         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
16466         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
16467         AM_PATH_GTK() macros don't get confused by the -pre1.
16468
16469 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16470
16471         * configure.in (REBUILD): Change check for perl5
16472           to check explicitely for v >= 5.002. (5.001
16473           does not work with our scripts.)
16474
16475 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
16476
16477         * configure.in: evaluate $PERL for the perl version check. added
16478         --disable-rebuilds to give the user an option to completely disable
16479         any source autogeneration rules.
16480
16481 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
16482
16483         * configure.in: evaluate $ac_make when checking for GNU Make.
16484
16485 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16486
16487         * docs/Makefile.am: added generation.txt.
16488
16489         * Makefile.am: require automake 1.4, build README from README.in and
16490         INSTALL from INSTALL.in in dist-hook.
16491         
16492         * README.in:
16493         * INSTALL.in: new files to autogenerate README and INSTALL from.
16494
16495         * configure.in: figure whether we have GNU Make
16496
16497         * docs/generation.txt: minor additions/corrections.
16498
16499 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16500
16501         * docs/gtkfaq.sgml: FAQ Update
16502
16503 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16504         
16505         * configure.in: Fix autoconf warnings about cross compilation by
16506         trying to provide sane defaults for AC_TRY_RUN.
16507
16508 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
16509
16510         * ltconfig
16511         * ltmain.sh: upgrade to libtool 1.3.3
16512
16513 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
16514
16515         * INSTALL: Indicate that the --with-glib= configure
16516         time flag is unsupported.
16517
16518 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
16519
16520         * docs/generation.txt: Added a file that gives
16521         documenation about the autogeneration process for
16522         various autogenerated files.
16523         
16524 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16525
16526         * configure.in (LIBS): Look for libgmodule in the
16527         right location.
16528
16529 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
16530
16531         * docs/gtk_tut.sgml: Removed references to
16532         code examples in my directory on gtk.org as
16533         they should all be in the tutorial now.
16534
16535         * docs/gtk_tut.sgml: Added sources for dial-test
16536         and scribble-xinput programs that were previously
16537         missing.
16538
16539 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
16540
16541         * TODO: Added entry about menu keyboard navigation, removed
16542         some finished items.
16543
16544 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
16545
16546         * acinclude.m4: Standardize on func_dgettext
16547         not func_gettext, so that the checks for dgettext
16548         actually are paid attention to.
16549
16550 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
16551
16552         * configure.in (LIBS): Add $INTLLIBS into $LIBS
16553         directly, rather than repeating the checks for
16554         gettext.
16555
16556         * INSTALL: Added information about gettext and
16557         NLS support.
16558
16559         * acinclude.m4 (LIBM): Check for dgettext, not
16560         just gettext. This should hopefully fix things wrt
16561         systems with old versions of GNU gettext installed.
16562
16563 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16564
16565         * configure.in (LIBS): Look for libgmodule in the
16566         right location.
16567
16568 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16569
16570         * autogen.sh: add --enable-maintainer-mode
16571
16572         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
16573
16574 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
16575
16576         * docs/gtk-config.1.in:
16577           docs/Makefile.am:
16578           configure.in: gtk-config is now generated.
16579
16580         * docs/gtk-config.1: Removed, now generated.
16581
16582 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
16583
16584         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
16585         handle CreateNotify itself, still put out a debuging message for
16586         --gdk-debug=events. made the ReparentNotify debugging message more
16587         verbose.
16588         wrap xcoords translation for ConfigureEvents into an error trap,
16589         a destroy event may already be pending, and in that case, the
16590         actuall coordinate values are not at all critical.
16591
16592 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
16593
16594         * gdk/gdkcc.c: Stop leaking the color_hash all over
16595         the place. Simplify and improve the logic.
16596
16597 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
16598
16599         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
16600         for prototypes and function implementations consistent (reported
16601         by Tomas Ogren).
16602
16603 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
16604
16605         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
16606         send_event set in debugging output.
16607         (gdk_compress_exposures): default initialize the event so we don't
16608         operate on bogus values (namely send_event).
16609
16610 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
16611
16612         * gdk/gdkwindow.c: When we receive an unexpected
16613         destroy notify on one of our windows, don't just
16614         warn about it, also mark our windows as destroyed.
16615
16616 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
16617
16618         * gdk/gdkfont.c (gdk_font_hash_insert): Add
16619           name => font and name => fontset hashes. The 
16620           name => fontset hash is a _big_ win since we
16621           weren't previously caching fontsets at all and loading
16622           fontsets is expensive. The name => font hash
16623           is less of a win, but it does save us from doing
16624           repeated XQueryFont calls on the same font.
16625
16626         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
16627           list so we can remove font/fontset from hash.
16628
16629 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16630
16631         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
16632           and slightly confusing test. [ XInternAtom (,,TRUE)
16633           will never return None ].
16634
16635 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
16636
16637         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
16638           gdk/gdkwindow.c (gdk_window_set_hints):
16639
16640         Don't omit setting the properties if flags == 0 -
16641         there may be an existing set of properties there
16642         already. (Very old bug. Would it be better to
16643         delete the property instead?)
16644
16645         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
16646           spelling error in comment.
16647
16648 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
16649
16650         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
16651           to avoid stomping over gdk_error_warnings.
16652
16653         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
16654           as (bits_per_pixel + 7) / 8. This gives the same
16655           result as before for multiples of 8, but actually
16656           a "reasonable" value for 1bit or 4bit displays.
16657
16658 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16659
16660         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
16661         GNU Make.
16662
16663 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
16664
16665         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
16666         discarding configure events.
16667
16668 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
16669
16670         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
16671         refcount is greater than zero.
16672
16673         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
16674
16675         * gdk/gdkfont.c (gdk_font_unref): Likewise.
16676
16677         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
16678
16679         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
16680
16681 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
16682
16683         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
16684         that format 32 => sizeof(item) == 4. It really is
16685         sizeof(long).
16686
16687 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
16688
16689         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
16690         core dump at all on X IO errors, only core dump
16691         if --enable-debug for X errors.
16692
16693 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
16694
16695         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
16696         unknown window:" message. disabled ConfigureNotify discarding code,
16697         because it led to events being processed out of order.
16698
16699 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
16700
16701         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
16702
16703         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
16704         we export this function, supress error warnings and don't reset the
16705         error code in the first half of this function.
16706
16707         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
16708         code (instead of just -1) so gdk_error_trap_pop() reveals something
16709         actually informative about the error that happened.
16710
16711         * gdk/*.c:
16712         don't rely on gdk_error_code being -1 if an error occoured, but just
16713         gdk_error_code != 0.
16714
16715 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
16716
16717         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
16718         pointer *before* invoking the filter function, so we at least don't
16719         crash if a filter is removed that is currently executed. window filters
16720         *really* need to be made truely reentrant at some point.
16721
16722 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
16723
16724         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
16725         PropertyNotify debug messages.
16726
16727 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
16728         
16729         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
16730         
16731         * gdk/gdkim.c: Fix cut-and-paste errors for 
16732         x/y and PreeditAttributes/StatusAttributes.
16733
16734 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16735
16736         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
16737         G_MAXINT to 2^16 to alleviate overflow problems in
16738         various window managers.
16739
16740 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16741
16742         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16743         for fontsets.
16744
16745 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
16746
16747         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
16748         Initialize size_hints.x and size_hints.y because kwm
16749         brokenly pays attention to them.
16750         (Bug #1181 -  Lars Heete <hel@admin.de>)
16751
16752 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
16753
16754         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
16755         return value of gdk_list_visuals(). 
16756         (Bug #1193 - Morten Welinder <terra@diku.dk>)
16757
16758 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
16759
16760         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
16761         XSetIMValues to (void *) when comparing to NULL, to workaround
16762         the problem of some compilers barfing since older X headers don't
16763         have the prototype for it.
16764
16765 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
16766
16767         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
16768         for pseudocolor where colormap->colors was double
16769         allocated.
16770
16771         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
16772         color value in the hash table with the pixel filled
16773         in so when we do later hash table lookups, the color
16774         value is correct.
16775         
16776 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
16777
16778         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
16779         making the call
16780
16781 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
16782
16783         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
16784         pointed out by Morten Welinder <terra@diku.dk>.
16785
16786 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16787
16788         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16789           default filter from the list
16790
16791 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16792
16793         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16794           default filter from the list
16795
16796 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
16797
16798         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
16799
16800         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
16801         g_strdup_printf instead of calcing the length separately
16802
16803 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
16804
16805         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
16806         that we don't do in many other places. (Fixing duplicate 
16807         #include of config.h)
16808
16809         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
16810         Otherwise, #ifndef XINPUT_NONE check in the latter
16811         doesn't work. (Bug #546)
16812
16813 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
16814
16815         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
16816         "None" case insensitive.
16817
16818 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16819
16820         * gdk/gdkselection.c: 
16821         Add error traps so if the other end of the connection
16822         dies, we survive.
16823
16824 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16825
16826         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
16827         dest_xid field into two fields - one for the window
16828         to send in messages, one to indicate the last looked
16829         up window for caching purposes. This is needed, so
16830         that Leave messages get the correct window.
16831
16832 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
16833
16834         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
16835         Fix warning created by people mucking around
16836         with the gsource API.
16837
16838         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
16839         Change mapping between GIOCondition and GdkInputCondition
16840         to match the way the Linux kernel does it. This should
16841         fix problems where closed pipes were no longer signalling
16842         GDK_INPUT_READ on systems with a native poll().
16843
16844 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
16845
16846         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
16847         explicitly for the string "None" - it is in the XPM
16848         spec and some servers treat unknown colors in odd ways
16849         (like asking the user!)
16850
16851 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16852
16853         * gdk/gdkevents.c: made "->" into a "." of previous change so
16854         it compiles
16855
16856 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
16857
16858         * gdk/gdkevents.c (gdk_compress_exposures): Set the
16859         window field of the event structure before calling
16860         user filters.
16861
16862 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16863
16864         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
16865         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
16866
16867 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
16868
16869         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
16870         intermediate text property - prevents major memory
16871         leak when gdk_use_mb.
16872         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
16873
16874 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16875
16876         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16877         gtk-a-higuti-990322-[0-3]
16878
16879         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
16880         sizeof(wchar_t) != sizeof (GdkWChar)
16881
16882         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16883         that was causing -DX_LOCALE not to work.
16884
16885         * gtk/gtkrc.c (gtk_rc_init):
16886         X_LOCALE will never have LC_MESSAGES defined
16887
16888         * gdk/gdk.c (gdk_init_check):
16889         Remove --xim-preedit and --xim-status from argv properly.
16890
16891         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
16892         that the client window is present on the X server
16893         before we pass it to the input method.
16894
16895 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
16896
16897         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
16898         if --display is specified on the command line, than
16899         the drag window will not be created on that display.
16900         
16901 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
16902
16903         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
16904         lookups with only_if_exists == TRUE were inserting
16905         bogus values into the atom cache.
16906
16907 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16908
16909         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
16910         then reset it to NULL.
16911
16912         * gdk/gdkcolor.c:
16913         (gdk_colors_free): 
16914         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
16915         key for g_hash_table_remove() in both functions, this prevents us
16916         from accessing possibly uninitialized portions of a GdkColor structure
16917         where we are only interested in its pixel value.
16918
16919 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16920
16921         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16922         font hash table, if we have a GdkFontPrivate entry for this font
16923         already, simply increment its reference count, provided by Olaf Dietsche
16924         <olaf.dietsche+list.gtk@netcologne.de>.
16925
16926 1999-09-21  Tor Lillqvist  <tml@iki.fi>
16927
16928         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
16929         just to be sure.
16930
16931         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
16932         unused variables, leftovers from the X11 version.
16933
16934         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
16935
16936         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
16937         downcase fields on X11.
16938
16939 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16940         
16941         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
16942         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
16943
16944 1999-09-17  Tor Lillqvist  <tml@iki.fi>
16945
16946         * gdk/win32/gdk.def: Add gdk_threads_mutex.
16947
16948         * gtk/makefile.msc: Correct path to libintl.
16949
16950         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
16951         use of gint vs. int, and gint vs. gboolean in headers and
16952         definitions. Use GtkType for the *_get_type functions. Note that
16953         these changes preserve binary compatibility.
16954
16955         * gdk/gdk.c
16956         * gdk/win32/gdk.c
16957         * gdk/gdk.h: Fix inconsistencies: gint vs int.
16958
16959         * gtk/gtkmain.c
16960         * gtk/gtkclist.c
16961         * gtk/gtkmenufactory.c
16962         * gtk/gtknotebook.c
16963         * gtk/gtkwidget.c: Fix inconsistencies, also gint
16964         vs. gboolean.
16965
16966         * gtk/gtkcolorsel.[ch]
16967         * gtk/gtkcombo.[ch]
16968         * gtk/gtkdrawingarea.[ch]
16969         * gtk/gtkgamma.[ch]
16970         * gtk/gtkhandlebox.[ch]
16971         * gtk/gtkhpaned.[ch]
16972         * gtk/gtkhruler.[ch]
16973         * gtk/gtkplug.[ch]
16974         * gtk/gtkpreview.[ch]
16975         * gtk/gtkruler.[ch]
16976         * gtk/gtksocket.[ch]
16977         * gtk/gtkstatusbar.[ch]
16978         * gtk/gtktoolbar.[ch]
16979         * gtk/gtkvbbox.[ch]
16980         * gtk/gtkvpaned.[ch]
16981         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
16982         functions.
16983
16984         * gtk/gtkgamma.h: Fix bug, missing () in call of
16985         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
16986
16987 1999-09-14  Tor Lillqvist  <tml@iki.fi>
16988
16989         * gdk/gdkcolor.c (gdk_colormap_new)
16990         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
16991         colormap->colors was allocated twice.
16992
16993         * gdk/win32/gdk.c: Remove some unused stuff.
16994
16995         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
16996         colormap.
16997
16998         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
16999         * gtk/gtklabel.h (gtk_label_get_type)
17000         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
17001         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
17002         in a couple of places, not guint.
17003
17004 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17005
17006         * configure.in,po/et.po: added Estonian language file
17007
17008 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17009
17010         * configure.in,po/da.po: added Danish file
17011
17012 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
17013
17014         * docs/gtkfaq.sgml: Minor FAQ Update
17015
17016 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
17017
17018         * docs/gtkfaq.sgml: FAQ update
17019
17020 1999-08-27  Tor Lillqvist  <tml@iki.fi>
17021
17022         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
17023         way to get window contents continually refreshed while resizing. I
17024         didn't like the effects myself, so it's not on by default.
17025
17026         * gdk/win32/gdkprivate.h: New flag variable
17027         gdk_event_func_from_window_proc, FALSE by default.
17028
17029         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
17030         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
17031         are passed --gdk-event-func-from-window-proc.
17032
17033         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
17034         and we have am event_func, call it instead of enqueing the event.
17035
17036 1999-08-23  Tor Lillqvist  <tml@iki.fi>
17037
17038         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
17039         Kelley: Set expose_count in GdkEventExposes correctly.
17040
17041         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
17042         MULTIPLE_WINDOW_CLASSES).
17043
17044         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
17045         for bug in NT, apparently NT *does* draw the end pixel, too, in
17046         LineTo with a one-pixel pen, so we don't have to do it ourselves.
17047
17048 1999-08-21  Tor Lillqvist  <tml@iki.fi>
17049
17050         Improvements by Hans Breuer: 
17051
17052         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
17053
17054         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
17055         CS_?REDRAW flags as they cause lots of (late) redraws when "show
17056         window contents while dragging" is turned on. Allocate at least
17057         one unique class for every GdkWindowType. If support for single
17058         window-specific icons is ever needed (eg. Dialog specific), every
17059         such window should get its own class.
17060
17061 1999-08-19  Tor Lillqvist  <tml@iki.fi>
17062
17063         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
17064         error that caused crashes.
17065
17066 1999-08-17  Tor Lillqvist  <tml@iki.fi>
17067
17068         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
17069         window, use ScrollWindowEx, and call UpdateWindow. This prevents
17070         bugs when for instance part of the window was outside the
17071         display. Thanks to Philippe Colantoni for finding and fixing this.
17072
17073 1999-08-16  Tor Lillqvist  <tml@iki.fi>
17074
17075         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
17076         endpoint calculations which were totally wrong. (A little RTFMing
17077         helps a lot ;-)
17078
17079         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
17080         from a separate directory, not from gettext, because of licensing
17081         issues (we want to use the LGPL version).
17082
17083         * README.win32: Mention the intl from glibc vs from gettext issue.
17084
17085 1999-08-13  Tor Lillqvist  <tml@iki.fi>
17086
17087         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
17088         in the key event handling: Now AltGr chars work again. Also,
17089         now Alt-digits are passed up as well as Control-digits.
17090         Pass keypad plus and minus as normal plus and minus.
17091
17092 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
17093
17094         * docs/gtkfaq.sgml: FAQ Update
17095
17096 1999-07-25  Tor Lillqvist  <tml@iki.fi>
17097
17098         * README.win32
17099         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
17100         the Wintab SDK.
17101
17102         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
17103         OK, but getting closer. Guard against bogus tilt data from Wacom
17104         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
17105         enable easier building without Wintab.
17106
17107         * gdk/win32/gdkinput.h
17108         * gdk/win32/gdkevents.c 
17109         * gdk/win32/gdkwindow.c: Minor changes related related to above.
17110         
17111         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
17112         code. As we have just one visual on Win32, no sense to have it in a
17113         table, and no need for the hash table.
17114
17115         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
17116         better on white background.
17117
17118 1999-07-21  Tor Lillqvist  <tml@iki.fi>
17119
17120         * README.win32: Update gcc build instructions. Mention gettext is
17121         GPL.
17122
17123         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
17124         supported cursor size with GetSystemMetrics.
17125
17126         * gdk/win32/gdkfont.c
17127         * gtk/gtkfontsel.c: Guard against some font weight and charset
17128         symbols being undefined (in mingw32 headers).
17129
17130         * gdk/win32/makefile.cygwin
17131         * gtk/makefile.cygwin
17132         * gtk/gtkthemes.c: No longer need to have differently named
17133         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
17134
17135 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
17136
17137         * docs/gtkfaq.sgml: Long awaited FAQ update.
17138
17139 1999-07-15  Tor Lillqvist  <tml@iki.fi>
17140
17141         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
17142         it. Obscure bit manipulation needed.
17143
17144         * gdk/win32/gdkevents.c: Logging.
17145         
17146         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
17147         style (file name include compiler name) for theme engines.
17148
17149 1999-07-13  Tor Lillqvist  <tml@iki.fi>
17150
17151         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
17152
17153         * gdk/win32/gdkevents.c: Fix long-standing bug in key
17154         events. The key.string wasn't zero-terminated, still we strdup'ed
17155         it in gdk_event_copy(). Synthesize crossing events for button
17156         events before possible propagation.
17157
17158         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
17159
17160         * gdk/win32/makefile.cygwin
17161         * gtk/makefile.cygwin: Use new DLL naming style for the
17162         GCC-compiled ones.
17163
17164         * gdk/win32/makefile.msc
17165         * gtk/makefile.msc: Cosmetics mostly.
17166
17167         * gtk/gtk.def: Add missing entry points.
17168
17169         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
17170
17171 1999-07-09  Tor Lillqvist  <tml@iki.fi>
17172
17173         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
17174         or height is zero. Don't print a warning if Pie or Arc fails, they
17175         always fail (?) for very narrow ellipses.
17176
17177         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
17178         the part or the destination window corresponding to source area
17179         outside of the source drawable's boundary.
17180
17181         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
17182         anything if less than two points.
17183
17184         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
17185         return NULL. Gtk cut-and-paste inside a single program works
17186         better this way. (It always gets the clipboard contents from
17187         Windows, not from its own copy, which is cleared anyway. I can't
17188         say I fully understand what happens... Emulating the X selection
17189         and property stuff is a bit of a mess.)
17190
17191         * gdk/win32/gdkevents.c
17192         * gdk/win32/gdkproperty.c: A bit more verbose logging.
17193
17194         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
17195         that never got deleted). Revamp gdk_region_shrink.
17196
17197         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
17198         after use.
17199
17200         * gtk/gtk.def: Add some missing entry points.
17201
17202         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
17203         component.
17204
17205 1999-07-04  Tor Lillqvist  <tml@iki.fi>
17206
17207         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
17208         Control-digits specially.
17209
17210 1999-07-03  Tor Lillqvist  <tml@iki.fi>
17211
17212         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
17213
17214 1999-06-28  Tor Lillqvist  <tml@iki.fi>
17215
17216         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
17217         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
17218         finding this.)
17219
17220 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
17221
17222         * gtk+.spec.in: Corrected some typos in files section.
17223         
17224 1999-06-15  Tor Lillqvist  <tml@iki.fi>
17225
17226         * README.win32: Mention using GNU gettext.
17227         * config.h.win32: Enable NLS stuff.
17228         * gtk/makefile.msc: Use GNU gettext.
17229         * gdk/win32/gdkdnd.c: Minor header reorg.
17230         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
17231         cosmetics.
17232         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
17233         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
17234
17235 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
17236
17237         * acinclude.m4
17238         * config.guess
17239         * config.status
17240         * ltconfig
17241         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
17242
17243 1999-05-30  Tor Lillqvist  <tml@iki.fi>
17244
17245         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
17246         SafeAdjustWindowRectEx. Don't override all calls to
17247         AdjustWindowRectEx by it, but use it only in two places: When
17248         creating a new top-level window and when moving a top-level
17249         window.
17250
17251         Use screen coordinate rectangle, not client rectangle, in
17252         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
17253         when we try to place a window so that the decoration (mainly,
17254         title bar) isn't visible.
17255
17256         These changes fix the bug that showed up for instance as the
17257         GIMP's saved top-level windows moving right and down (by an amount
17258         equal to the window decoration) for each session. This bug showed
17259         up also in testgtk's "Saved Position".
17260
17261         gdk_window_resize also redone a bit.
17262
17263 1999-05-25  Tor Lillqvist  <tml@iki.fi>
17264
17265         * gtk/testgtkrc: Add (commented out) Windows-style theme
17266         include line.
17267
17268         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
17269
17270 1999-05-18  Tor Lillqvist  <tml@iki.fi>
17271
17272         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
17273         gdkx.h to a gdk subdirectory, so that applications can include
17274         these with <gdk/*.h> without trouble.
17275
17276         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
17277         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
17278         have their bitmap destroyed.
17279
17280         * gdk/win32/gdk.def: Add gdk_root_parent.
17281
17282 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
17283
17284         * configure.in
17285           gtk-config.in
17286           ltconfig
17287           ltmain.sh     
17288           gtk/Makefile.am: changes to compile nicely (with xlib) 
17289           on BeOS
17290
17291 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
17292
17293         * acinclude.m4
17294         * config.guess
17295         * config.sub
17296         * ltconfig
17297         * ltmain.sh: upgrade to libtool 1.3
17298
17299 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
17300
17301         * gtk/gtkclist.c:
17302         * gtk/gtkctree.c: merges from gtk-1-2
17303
17304 1999-04-25  Tor Lillqvist  <tml@iki.fi>
17305
17306         Support added for building using a GNU toolchain on Win32,
17307         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
17308
17309         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
17310         * config.h.win32: Changes for gcc.
17311         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
17312         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
17313         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
17314         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
17315         Protect shl stuff unavaiilable with mingw32 headers.
17316         * gdk/win32/gdkevents.c: Fix typo.
17317         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
17318         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
17319         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
17320         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
17321         the mingw32 headers.
17322         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
17323         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
17324         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
17325         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
17326         Test for NATIVE_WIN32, not _MSC_VER.
17327         * gtk/gtkmain.c: No use warning about developer version on Win32,
17328         there aren't any non-developer versions anyhow.
17329         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
17330         * gtk/makefile.msc: Use pthread from another directory. Minor other
17331         changes. 
17332
17333 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17334
17335         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17336           default filter from the list
17337
17338 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
17339
17340         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
17341          when gtk_widget_grab_default() is called for a widget that
17342          is not within a GtkWindow.
17343
17344 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
17345
17346         * docs/gtk_tut.sgml, examples/clist.c: use a
17347           scrolled window in the clist example. Minor
17348           tutorial fixes.
17349
17350 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
17351
17352         * docs/gtk_tut.sgml: Style check from David King
17353           <dking@youvegotmail.net>
17354
17355 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
17356
17357         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
17358         compile with unknown value of GDK_WINDOWING
17359
17360 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
17361
17362         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
17363         after the rule is fired.
17364         (install-exec-local): Install gdkconfig.h only if the contents are
17365         different from the currently installed gdkconfig.h.
17366
17367 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
17368
17369         * gdk/Makefile.am (configexecincludedir): Rename from 
17370         configincludedir so that gdkconfig.h will be installed 
17371         as part of `make install-exec'. 
17372
17373 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
17374
17375         * acinclude.m4
17376         * config.guess
17377         * config.sub
17378         * ltconfig
17379         * ltmain.sh: upgrade to libtool 1.2f
17380
17381         * autogen.sh: libtool is not required to autogen gtk+
17382
17383         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
17384         needed)
17385
17386 1999-03-18  Tor Lillqvist  <tml@iki.fi>
17387
17388         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
17389         declaring gdk variables exported/imported from the DLL. New image
17390         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
17391         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
17392         GDK_DRAG_PROTO_OLE2.
17393
17394         * gdk/gdk.h: Merge in Win32 version: Two new functions,
17395         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
17396         declared only for the Win32 version, but could be in the X11
17397         version as well. (Needed for a Xlib-less gdk_imlib.)
17398         gdk_color_hash should have only one parameter. Declare
17399         gdk_threads_mutex with GDKVAR.
17400         
17401         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
17402         just one parameter.
17403
17404         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
17405         per pixel, not bits.
17406
17407         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
17408         Fetch bpp (which means bits-per-pixel here) from another place on
17409         Win32. Accept also depth==32 (which we might get on Win32) with
17410         bpp==32.
17411
17412         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
17413         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
17414         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
17415         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
17416         in the backend-dependent directory, not in the common gdk
17417         directory.
17418
17419         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
17420         headers.
17421
17422 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
17423
17424         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
17425         want to use the Gtk+ devel version (which is true, and yes - even i am
17426         currently working with the 1.2.x branch). so everyone reading this, you
17427         probably want to issue
17428         cvs checkout -r glib-1-2 glib
17429         and
17430         cvs checkout -r gtk-1-2 gtk+
17431         as your next two comands.
17432
17433 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
17434
17435         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
17436         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
17437
17438         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
17439         file. strongly deprecated the GTK_HAVE_* macros, we provide
17440         GTK_CHECK_VERSION() for people that need to check for certain
17441         Gtk+ versions.
17442
17443         * gtk/gtkcompat.h: removed this from CVS.
17444         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
17445         idea right from the start, it just didn't seem like that back then.
17446
17447 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
17448
17449         * merges from gtk-1-2:
17450
17451 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
17452
17453         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
17454         item factory class has been created.
17455         (gtk_item_factory_parse_rc): likewise.
17456
17457         * gtk/gtkmenu.c:
17458         keep proper references for old_active_menu_item.
17459         (gtk_menu_reparent): unset the usize of the new parent,
17460         so the menu can sanely be size requested and we don't get nasty screen
17461         artefacts upon next reparentation.
17462         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
17463         enter notify. only synthesize enter notifies if the pointer really is
17464         inside the event window.
17465         (gtk_menu_popdown): use gtk_menu_shell_deselect().
17466         (gtk_menu_popup): move the background setting stuff into
17467         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
17468
17469         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
17470         gtk_menu_shell_select_item() to select the new item.
17471         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
17472         do the right thing for deselection as well.
17473
17474 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
17475
17476         * gtk/gtkwidget.[hc]:
17477         (gtk_widget_accelerators_locked): return whether a widget's accelerators
17478         are locked.
17479
17480         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
17481         existing accelerators if the widget's accelerators are locked.
17482
17483 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
17484
17485         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
17486
17487         * gtk/gtkmenu.c: truely forward key press and key release events to
17488         the menu widget from the toplevel or tearoff window. we can't simply
17489         connect to that, we need to stop further processing of the events as
17490         well.
17491
17492 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
17493
17494         * gtk/gtkmenu.c:
17495         (gtk_menu_key_press): pass event->keyval, event->state to
17496         gtk_accelerator_valid, instead of event->keyval twice.
17497         refuse to install single letter accelerators for menus that use
17498         single letter shortcuts.
17499
17500         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
17501         gtk_menu_ensure_uline_accel_group().
17502
17503         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
17504         which will always return an uline accel group, made
17505         gtk_menu_get_uline_accel_group() return NULL if the group isn't
17506         yet created.
17507
17508 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
17509
17510         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
17511
17512         * gtk/gtkclist.c (gtk_clist_column_title_passive):
17513         Leave button sensitive, trap  button_press, button_release,
17514         motion_notify, enter_notify and leave_notify events instead.
17515         (gtk_clist_column_title_active): disconnect event handler.
17516         (gtk_clist_drag_data_get): fixed memory leak. Reported by
17517         Guillaume Laurent <glaurent@worldnet.fr>
17518
17519 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
17520
17521         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
17522         width/height mixups.
17523
17524         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
17525         if needed.
17526
17527 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
17528
17529         * gtk/testgtk.c (create_item_factory): unref the item factory after
17530         window's destruction.
17531
17532         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
17533         count on the menu shell around the menu item's activation, since the
17534         signal emission may cause menu shell destruction.
17535
17536         * gtk/gtkitemfactory.c:
17537         the previous code leaked one accel group per menu. we use
17538         gtk_menu_get_uline_accel_group() now to fix that, and with that
17539         also create the underline accelerator group of the menus only if
17540         required (i.e. an underline accelerator has been specified).
17541         (gtk_item_factory_construct):
17542         (gtk_item_factory_create_item): removed code that would create an
17543         extra accel group for the menu (and leak references).
17544         (gtk_item_factory_create_item): adapted the underline accelerator
17545         installation code to properly feature gtk_menu_get_uline_accel_group().
17546
17547         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
17548         menu->accel_group, this may return NULL if the accelerator group
17549         hasn't been set yet.
17550         added gtk_menu_get_uline_accel_group() to retrive the underline
17551         accelerator group of the menu, this will be created on demand
17552         and proper care is taken about its reference count.
17553
17554         * gtk/gtkitemfactory.h:
17555         * gtk/gtkitemfactory.c:
17556         dumped the approach of keeping a widgets by action list on the
17557         factory since the factory<->widget destroy negotiation didn't work
17558         and would be hard to get going at all. instead we keep a list of
17559         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
17560         persistant throughout a program's life time).
17561         also, i removed the static const gchar *key_* variables, and made
17562         them inline strings (they weren't actually used anyways).
17563         (gtk_item_factory_add_item): update ifactory->items.
17564         (gtk_item_factory_destroy): destroy ifactory->items (and remove
17565         the item factory pointer from the remaining ifactory widgets).
17566         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
17567         list to find the widget.
17568         (gtk_item_factory_get_item): new function that works around
17569         gtk_item_factory_get_widget() limitations, this function will only
17570         return menu items, even for <Branch> entries.
17571
17572 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17573
17574         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17575         font hash table, if we have a GdkFontPrivate entry for this font
17576         already, simply increment its reference count, provided by Olaf Dietsche
17577         <olaf.dietsche+list.gtk@netcologne.de>.
17578
17579         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17580         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17581
17582 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
17583
17584         * gtk/gtkcontainer.c:
17585         (gtk_container_add_with_args):
17586         (gtk_container_addv):
17587         (gtk_container_add): before adding a child to a conatiner, make sure
17588         it is (default) constructed, this is neccessary because under certain
17589         circumstances the child will get relized and mapped immediatedly, in
17590         which case it has to be constructed already.
17591
17592 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
17593
17594         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
17595         values > 1 as TRUE also.
17596
17597 1999-03-16  Tor Lillqvist  <tml@iki.fi>
17598
17599         * README.win32: New file.
17600                 
17601         * configure.in: Check for lstat.
17602
17603         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
17604         completeness.
17605
17606         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
17607
17608         * gtk/gtk.def: Removed CRs.
17609
17610         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
17611         ..\gdk\win32).
17612
17613         * gdk/win32/makefile.msc: Correct upwards relative paths.
17614         
17615 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
17616
17617         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
17618           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
17619           it was connecting a void function to expose_event and the int
17620           returning function to the draw signal
17621
17622 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
17623
17624         * configure.in:
17625         Use correct path to libgmodule.la when ref'ing uninstalled copy
17626         of glib.  (Already in stable branch, Bug #417)
17627
17628 1999-03-15  Tor Lillqvist  <tml@iki.fi>
17629
17630         Win32 merge and general portability stuff:
17631                 
17632         * acconfig.h,configure.in: Check for <sys/time.h>.
17633
17634         * gdk/win32: New directory (actually, been there for a while).
17635         
17636         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
17637         NATIVE_WIN32, and use these. Always case fold on Win32. No
17638         backslashed escapes on native Win32.
17639
17640         * gtk/{gtk.def,makefile.msc}: New files.
17641
17642         * gtk/Makefile.am: Add above new files.
17643         
17644         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
17645         instead of <strings.h>.
17646
17647         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
17648         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
17649         <unistd.h> appropriately.
17650
17651         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
17652         Use ABS() (from <glib.h>) instead of abs().
17653         
17654         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
17655         of gtk (and thus glib) headers, so that WIN32 will be
17656         defined. With MS C, include <direct.h> for mkdir prototype.
17657
17658         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
17659         some casts, needed by MS C.
17660
17661         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
17662         implemented).
17663
17664         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
17665         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
17666         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
17667
17668         * gtk/gtkmain.h: Mark variables for export/import on Win32.
17669                 
17670         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
17671         the event is not a hint, or its window is not the slider. Needed
17672         on Win32, at least.
17673
17674         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
17675         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
17676         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
17677         a subdirectory of the Windows directory as gtk system
17678         configuration directory.
17679
17680         * gtk/gtkselection.c: No chunks on Win32.
17681
17682         * gtk/gtksocket.c: Not implemented on Win32.
17683
17684         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
17685
17686         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
17687
17688         * gtk/maketypes.awk: Declare variables with a macro that expands to
17689         necessary export/import magic in the case of Win32.
17690                 
17691         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
17692
17693 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
17694
17695         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
17696         since those were meant only for gdki18n.h.  
17697         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
17698         for widechar tests.
17699         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
17700
17701 1999-03-13  Tor Lillqvist  <tml@iki.fi>
17702
17703         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
17704         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
17705
17706         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
17707         installed) to CFLAGS.
17708
17709         * gdk/Makefile.am: Add rules for gdkconfig.h.
17710
17711         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
17712         APIs.
17713
17714         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
17715         gdkx.h anyway when compiling for X11.
17716         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
17717         general): Merge in Win32 version.
17718         
17719         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
17720         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
17721         expansion (if we don't have HAVE_PWD_H), allow for drive
17722         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
17723         included code from Craig Setera's port to Win32 (the one that uses
17724         X11, and the cygwin dll), even if it probably will be abandoned.
17725
17726         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
17727         the user entered one herself.  This way one can complete *.h and
17728         don't get matches on any .help files, for instance.
17729         
17730 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17731
17732         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17733         font hash table, if we have a GdkFontPrivate entry for this font
17734         already, simply increment its reference count, provided by Olaf Dietsche
17735         <olaf.dietsche+list.gtk@netcologne.de>.
17736
17737         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17738         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17739
17740 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17741
17742         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
17743         the number of calls to gdk_draw_point() (and thus to X) by
17744         clipping the points by hand.
17745
17746         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
17747         the clip parameter.
17748         (gtk_handle_box_paint): Only paint the handle if the expose area
17749         intersects it.
17750
17751 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17752
17753         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
17754
17755 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
17756
17757         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
17758         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
17759
17760 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17761
17762         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
17763          textmode (O_TEXT) for OS/2 version.
17764
17765 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
17766
17767         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
17768         GtkSpinButton, "input" and "output", to make the output more flexible.
17769         The user has to provide a mapping between adjustment->value and the
17770         output string (and vice versa, if the spin button is editable). 
17771         See testgtk for examples.
17772
17773 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
17774
17775         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
17776         new one.
17777         
17778         * configure.in: set gtk+ version to 1.3.0.