]> Pileus Git - ~andy/gtk/blob - ChangeLog
geez, don't call g_list funcs on GSList
[~andy/gtk] / ChangeLog
1 2001-06-08  Havoc Pennington  <hp@redhat.com>
2
3         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
4         don't call g_list funcs on GSList
5
6         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
7         gtk_container_focus(), since some widgets have focusable locations
8         which are not other widgets. These widgets should not have to be 
9         containers just to manage the focus. For example, GtkHSV is
10         currently a container for no good reason. Also, this cleans
11         up the "if (is_container && is_sensitive && is_drawable)
12         container_focus ()" mess in widget implementations.
13
14         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
15         function, and have it just call gtk_widget_child_focus().
16
17         * gtk/gtkhsv.c: derive from widget not container
18         
19         Throughout: fix to reflect GtkContainer::focus change
20         
21 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
22
23         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
24         range.  Fix bug #55921
25
26         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
27         (#55920).
28
29 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
30
31         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
32         and gdk_keymap_get_current_direction().
33
34         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
35           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
36         the current locked group, use it to set the keymap
37         direction.
38
39         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
40         to determine whether we draw a split cursor or use
41         a jumping cursor based on the current direction.
42
43         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
44         Obey the split cursor setting. 
45
46 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
47
48         * gtk/gtkimmulticontext.c (activate_cb): Only activate
49         when toggling on, not when toggling off... (#55906)
50
51 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
52
53         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
54         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
55         in docs. (#55812, Vitaly Tishkov)
56
57 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
58
59         * demos/gtk-demo/main.c (create_tree): Changed signal name from
60         selection_changed to changed in signal connection to GtkTreeSelection,
61         also used g_signal_connectc since GtkTreeSelection is now a GObject.
62
63 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
64
65         * gtk/gtktreeselection.c: Now it's a GObject instead of a
66         GtkObject.  The GtkTreeSelection::selection_changed signal is now
67         the GtkTreeSelection::changed signal.
68
69         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
70         object.
71
72         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
73         object.
74
75 2001-06-07  Havoc Pennington  <hp@redhat.com>
76
77         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
78
79 2001-06-07  Havoc Pennington  <hp@redhat.com>
80         
81         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
82         (not tested yet because with absolute path to srcdir I can't build
83         atk, but it was broken anyway so this may help) 
84
85 2001-06-07  Havoc Pennington  <hp@redhat.com>
86
87         * configure.in: output m4macros/Makefile
88         
89 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
90
91         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
92         buttons.  Fixes #55460 reported by matthiasc@poet.de.
93
94 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
95
96         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
97         expansion/collapsing so it only happens in one place.
98         (gtk_tree_view_real_expand_row): ditto.
99
100 2001-06-07  Havoc Pennington  <hp@redhat.com>
101
102         * tests/Makefile.am: add missing -I flag
103
104         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
105
106         * configure.in: use pkg-config to see if GModule is
107         supported; fix to properly turn on included loaders 
108         when GModule isn't supported; don't use AC_CHECK_LIB 
109         when libs are not installed yet
110
111         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
112
113         * Makefile.am (SUBDIRS): add m4macros subdir
114
115         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
116         dependencies also.
117
118 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
119
120         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
121         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
122
123 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
124
125         * gtk/gtktreeview.c
126         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
127         bindings to expand and collapse rows.
128         (gtk_tree_view_real_select_cursor_parent): New key binding.
129         (gtk_tree_view_real_toggle_cursor_row): New key binding.
130
131         * gtk/gtkmarshal.list: new
132         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
133
134 2001-06-06  Havoc Pennington  <hp@redhat.com>
135
136         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
137
138         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
139         Down to move visually rather than logically, since it confuses 
140         people. Add -/+ and Ctrl--/+ bindings for logical movement.
141
142 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
143
144         * gtk/gtktooltips.h: Include gtkwidget.h 
145         (#55798, Karl Nelson)
146
147         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
148         a valid latin-1 character. (Marc Lehmann, #35467)
149
150         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
151         (Marc Lehmann, #35467)
152         
153 2001-06-05  Alex Larsson  <alexl@redhat.com>
154
155         * demos/gtk-demo/appwindow.c (do_appwindow):
156         Don't swap the order of the args to gtk_widget_destroyed.
157
158         * tests/testgtk.c (destroy_properties):
159         Don't crash when the properties window is destroyed.
160
161         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
162         Use with_mnemonics to handle the case of stock items with
163         underscores in them.
164
165 2001-06-05  Havoc Pennington  <hp@redhat.com>
166
167         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
168         gtk_text_iter_reorder
169
170 2001-06-05  Havoc Pennington  <hp@redhat.com>
171
172         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
173
174 2001-06-05  Havoc Pennington  <hp@redhat.com>
175
176         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
177         to the range that was set
178
179         * gtk/gtkrange.c: add value_changed signal, primarily 
180         intended for use with GtkScale
181         (gtk_range_set_increments): new function
182         (gtk_range_set_range): new function with weird name
183         (gtk_range_set_value): new function
184         (gtk_range_get_value): new function
185
186         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
187         from gtk_spin_button_get_value_as_float(). Compat #define
188         added for get_value_as_float.
189
190         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
191
192         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
193
194 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
195
196         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
197
198 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
199
200         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
201
202         * tests/testgtk.c (create_tooltips): Remove usage of
203         gtk_widget_set().
204
205 2001-06-05  Havoc Pennington  <hp@redhat.com>
206
207         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
208
209         Applying patch from Jeff Franks, with function docs added.
210         
211         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
212         remove call to set_mnemonic_widget, change docs a bit.  
213
214         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
215         new function
216
217         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
218         new function
219
220         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
221
222         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
223         function
224         (gtk_radio_button_new_with_mnemonic_from_widget): new function
225
226         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
227         new function
228
229         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
230         function        
231
232         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
233         auto-selection of mnemonic widget.
234
235 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
236
237         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
238         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
239         (gtk_tree_view_column_set_min_width): ditto.
240
241 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
242
243         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
244         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
245
246 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
247
248         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
249         gtk_clist_thaw().
250
251 2001-06-04  Havoc Pennington  <hp@pobox.com>
252
253         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
254         releases for buttons 6, 7
255
256 2001-06-04  Havoc Pennington  <hp@redhat.com>
257
258         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
259         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
260         #55562
261
262 2001-06-04  Havoc Pennington  <hp@redhat.com>
263
264         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
265         where text_view->layout == NULL by assuming its size is 0, 
266         i.e. same as if we haven't done any reflow. Reported by 
267         Hidetoshi Tajima #55448 
268
269 2001-06-04  Havoc Pennington  <hp@redhat.com>
270
271         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
272         and 7 for scroll left/right, from Thomas Broyer
273
274 2001-05-10  Havoc Pennington  <hp@redhat.com>
275
276         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
277         we need to parse the xsetting as if it were an RC file string.
278
279         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
280         value of palette from settings, not from static variable
281
282         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
283         xsettings translation table
284
285         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
286         hardcoding the toolbar style conflicts with new customizable 
287         toolbar style philosophy
288         (gtk_toolbar_class_init): add settings for default toolbar style;
289         these are used unless the app specifically forces a toolbar style
290
291         * gtk/gtksettings.c (settings_install_property_parser): only
292         return at the start if we warn and parser == NULL
293
294         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
295         palette changed handler so we don't notify dead color selections
296
297         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
298         xthickness/ythickness of 0 or 1 properly 
299         (gtk_default_draw_resize_grip): clear the background behind the
300         resize grips, and align to bottom right if we square the 
301         area to be drawn.
302
303         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
304         statusbar label to 1, so it doesn't make toplevels resize oddly
305         (gtk_statusbar_size_request): add grip size to request
306         (gtk_statusbar_size_allocate): hack so the hbox still works with 
307         the grip size in the request
308
309         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
310         bug where showing all on a toplevel makes the toolbar 
311         button text appear despite the toolbar mode
312
313         * gtk/gtkmenubar.c: add internal padding style property
314
315         * gtk/gtktoolbar.c: Add internal padding style property; add
316         shadow type style property
317
318         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
319         state; and put Container::border_width outside the frame
320
321         * gtk/gtktextview.c: don't draw focus rectangle if we're in
322         interior focus mode, we just use blinking cursor
323
324 2001-06-04  Havoc Pennington  <hp@redhat.com>
325
326         * configure.in: Make gdk-pixbuf have same version number as GTK
327
328 2001-06-04  Havoc Pennington  <hp@redhat.com>
329
330         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
331         digits greater than 6. If there actually are limits (which there
332         likely aren't), should clamp to them not warn.
333         (gtk_spin_button_new_with_range): don't take log of 0
334         (gtk_spin_button_size_request): use digits to compute size
335         request, rather than step increment.
336
337         * tests/testgtk.c (create_spins): test larger values of digits
338         
339         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
340         font on map not expose, so we don't get weirdness during scrolling
341
342 2001-06-04  Havoc Pennington  <hp@redhat.com>
343
344         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
345         Sam Solon, bug #54577, update value even if not drawable.
346
347 2001-06-04  Havoc Pennington  <hp@redhat.com>
348
349         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
350         SCROLL_LEFT, reported by Thomas Broyer.
351
352 2001-06-04  Havoc Pennington  <hp@redhat.com>
353
354         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
355         Process updates immediately, to prevent funny lag effect
356         when scrolling, at some mild potential efficiency cost.
357
358 2001-06-04  Havoc Pennington  <hp@redhat.com>
359
360         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
361         slider on the click.
362
363 2001-06-03  Havoc Pennington  <hp@pobox.com>
364
365         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
366         hscale/vscale details, so we can use it for scrollbar as well.
367
368         * tests/testgtk.c (reformat_value): honor digits from GtkScale
369
370         * gtk/gtkenums.h (GtkTroughType): Remove this enum
371         (GtkScrollType): add START and END from GtkTroughType
372
373         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
374         its x/y arguments
375
376         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
377         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
378         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
379         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
380         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
381
382         Notable changes in the process:
383          
384         - stepper_size style property is the height for vertical 
385           ranges, width for horizontal; the other dimension matches
386           the trough size
387         - add ability to do NeXT-style steppers (and several other styles
388           that don't make any sense)
389         - added min_slider_length, fixed_slider_length properties to
390           GtkScrollbar
391         - cleaned some private (or at least useless) functions out of
392           gtkscale.h    
393         - moved bindings to GtkScale from subclasses, even arrow keys,
394           since blind users don't know scale orientation.
395         - change move_slider action signal to use new GtkScrollType,
396           remove GtkTroughType argument
397         - digits rounds the values a range will input to the given 
398           number of decimals, but will not try to force adjustment 
399           values set by other controllers. That is, we no longer
400           modify adjustment->value inside a value_changed handler.
401         - added getters for GtkScale setters
402         - middle-click begins a slider drag
403         
404 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
405
406         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
407         getting the focus code to work.
408         (gtk_tree_view_class_init): Add a bunch of keybindings.
409
410         * gtk/gtktreeviewcolumn.c
411         (gtk_tree_view_column_set_cell_data_func):
412         s/GtkCellDataFunc/GtkTreeCellDataFunc.
413         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
414         of "properties_changed" to help justify the death of the latter
415         signal. (-:
416
417         * tests/testtreefocus.c (main): Let some columns be focussable to
418         test focus better.
419
420 2001-06-01  Havoc Pennington  <hp@redhat.com>
421
422         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
423         
424         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
425         overwrite in overwrite mode if we already deleted the selection
426         and replaced it with new text.  
427
428         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
429         selection to an empty range, clear the clipboard if we owned it.
430         (gtk_label_set_selectable): give up selection if we become
431         unselectable.
432         (gtk_label_state_changed): override state changed to unselect text
433         when insensitive
434         (get_text_callback): add paranoia check that indexes aren't
435         outside of label->text
436         (gtk_label_select_region): make -1 for start_offset mean "end of
437         label," for consistency with GtkEditable
438
439         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
440         GTK_DIALOG_NO_SEPARATOR flag
441
442 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
443
444         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
445         notifications on non-existant "enable_arrow_keys".
446         (#53753, Skip Montanaro)
447
448 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
449
450         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
451         GDK_TYPE_RECTANGLE.
452
453         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
454         of allocation argument be GDK_TYPE_RECTANGLE.
455
456 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
457
458         * gtk/gtkoptionmenu.c: Account for the fact that the border
459         width is _outside_ the window. (Fixes #54585, bug found
460         by Bastien Nocera.)
461
462 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
463
464         * gtk/gtksettings.c (gtk_settings_get_property): Validate
465         value from GDK settings against parameter spec.
466
467         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
468         to temporary values and use g_value_transform(), since
469         thinking that GValue was going to be easy or efficient
470         to use was, of course, a mistake.
471
472         * gtk/gtksettings.c: Add cursor blink setting.
473         
474         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
475
476         * gtk/gtkentry.c: Add cursor blinking.
477
478         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
479         cursor blink global settings.
480
481         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
482         for :text_position in places where it is missing.
483
484 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
485
486         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
487
488 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
489
490         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
491         not pkg-config. (#51032)
492
493         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
494         (fixes #51952, James Henstridge)
495         
496 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
497
498         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
499         Rename to the more correct gtk-go-up.
500
501         * gtk/stock-icons/stock_menu_sort_ascending.png:
502         Added new file.
503         
504         * gtk/stock-icons/stock_menu_sort_descending.png:
505         Changed to show descending instead of ascending.
506
507         * gtk/gtkiconfactory.c:
508         Added menu size icon to sort ascending.
509
510         * gtk/stock-icons/Makefile.am:
511         Added stock_menu_sort_ascending.png.
512         
513         * gtk/gtkseparatormenuitem.c:
514         Use correct typenames.
515
516 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
517
518         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
519         gulong as in GSignal.
520
521 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
522
523         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
524         instances of GtkCellRenderer in code (all but dnd icon code).
525         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
526         there, and I can do multiple Cells per column.
527
528         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
529
530         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
531         when model was unreffed prior to removing the row reference.
532
533 2001-05-25  Havoc Pennington  <hp@redhat.com>
534
535         * gtk/gtkiconfactory.c: fix so that default icons are created if 
536         you call gtk_stock_list_ids()
537
538         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
539         in list
540
541 2001-05-25  Havoc Pennington  <hp@redhat.com>
542
543         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
544         set can render without falling back to missing image icon
545
546         * gtk/gtktextview.c (gtk_text_view_size_request): request full
547         size of text, instead of random values
548
549         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
550         size of tree view, instead of random values
551
552         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
553         image in an appropriate size
554
555         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
556         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
557
558         Throughout: fix GTK_STOCK_BUTTON_ instances
559         
560         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
561         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
562         Add a bunch of new stock items/icons
563
564         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
565         new function, convenience for inserting columns with a data func
566
567         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
568         (_gtk_icon_factory_list_ids): use list of all factories to
569         generate a list of all known IDs
570
571         * gtk/gtkstock.c (gtk_stock_list_ids): replace
572         gtk_stock_list_items() with a function that returns all IDs known
573         including those for GtkIconFactory.
574
575 2001-05-25  Hans Breuer  <hans@breuer.org>
576
577         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
578         work -> check boxes and radio buttons are drawn now, even on win9x.
579         Improved line settings a bit, still no clue how to get really dotted
580         lines on win9x, on NT it's PS_ALTERNATE.
581
582         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
583         GDK_HINT_MIN_SIZE as well
584
585         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
586
587         * gtk/gtk.def : updated
588
589         * gtk/gtktreeprivate.h : change column_drop_func to be a function
590         pointer not a function pointer pointer
591
592         * tests/testdnd.c : include <stdlib.h> for putenv prototype
593
594         * tests/testsocket.c : made it compile on win32 again
595
596         * tests/makefile.msc : one more test-app uses prop-editor.obj
597
598 2001-05-22  Havoc Pennington  <hp@pobox.com>
599
600         * gtk/gtkbin.c (gtk_bin_get_child): New function
601
602 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
603
604         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
605         to ignore when doing compose processing.
606
607 2001-05-22  Joe Shaw  <joe@ximian.com>
608
609         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
610         Simplify as suggested by Havoc. Just get the last iter and work
611         backward to the tag instead of getting a line and working back from
612         there. Fixes passing in an invalid offset to
613         iter_init_from_byte_offset().
614
615 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
616
617         * gtk/gtktreeview*.h: 
618         * gtk/gtkcell*.h:
619         * gtk/gtk*store.h:
620         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
621         macros to all objects.
622
623 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
624
625         * gtk/gtkcellrenderertext.c
626         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
627         with very large (TM) amounts of text.  May be moved to
628         GtkCellRenderer in the future, though I'm not sure it wants to be
629         this accessible.
630
631         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
632         More sanity brought to this class.  I like it.
633
634         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
635         case.  Kids, don't try this at home.
636
637         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
638         convenience function.
639
640         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
641
642 2001-05-21  Alexander Larsson  <alexl@redhat.com>
643
644         * gtk/gtkfontsel.c:
645         Added properties. Based on patch by Lee Mallabone.
646
647         * gtk/gtkruler.c:
648         * gtk/gtkhruler.c:
649         * gtk/gtkvruler.c:
650         * gtk/gtktext.c:
651         * gtk/gtktextview.c:
652         Converted GtkArg to GParam. Based on patches by John Margaglione.
653
654         * tests/Makefile.am:
655         * tests/testtext.c:
656         Add a property editor to testtext.
657         
658 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
659
660         * gtk/gtk{h,v,}paned.c: Only show the separator if 
661
662         * configure.in: Fixed reversed conditional causing all image
663         libraries to be linked in.
664
665 2001-05-21  Joe Shaw  <joe@ximian.com>
666
667         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
668         that top_y needs to be >= 0.
669
670 2001-05-11  Havoc Pennington  <hp@pobox.com>
671         
672         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
673         losing connection to the X server.
674
675 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
676
677         * configure.in: Start checks for X from pangox/pangoxft
678         CFLAGS to avoid duplicate libraries.
679
680         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
681
682         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
683         to include gobject.
684         
685 2001-05-18  Alexander Larsson  <alexl@redhat.com>
686
687         * gtk/gtkspinbutton.c:
688         Convert GtkArgs to GParams. Based on patch by John Margaglione.
689         Also do size request reasonable for MAXDOUBLE. Previously it printed
690         the limits to a buffer and overran it. Instead do it using log10() and
691         limit the width to 10 digits.
692         
693         * gtk/gtkwidget.c (gtk_widget_get_property):
694         Correctly handle setting the parent property to NULL.
695
696 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
697
698         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
699         style attributes even if the widget isn't realized.
700
701         * demos/gtk-demo/main.c: Use a slightly smaller font.
702
703 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
704
705         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
706         This is something that only a widget writer would ever want
707         to change.
708
709         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
710         gtk_signal_emit_by_name().
711
712         * gtk/gtkviewport.c: Fix some warnings.
713
714         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
715         allowing the requisitions of multiple widgets to be grouped
716         together.
717
718         * tests/testgtk.c: Add GtkSizeGroup test
719
720         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
721
722         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
723         warnings.
724
725         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
726
727 2001-04-28  Martin Baulig  <baulig@suse.de>
728
729         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
730         to gtk_image_menu_item_set_icon() and made it work if there's already
731         an image.
732         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
733         (gtk_image_menu_item_new_with_label): New function.
734
735 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
736
737         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
738         highlighting code!!!!  The result is okay so long as you don't try
739         to stress it.  It also highlights a bug in the TextView so it's in
740         an unproportional font right now until it's fixed.
741
742         *demos/gtk-demo/*.c: Clean up code a bit to make it
743         ugly-parser(TM) friendly. (-:
744
745 2001-05-17  Joe Shaw  <joe@ximian.com>
746
747         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
748         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
749         if it is only partially onscreen.
750
751 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
752
753         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
754         not by characters.
755
756         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
757         are not zero or one; that is, when graphemes of multiple characters
758         are involved.
759
760         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
761         FIXME.
762
763 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
764         
765         * gtk/gtkbbox.c:
766         Add properties, based on patch by Lee Mallabone.
767
768         * gtk/gtknotebook.c:
769         * gtk/gtktoolbar.c:
770         Convert from GtkArg to GParam, based on patch by John Margaglione.
771         
772         * gtk/gtkhscale.c:
773         * gtk/gtkvscale.c:
774         * gtk/gtkhscrollbar.c:
775         * gtk/gtkvscrollbar.c:
776         * gtk/gtkrange.c:
777         Move adjustment property to GtkRange.
778
779         * gtk/gtklabel.c:
780         Setup mnemonics on property changes
781
782         * gtk/gtkwidget.c (gtk_widget_get_property):
783         GdkExtensionMode is an enum, not a flag. Set it with
784         g_value_set_enum ().
785
786         * tests/prop-editor.c:
787         Better propery editor.
788
789         * tests/testgtk.c:
790         Add new property test. Pass zero to the property editor to
791         get properties from all derived types.
792         
793 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
794
795         * autogen.sh (have_automake): Require libtool-1.4,
796         automake-1.4p1.
797
798         * acinclude.m4: Remove libtool macros.
799
800         * gdk-pixbuf/Makefile.am: Add dependencies to loade
801         modules.
802
803         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
804         for libgdk.
805
806         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
807         libgdk.la for libgtk.
808
809         * modules/input/Makefile.am: Make modules have full
810         dependencies.
811
812 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
813
814         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
815         #54699 where paths weren't being checked for correctness.
816
817 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
818
819         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
820         in any order you wan, whether or not the column is added to the
821         tree, or the tree is realized.  Yay!
822
823         * gtk/gtktreeviewcolumn.c
824         (gtk_tree_view_column_setup_sort_column_id_callback): handle
825         sorting columns a lot saner
826
827         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
828         new function to actually set wether or not a column is
829         reorderable.
830
831         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
832         if we have 'em.
833
834         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
835         Fix nasty bug where we were showing the button just before
836         realizing it.  As a result, the parent window was
837         tree_view->window instead of tree_view->priv->header_window.
838
839         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
840         to let you easily reorder a list or tree.
841
842 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
843
844         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
845         from args to properties.
846
847 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
848
849         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
850         from args to properties. (#51957)
851
852         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
853         calls to after ->set_property call.
854
855 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
856
857         * tests/prop-editor.c: Block against redundant changes.
858
859         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
860         properties.
861
862 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
863
864         * gdk/gdkpixmap.h: Remove creative formatting.
865
866 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
867
868         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
869         property API. (#51669)
870
871         * gtk/gtkscale.c: Patch from John Margaglione converting to
872         property API. (#51891)
873
874         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
875         to property API. (#50985)
876
877 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
878
879         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
880         buffering state across expose event, so we still call end_paint().
881
882 2001-05-11  Alexander Larsson  <alexl@redhat.com>
883
884         * gtk/gtkhsv.c (paint_triangle):
885         Expose the ring in the triangle at the correct place when
886         exposing just a part of the triangle.
887
888         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
889         Return FALSE, or window focusing will not work.
890
891 2001-05-11  Havoc Pennington  <hp@pobox.com>
892
893         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
894         #54144
895
896         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
897         bug #54330
898
899 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
900
901         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
902         propagate exposes to NULL child.
903
904         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
905         against not having one of the scrollbars.
906
907         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
908         we don't keep a mnemonic window if we have no mnemonic installed.
909
910 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
911
912         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
913         it has the _important_ side effect of initializing a class.
914
915 2001-05-10  Alexander Larsson  <alexl@redhat.com>
916
917         * gdk/linux-fb/gdkprivate-fb.h:
918         Make sure you can compile out the implementation/wrapper assert
919         macros.
920
921         * gdk/linux-fb/gdkdrawable-fb2.c:
922         Check implementation/wrappers, initialize type for pixmap dummys.
923
924         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
925         Hide the cursor if reading from the screen.
926
927         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
928         Fix sign bug in tiling code.
929
930         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
931         Handle background pixmaps.
932
933 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
934
935         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
936         function to let user control where columns are dragged.
937
938         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
939         Escape is pressed.
940
941 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
942
943         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
944         "columns_changed" signal.
945         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
946         motion code to draw arrows to the side if indicator is outside the
947         widget.
948         (gtk_tree_view_map_expanded_rows): Implement.
949
950 2001-05-07  Alexander Larsson  <alexl@redhat.com>
951
952         * demos/testpixbuf-save.c: 
953         * demos/testpixbuf-drawable.c:
954         Include gdkfb.h on linux-fb.
955
956 2001-05-07  Alexander Larsson  <alexl@redhat.com>
957
958         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
959         New function for getting toplevel window at position.
960         (gdk_drag_find_window): Use get_toplevel_window () instead
961         of gdk_window_get_pointer(). (gdk_drag_status): Use
962         correct context for getting window.
963
964         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
965         g_strdup the atom name.
966
967         * gdk/linux-fb/gdkwindow-fb.c:
968         Costmetic fix.
969
970         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
971         Add code for changing cursor on linux-fb backend (same as
972         win32).
973
974 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
975
976         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
977         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
978         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
979         report was not for the development branch of GTK+, but it applies
980         anyways).
981
982 2001-05-04  Havoc Pennington  <hp@redhat.com>
983
984         * configure.in: fix some shell typos
985
986         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
987
988         * gtk/gtkimage.c: handle animations
989
990         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
991         border_width * 2, not just border_width
992
993         * gtk/gtkscale.c: add "format_value" signal to allow people
994         to override the way values are drawn.
995         (gtk_scale_get_value_size): fix width/height mistake,
996         and compute size from actual displayed text, not 
997         from made-up text.
998
999         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
1000         signal registration
1001
1002         * tests/testtext.c: Add "Remove all tags" menu item for testing
1003
1004         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
1005
1006         * demos/gtk-demo/main.c (main): add hack so we can find modules
1007         without installing gtk
1008
1009         * demos/gtk-demo/textview.c (insert_text): demo font scaling
1010
1011         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
1012         factor)
1013         (gtk_cell_renderer_text_set_property): remove some bogus
1014         g_object_notify
1015
1016         * gtk/gtktexttag.c: add "scale" property which is a font scaling
1017         factor
1018
1019         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
1020         to layout
1021
1022         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
1023         gtk_text_iter_is_first
1024
1025 2001-01-06  Hans Breuer  <hans@breuer.org>
1026
1027         * gdk/gdk.def : updated exports
1028
1029         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
1030         gdk won't compile anymore
1031  
1032         * gdk/win32/gdkevents-win32.c : initialize ret_val when
1033         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
1034         Improved gdk_flush () to not only do pending drawing operations
1035         but also process all currently pending events. This should make
1036         the behaviour more similar to the X11 version.  
1037
1038         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
1039         option needs to be set even if there is no GDK_GC_BACKGROUND.
1040         (gdk_win32_hdc_get) : use predraw_set_background () independent
1041         of value_mask. This allows to draw dashed lines leaving the original
1042         background intact.
1043
1044         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
1045         after processing, because we can't reuse it as the X11 version does.
1046
1047         * gtk/gtk.def : updated exports
1048
1049         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
1050         would like to get rid of this file again, and use straight
1051         makefile.msc again, as the other Gtk+ subdirs do)
1052
1053         * test/makefile.msc (new file) : build the test apps here
1054
1055 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
1056
1057         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
1058         strike-through setting
1059         (gdk_draw_layout_line_with_colors): Render strike-through
1060
1061 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
1062
1063         * Release 1.3.5
1064
1065         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
1066
1067         * NEWS: Updated
1068
1069         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
1070         Makefile breakage.
1071
1072 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
1073
1074         * demos/gtk-demo/images.c (progressive_timeout): Fix
1075         typo in filename.
1076
1077         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
1078         out FIXME warning; just too annoying.
1079
1080 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
1081
1082         * gdk/linux-fb/gdkcolor-fb.c:
1083         Better error messages.
1084
1085         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
1086         Initialize abs_x and abs_y.
1087         
1088         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
1089         Correct handling of stipple offset.
1090
1091         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
1092         Treat directcolor framebuffers as truecolor.
1093         
1094 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
1095
1096         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
1097         dependency on Atk for accessibility support.
1098
1099         * configure.in **/Makefile.am: Major reworking of substituted
1100         variables for CFLAGS/LIBS to make a lot more sane and 
1101         keep the the compile/link lines a bit shorter.
1102
1103         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
1104
1105 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
1106
1107         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
1108         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
1109         use _gtk_boolean_handled_accumulator.
1110
1111 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
1112
1113         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
1114         to fix things so clicking inside selection leaves cursor
1115         at point where clicked. (#50324)
1116
1117         * gtk/gtksettings.c (gtk_settings_class_init): Restore
1118         sane value for default double click time.
1119
1120         * tests/testtext.c (test_init): Really path to input modules.
1121
1122 2001-05-03  Sven Neumann  <sven@convergence.de>
1123
1124         * demos/testpixbuf-save.c: include target-specific headers as
1125         done in testpixbuf-drawable.c
1126
1127 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
1128
1129         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
1130         new_text_length appropriately when we run into the 
1131         size limit for the entry. (#53445, reported by Jeff Franks)
1132
1133         * tests/testgtk.c (create_entry): Remove most of the
1134         property toggle buttons. Replace with a "Props" button
1135         that brings up a property editor.
1136
1137         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
1138         Split the property editor code out for reuse, improve.
1139
1140 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
1141
1142         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
1143         trap errors around calls to XSetInputFocus since we have
1144         no way of knowing reliably whether we are viewable or
1145         not. (#53947)
1146
1147 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
1148
1149         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1150         fix bug in dropping columns.  Moving columns now basically works
1151         modula some fine tuning.
1152
1153 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
1154
1155         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
1156         autoscroll support.  It mostly works, but could use some fine
1157         tuning.
1158         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1159         Actually move the column.
1160
1161 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
1162
1163         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
1164           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
1165           New default theme! A slighly improved version of the 2.0 Raleigh
1166           theme, with Windows-esque focus/drawing default. 
1167           (GtkWidget::interior_focus defaults to TRUE.)
1168
1169         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
1170
1171 2001-04-30  Havoc Pennington  <hp@pobox.com>
1172
1173         * tests/testtext.c (line_numbers_expose): fix to work with
1174         gtk_paint_layout change
1175
1176 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
1177
1178         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
1179           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
1180           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
1181           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
1182
1183         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
1184           with GtkWidget::interior_focus = TRUE better.
1185
1186         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
1187         ::default_outside_border for more flexibility.
1188
1189         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
1190         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
1191         change that had to be made with g_object_get.
1192
1193 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
1194
1195         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
1196         (gtk_tree_view_move_column_after): Clean up interface. 
1197
1198 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
1199
1200         * gtk/gtkpacker.h:
1201         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
1202          to gtkenum.h.
1203
1204         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
1205         handled in switch).
1206
1207         * gtk/Makefile.am:
1208         (gtk.defs): generate enum portions with  glib-mkenums.
1209         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
1210         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
1211         
1212         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
1213         addition.
1214
1215         * docs/Changes-2.0.txt: keep a note on signal handlers now
1216         not getting emitted during the emission they were connected within.
1217
1218 2001-04-28  Havoc Pennington  <hp@pobox.com>
1219
1220         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
1221
1222 2001-04-24  Havoc Pennington  <hp@redhat.com>
1223
1224         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
1225         (gtk_text_layout_move_iter_to_next_line): fix these two for
1226         invisible text, lots of other stuff still hosed.
1227
1228         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
1229         new function, replaces the get/set palette stuff. This function 
1230         is intended for use by libgnomeui which should set the hook to a
1231         thing which sets the palette in GConf, and we need the
1232         GConf-to-xsettings proxy which will result in the change being
1233         propagated back to the GTK app.
1234
1235         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
1236         about unusable signals that it may be because the signal has 
1237         parameters.
1238
1239         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
1240         style, otherwise gtkrc.c won't know to create a new GtkStyle for
1241         it.
1242         (gtk_widget_modify_color_component): call
1243         gtk_widget_modify_style() so the rc style will get copied.
1244         (gtk_widget_modify_font): ditto
1245
1246         * gtk/gtkrc.c: make a couple variables static
1247
1248         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
1249         help button by default, since it does nothing
1250
1251         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
1252         around with UI
1253
1254         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
1255         so we can have tooltips
1256
1257         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
1258         can have tooltips
1259
1260         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
1261         GDK_ENABLE_BROKEN, because its memory behavior is completely
1262         hosed.
1263
1264         * gtk/gtknotebook.c: remove key press handler, replace with
1265         binding set, add numeric keypad support
1266
1267         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
1268
1269         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
1270
1271         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
1272         addition to plain Delete
1273
1274         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
1275         GDK_KP_Enter in addition to GDK_Return
1276
1277         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
1278         activate on entry instead of key press
1279         (gtk_font_selection_on_clist_key_press): get
1280         rid of this signal handler, not needed with new font sel.
1281
1282         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
1283         no-longer-needed emit_stop_by_name(), just return TRUE
1284
1285         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
1286         cruft, this widget is no longer focusable.
1287
1288         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
1289         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
1290         move_slider action signal, add binding set for vscale/hscale, in
1291         the process support numeric keypad
1292
1293         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
1294         make GDK_Return and GDK_KP_Enter activate the entry via 
1295         binding set, instead of hardcoded.
1296
1297 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
1298
1299         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
1300         code.  Some documentation added.
1301
1302 2001-04-27  Havoc Pennington  <hp@redhat.com>
1303
1304         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
1305
1306         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
1307
1308         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
1309         line/para separators
1310         (gtk_entry_create_layout): set single paragraph mode on the layout
1311
1312         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
1313         spacing between the image and label; instead, inside a button box 
1314         the button will get extra space that will go there, but if people 
1315         configure button box for 0 chubbiness, then there's no spacing.
1316
1317         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
1318         and min/max size style properties, so people can tune their
1319         chubbiness.
1320
1321         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
1322         functions
1323
1324         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
1325         space_style, and button_relief into style properties, remove
1326         functions for setting them
1327         
1328         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
1329         it back down
1330
1331         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
1332         types from gtk_widget_style_get
1333
1334         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
1335         with a style property.
1336
1337         * gdk/x11/gdkevents-x11.c: namespace the settings
1338
1339         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
1340
1341         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
1342         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
1343         be used. Also, translate doc strings for settings. Also, namespace
1344         the double-click-time property. Also, remove bell properties crap.
1345
1346 2001-04-27  Sven Neumann  <sven@gimp.org>
1347
1348         * Makefile.am: before creating links, check if pkg-config files
1349         exist for the default target. Otherwise link to the pkg-config files
1350         that got installed with this build.
1351
1352 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
1353
1354         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
1355         dragging code.  Revealed some (potential) GdkWindow bugs.
1356
1357         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
1358         _gdk_window_init_position to the end of reparent to fix the case
1359         of reparenting when new_x != old_x and new_y != old_y.
1360
1361 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
1362
1363         * gtk/gtkentry.c (strstr_len): Fix optimization that
1364         was correct for the use here, but completely incorrect
1365         in general.
1366
1367 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
1368
1369         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
1370         until patch adding gtk_window_set_size() is recommitted. 
1371
1372         * **Makefile.am configure.in gdk/x11/gdkim-11.c
1373           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
1374           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
1375           (#10784)
1376
1377 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
1378
1379         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
1380         window == NULL in a number of cases.
1381
1382         * tests/testdnd.c: Set module path for gdk-pixbuf.
1383
1384 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
1385
1386         * gtk/Makefile.am xembed.h: File containing #defines
1387         for XEMBED protocol.
1388
1389         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
1390
1391         - Change protocol from old plug/socket specific protocol
1392           to XEMBED draft
1393         - Various fixes to work with GTK+-2.0
1394
1395         Still quite a bit of work to do here to handle initiation
1396         from the socket side (as specified by XEMBED), to handle
1397         the more advanced features of XEMBED, and to figure out
1398         a good way to handle same-app embedding with less overhead
1399         than using full XEMBED.
1400
1401 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
1402
1403         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
1404         track of whether the toplevel has the focus; only send
1405         focus-in events to the focus widget when the window
1406         actually has the focus.
1407
1408 2001-04-25  Havoc Pennington  <hp@pobox.com>
1409
1410         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
1411         were still in the header
1412
1413 2001-04-24  Alexander Larsson  <alexl@redhat.com>
1414
1415         * gtk/gtkclist.[ch]:
1416         * gtk/gtkctree.c:
1417         When there is a row highlighted for D'n'D it must alse
1418         be painted hightlighted on exposes. Otherwise exposes from
1419         the icon being dragged will mess up the hightlight.
1420
1421         * gtk/gtkfontsel.c:
1422         Don't recenter selected font when exposing the font family
1423         clist. This means you can now actually scroll the font family
1424         list.
1425
1426         * gtk/gtknotebook.c:
1427         Fix focus movement on scrolling tabs that are placed on the left
1428         and right.
1429
1430 2001-04-21  Havoc Pennington  <hp@pobox.com>
1431
1432         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
1433         empty/invisible lines.
1434
1435         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
1436         (gtk_text_iter_set_visible_line_index): new functions to set
1437         indexes excluding invisible text
1438
1439         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
1440         index
1441
1442         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
1443         (gtk_text_iter_get_visible_line_offset): new functions to 
1444         get indexes excluding invisible text
1445
1446         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
1447         bunch of extra padding that served no purpose
1448
1449         * gtk/gtkdialog.c: Make all the spacings configurable via style
1450         properties, for chubbiness configuration in themes
1451
1452         * tests/testtext.c: fix path to the immodules.
1453         
1454 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
1455
1456         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
1457         got munched by #endif.
1458
1459         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
1460
1461         * gtk/gtktreeview.c: Refactored code to clean up a number of
1462         events.
1463
1464         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
1465         values to make consistent with other functions.  Spotted by Jeff
1466         Franks <jcf@tpg.com.au>.
1467
1468         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
1469         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
1470
1471 2001-04-23  Sven Neumann  <sven@gimp.org>
1472
1473         * gtk/Makefile.am
1474         * gtk/gtkplug.c
1475         * gtk/gtksocket.c: on request of Owen, reverted my last change 
1476         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
1477
1478 2001-04-23  Sven Neumann  <sven@gimp.org>
1479
1480         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
1481         compile for non-X11 targets again
1482
1483 2001-04-20  Alexander Larsson  <alexl@redhat.com>
1484
1485         * gtk/gtkcolorsel.[ch]:
1486         API Change. Take GdkColor arguments instead of gdouble *.
1487         Leave the old gtk_color_selection_set_color for compatibility,
1488         but marked deprecated.
1489         Do correct rounding when converting RGB <-> HSV.
1490         
1491         * gtk/gtkcolorseldialog.c:
1492         * tests/testgtk.c:
1493         Use new GtkColorSelection API.
1494
1495         * gtk/gtkhsv.c:
1496         Fix problem selecting colors in triangle when Hue is 330.
1497         Fix some black dots around the HSB triangle.
1498         
1499         * gtk/gtkfilesel.c:
1500         return FALSE from the focus_in_event handler to fix focus problems.
1501
1502 2001-04-18  Havoc Pennington  <hp@redhat.com>
1503
1504         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
1505         set, so keybindings are configurable    
1506         (gtk_window_activate_default): Change to activate the focus widget
1507         instead if there's a focus widget, to be consistent with the
1508         behavior that previously existed in key_press_event
1509
1510 2001-04-18  Havoc Pennington  <hp@redhat.com>
1511
1512         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
1513
1514 2001-04-18  Havoc Pennington  <hp@redhat.com>
1515
1516         Close bug #50615:
1517         
1518         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
1519         the layout
1520
1521         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
1522
1523         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
1524
1525         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
1526         
1527         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
1528         to blue for base, in addition to bg
1529         
1530 2001-04-18  Havoc Pennington  <hp@redhat.com>
1531
1532         * tests/testgtk.c (create_image): allow shrinking the image window
1533         to test that we clip to allocation.
1534
1535         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
1536         #9845
1537
1538         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
1539
1540 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
1541
1542         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
1543         mode on shm segments to 0600. We'll see who complains.
1544
1545         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
1546         _gdk_windowing_window_destroy() AFTER recursing through
1547         children.
1548
1549         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
1550         testsocket_child on X.
1551
1552         * tests/testsocket[_child].c: Fix uses of
1553         gtk_window_get_default_accel_group().
1554
1555         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
1556
1557         * gdk/gdkimage.c: (gdk_image_get):
1558         Deal with the possibility that XGetImage() might return NULL.
1559         Allocate the GdkImagePrivate structure only after XGetImage()
1560         succeeds in order not to dereference a NULL ximage pointer.  This
1561         prevents a core dump when XGetImage() fails - which is unlikely,
1562         but can happen due to race conditions accessing the geometries of
1563         drawables.  An x error will still be triggered, but the gdk image
1564         wrapper at least wont seg fault.
1565         
1566 2001-04-18  Havoc Pennington  <hp@redhat.com>
1567
1568         * gtk/gtkimage.c: fix to properly queue resizes when the image is
1569         set
1570
1571         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
1572         if the insertion point isn't editable
1573
1574         * demos/gtk-demo/images.c: Added a GtkImage demo
1575
1576         * demos/gtk-demo/drawingarea.c: drawing area demo
1577         
1578         * demos/gtk-demo/menus.c (create_menu): cleanups
1579
1580 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
1581
1582         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
1583           gdk/x11/gdkevents-x11.c: Introduce an extra child
1584         of toplevel windows that serves to hold the focus to
1585         avoid events being delivered to embedded windows.
1586
1587         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
1588         some extra variables to clean up code and reduce the
1589         number of casts.
1590
1591         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
1592         guint for 1 bit bit fields, not gboolean.
1593
1594 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
1595
1596         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
1597         not TRUE. (Fixes #52925)
1598
1599 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
1600
1601         * Released 1.3.4
1602
1603         * NEWS: Updated
1604
1605         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
1606         use GTK_TYPE_ENUM.
1607
1608 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
1609
1610         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
1611
1612         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
1613         names to compatibility #defines so docs work.
1614
1615         * gtk/gtkenums.h: Remove GtkMenuFactoryType
1616
1617         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
1618
1619         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
1620
1621         * tests/testgtkrc: No magenta cursors, please.
1622
1623         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
1624
1625         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
1626         
1627 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
1628
1629         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
1630         grabs, since they are no longer necessary.
1631
1632         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
1633         by signal_connect() and call gtk_button_pressed() rather
1634         than signal_connect_after().
1635
1636         * tests/testgtk.c: Restore radio menu items to combos 
1637         since they'll look OK with Raleigh, and it is easier
1638         than finishing the process of removing them that was
1639         started earlier.
1640
1641 2001-04-16  Hans Breuer  <hans@breuer.org>
1642
1643         * gdk/gdk.def :
1644         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
1645
1646         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
1647         we are interested in the functions return value not the function address
1648         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
1649
1650         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
1651
1652 2001-04-14  Hans Breuer  <hans@breuer.org>
1653
1654         * gdk/gdk.def :
1655         * gdk/makefile.msc : updated
1656
1657         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
1658         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
1659         (the testgtk::text backgound pixmap is drawn again)
1660         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
1661         Win32 Pango change
1662         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
1663
1664         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
1665         Not sure if the returned settings have the right unit, because I couldn't
1666         find any docs for the X version ...
1667
1668         * gtk/gtk.def :
1669         * gtk/makefile.msc.in : updated
1670
1671 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
1672
1673         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
1674         wording problems. (Compared to version from Johannes Stezenbach to
1675         check correctness.)
1676
1677 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
1678
1679         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
1680         this to compile.
1681
1682 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
1683
1684         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
1685         not pixbufpos.
1686
1687         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
1688
1689         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
1690         are unsigned insts, therefore use g_value_set_uint.
1691         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
1692
1693 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
1694
1695         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
1696
1697         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
1698         GTK_TYPE_STRING.
1699
1700         * gtk/gtktreeview.c: New functions to allow initial column
1701         dragging work.
1702
1703         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
1704
1705         * tests/testtreefocus.c: give dave some love.
1706
1707         * tests/testtreesort.c: Modify test to check really long samples.
1708
1709 2001-04-11  Alexander Larsson  <alexl@redhat.com>
1710
1711         * gtk-2.0.m4: Pass pkg-config options
1712         before the other args so it works even if
1713         POSIXLY_CORRECT is set.
1714
1715 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
1716
1717         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
1718         0, interface 0).
1719
1720 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
1721
1722         * gtk/gtkcalendar.c (gtk_calendar_button_press):
1723         check for action_func != NULL
1724
1725 2001-04-04  Sven Neumann  <sven@gimp.org>
1726
1727         * tests/testgtk.c (test_init): corrected path to gtk.immodules
1728
1729 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
1730
1731         * Released Gtk+-1.3.3.
1732
1733 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
1734
1735         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
1736
1737 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
1738
1739         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
1740         files to/from source dir. (if we don't stay in builddir, we
1741         can't reach make-inline-pixbuf.
1742
1743         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
1744         deps.
1745
1746         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
1747         ages 0).
1748
1749 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
1750
1751         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
1752         moved to the GtkTreeSortable interface.
1753
1754         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
1755         Make more efficient (fixes #50262).
1756
1757 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
1758
1759         * NEWS: Updated.
1760
1761         * configure.in: Remove support for uninstalled glib.
1762
1763         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
1764         so as not to stop emission.
1765
1766         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
1767         is no longer supported.
1768
1769         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
1770         into tests, change build order to build modules before
1771         gtk/.
1772
1773         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
1774         to here.
1775
1776 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
1777
1778         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
1779         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
1780         GPatternSpec. this is actually unlikely to cause breakage in
1781         third-party apps since except for gle, pretty much ever caller
1782         passes NULL here.
1783
1784         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
1785
1786         * *.c: use g_pattern_*() API.
1787
1788         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
1789
1790         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
1791         directions aren't passed in.
1792
1793         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
1794         functionality to be usable from gtkstyle.c as well, give precedence
1795         for conversion to user-supplied parsers.
1796         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
1797
1798         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
1799         _gtk_settings_parse_convert() for rcporperty value conversion.
1800
1801 2001-04-03  Alexander Larsson  <alexl@redhat.com>
1802
1803         * gdk/linux-fb/gdkevents-fb.c:
1804         Add empty gdk_setting_get().
1805
1806 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
1807
1808         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
1809         variable names.
1810         
1811         * gtk/makeenums.pl: touch this so enum files get remade.
1812
1813 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
1814
1815         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
1816         work again when not sorted.
1817
1818         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
1819         and "expand_row" signal, closing bug 52578.
1820
1821         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
1822         support.
1823
1824         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
1825         support.
1826
1827 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
1828
1829         * gdk/gdkevents.h: Add GdkEventSetting event for notification
1830         of changes to system settings, gdk_setting_get() to retrieve
1831         a single system setting.
1832
1833         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
1834         to the draft XSETTINGS mechanism.
1835
1836         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
1837         XSETTINGS.
1838
1839         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
1840         of GDK settings changes to the GtkSettings object.
1841
1842         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
1843         double-click-timeout property to GDK.
1844
1845         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
1846         Define GDK boxed types here.
1847
1848         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
1849         gdk/gdkenumtypes.[ch] for enum definitions.
1850
1851         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
1852         * gtk/gtk-boxed.defs: Comment out GDK types
1853         * gtk/gtktypeutils.h: Remove GDK types
1854         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
1855
1856 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
1857
1858         * Applied patch from Ron Steinke to add signal accumulators
1859         so that signals with the convention 'TRUE return means
1860         handled' stop emission on a TRUE return.
1861
1862         * gtk/gtkmain.[ch]: Add private accumulator 
1863         _gtk_boolean_handled_accumulator, used throughout GTK+.
1864         
1865         * gtk/gtkspinbutton.c: Add accumulator for ::output.
1866
1867         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
1868         
1869         * gtk/gtkwidget.c: Add accumulators for event signals,
1870         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
1871         for ::mnemonic-activate.
1872
1873         * gtk/gtkwindow.c: Add accumulator for ::frame_event
1874
1875 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
1876
1877         * gtk/gtkwidget.c: Add missing include.
1878
1879 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
1880
1881         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
1882         marshaller.
1883
1884         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
1885         "changed" signal to "range_changed".
1886
1887         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
1888         removing a tree from one model would remove all trees from that
1889         model.
1890         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
1891         changed signal instead.
1892
1893 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
1894
1895         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
1896         chaining up to parent impl, since we have a INPUT_ONLY
1897         window.
1898
1899         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
1900         foreground color for the cursor.
1901
1902 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
1903
1904         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
1905         param spec when caching property values, since we unref it
1906         later when we free the style.
1907
1908         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
1909         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
1910
1911 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
1912
1913         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
1914         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
1915         stupidity.
1916
1917 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
1918
1919         [ First pass at adding style properties. Still needs some definite
1920         fine-tuning. ]
1921
1922         * gtk/gtkbutton.c: Add ::default_spacing style property.
1923          
1924         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
1925         ::indicator_spacing style properties.
1926
1927         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
1928         style properties.
1929
1930         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
1931         rather than a normal property.
1932
1933         * gtk/gtkwidget.c: Add an ::interior_focus style property to
1934         draw focus inside buttons, in the Windows/Java Metal/etc. style.
1935
1936         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
1937         Honor ::interior_focus.
1938         
1939         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
1940         TRUE.
1941
1942         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
1943         Add ::slider_width, ::trough_border, ::stepper_size,
1944         ::stepper_spacing style properties.
1945
1946         * gtk/gtkscale.[ch] Add ::slider-length style property.
1947
1948 2001-04-02 Alexander Larsson   <alexl@redhat.com>
1949
1950         * gdk/linux-fb/gdkwindow-fb.c:
1951         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
1952         warnings that were spewed on startup.
1953
1954         * gtk/gtkwindow-decorate.c:
1955         gtk_window_reposition -> _gtk_window_reposition
1956
1957 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
1958
1959         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1960         Add boxed type for GtkRequistion. Use it for ::size-request.
1961
1962         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1963         Add a new GtkBorder structure useful for geometry properties
1964         for widgets. Add corresponding GTK_TYPE_BORDER.
1965         
1966         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
1967         Support automatic parser selection like
1968         gtk_settings_install_property_parser().
1969
1970         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
1971         functionality for use by gtk_widget_class_install_style_property.
1972         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
1973
1974 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
1975
1976         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
1977         g_param_spec_unichar(). 
1978
1979 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
1980
1981         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
1982         _NET window managers.
1983
1984         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
1985
1986 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
1987
1988         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
1989         bad needs to be nuked, not just deprecated.
1990
1991         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
1992         gtk_widget_popup().
1993
1994         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
1995         
1996         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
1997         widget.
1998         
1999         * docs/Changes-2.0.txt: updates.
2000         
2001 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
2002
2003         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
2004         for (i = 0; i < 100; i ++)
2005           g_print ("I will confirm it compile before committing\n");
2006
2007 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
2008
2009         * gtk/gtktreestore.c: Initial work on implementing the
2010         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
2011
2012 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
2013
2014         * gtk/gtkwidget.c: fixed a bunch of notifications, added
2015         reference counts around emissions where the widget is used afterwards.
2016         added freeze/thaws around multiple properties being notified.
2017         (_gtk_widget_get_aux_info): cleanups.
2018         
2019         * gtk/gtksettings.c (gtk_settings_install_property): provide
2020         default parsing functions for gdkcolor, enums and flags.
2021
2022         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
2023         applied by owen.
2024         backed out gtk_window_get_location(), gtk_window_set_location(),
2025         gtk_window_get_size() and gtk_window_set_size(), these
2026         have to be sorted out wrg x/y/width/height/default_with/default_height
2027         properties.
2028         kept a flag in GtkWindowGeometryInfo to handle user
2029         resetting default sizes.
2030         cleaned up ZVT comments.
2031         bunch of assorted bug fixes, notification fixes.
2032         (_gtk_window_reposition): make this a really internal function.
2033         
2034         * gtk/testgtk.c: fixups.
2035         
2036 2001-03-31  Hans Breuer  <hans@breuer.org>
2037
2038         * config.h.win32.in : disable USE_MMX for msvc build cause
2039         the assembler doesn't fit and is out of my scope. Disable
2040         USE_GMODULE for msvc build as wel. The right way to share
2041         binaries on win32 would be to use libtiff.dll etc. To reduce
2042         installation hassles IMO it's better to include all fileformats
2043         builtin to gdk-pixbuf
2044
2045         * gdk-pixbuf/makefile.msc : new file
2046
2047         * gdk/gdk.def : updated
2048
2049         * gdk/win32/gdkevents-win32.c : don't erase the background if
2050         .no_bg is set. It improves the scrolling (e.g. of testgtk main
2051         buttons
2052         * gdk/win32/gdkgeometry-win32.c : added comment about the above
2053
2054         * gdk/win32/gdkwindow-win32.c : added three new functions like
2055         the X version. Only one is implemented, because the other two
2056         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
2057         be default behaviour on win32 anyway ...
2058
2059         * gtk/gtk.def : updated
2060
2061         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
2062         from where it was built and add an additional rule to automagically
2063         build gtkmarshal.[hc]
2064
2065         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
2066         before array access for the current entry isn't finished
2067
2068         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
2069         use g_return_val_if_fail
2070
2071         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
2072         for the static array, but let the compiler calculate it. It
2073         makes me wonder if gcc isn't capable to catch bugs like this ...
2074
2075 2001-03-31  James Henstridge  <james@daa.com.au>
2076
2077         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
2078         constant "-1" in the aux info structure.
2079
2080 2001-03-30  Alexander Larsson  <alexl@redhat.com>
2081
2082         * gtk/gtkbutton.c (gtk_button_get_property):
2083         * gtk/gtklabel.c:
2084         Remove leaks.
2085         
2086         * gtk/gtkcontainer.c:
2087         * gtk/gtkhscale.c:
2088         * gtk/gtkhscrollbar.c:
2089         * gtk/gtklayout.c:
2090         * gtk/gtkmisc.c:
2091         * gtk/gtkprogress.c:
2092         * gtk/gtkprogressbar.c:
2093         * gtk/gtkrange.c:
2094         * gtk/gtktable.c:
2095         * gtk/gtkviewport.c:
2096         * gtk/gtkvscale.c:
2097         * gtk/gtkvscrollbar.c:
2098         * gtk/gtkwidget.c:
2099         Property patches, based on patches from John Margaglione and Lee Mallabone.
2100
2101 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
2102
2103         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
2104         adjustment. Cleaned redundant preconditions (spin != NULL). Added
2105         inline API function docs.
2106         (gtk_spin_button_new_with_range): New convenience constructor.
2107         (gtk_spin_button_set_increments): New adjustment helper.
2108         (gtk_spin_button_set_range): New adjustment helper.
2109
2110         * gtk/testgtk.c : added test of the new convenince constructor and
2111         value_changed signals.
2112
2113 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
2114
2115         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
2116         listen to the reorder signal.
2117
2118 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
2119
2120         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
2121         to get the aux info structure fo the widget.
2122
2123         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
2124         above function.
2125
2126         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
2127
2128         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
2129         to get the size of the window manager frame, basically the same
2130         code that gdk_window_get_root_origin() had
2131         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
2132
2133         * gtk/gtkwindow.c (gtk_window_set_default_size): use
2134         gdk_window_resize() if the window is realized and resizeable
2135
2136         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
2137         typo so that setting gravity works
2138
2139         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
2140         allocation if auto_shrink is on, even if the default size
2141         has not changed.
2142
2143         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
2144         g_return_if_fail
2145
2146 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
2147
2148         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
2149         reordering/sorting work.  Now pretty much works.
2150
2151         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
2152         reorder mostly work.  Still need to get the parity correct.
2153
2154         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
2155         signal, so I can listen for the sort_column_changed signal so I
2156         can change my "sort_indicator" property.  Cool.
2157
2158 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
2159
2160         [ Patch from Havoc Pennington, hp@redhat.com ]
2161
2162         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
2163         Add functions gdk_window_begin_resize_drag/begin_move_drag
2164         to start resizing or moving a toplevel window. This
2165         is done either using the _NET_WM_MOVERESIZE protocol,
2166         or, if that isn't present, by emulation.
2167
2168         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
2169         to export the above to GTK+-land.
2170
2171         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
2172         
2173         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
2174         Move this function into gdkwindow, since we need it
2175         when implementing fallback resizing.
2176
2177         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
2178         Fix typo when setting gravity.
2179
2180         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
2181         Add an optional (but on by default) resize grip for resizing 
2182         the parent window.
2183
2184 01-03-29  Alexander Larsson  <alexl@redhat.com>
2185
2186         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
2187         Don't return TRUE from the event handler, that blocks all
2188         event signals on the tooltip widget. Now you can press buttons
2189         in toolbars again.
2190
2191 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
2192
2193         * gtk/testtext.c (create_buffer): Add missing NULL on
2194         valist.
2195
2196         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
2197         c-n-p problem with INCONSISTENT property.
2198
2199         [ Patch from Havoc Pennington  <hp@redhat.com> ]
2200
2201         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
2202         hook.
2203
2204         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
2205         signal as a hook for extending the default popup menu
2206
2207         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
2208         use radio menu items for the input method menuitems
2209
2210         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
2211         inserted unicode from Ctrl-Shift-hex input method
2212
2213         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
2214         validatation here, already done at GtkTextBuffer level.
2215
2216         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
2217         popup_menu run action signal and Shift+F10 and Menu keybindings.
2218
2219         * gtk/gtkentry.c: implement a default handler for popup_menu
2220
2221         * gtk/gtktextview.c: implement a default handler for popup_menu
2222
2223         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
2224         from a key event
2225         
2226         * gtk/gtklabel.c: remove "trailer" cruft
2227
2228 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
2229
2230         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
2231         handle reordering of trees.  Seems to mostly work w/ the exception
2232         of the parity flag.
2233
2234         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
2235         signal.
2236
2237 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
2238
2239         * gtk/gtkwidget.h: c++ fixes.
2240
2241 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
2242
2243         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
2244         memory.
2245
2246 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
2247
2248         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
2249         Nils Barth fixing event return values. (#51041)
2250
2251         * gtk/gtkwidget.c: Fix some return values for default
2252         functions.
2253
2254         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
2255         return values for trough_keys functions.
2256
2257         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
2258         value for add_accelerator (shoudl have been a void
2259         return.)
2260
2261         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
2262         Fix return type of EVENT.
2263
2264         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
2265         signal return a boolean.
2266
2267 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
2268
2269         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
2270         reordered signal.
2271
2272         * tests/testtreesort.c (main): fix spelling.
2273
2274 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
2275
2276         * gtk/gtkliststore.c: More work on implementing sortable
2277         interface.
2278
2279 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
2280
2281         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
2282         reference the widgets in the resulting list. (#11821)
2283         This makes this consistent with gtk_container_children.
2284
2285         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
2286         uses of gtk_window_list_toplevels.
2287
2288 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
2289
2290         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
2291         a virtual function to set whether the IM context should use 
2292         the preedit string. (#51922)
2293         
2294 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
2295
2296         * gdk/gdkpango.h: Remove stale FIXME comment.
2297
2298 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
2299
2300         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
2301         Fixed bug that returned NULL if a filename was selected.
2302
2303 2001-03-24  Havoc Pennington  <hp@pobox.com>
2304
2305         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
2306         to contain the word "theme"
2307
2308 2001-03-24  Havoc Pennington  <hp@pobox.com>
2309
2310         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
2311         slower but finer-grained
2312         (gtk_hsv_focus): get initial focus on the ring or triangle 
2313         according to tab direction
2314
2315         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
2316
2317 2001-03-23  Havoc Pennington  <hp@pobox.com>
2318
2319         * gtk/gtkhsv.c: make this somewhat key-navigable
2320
2321         * gtk/gtkfontsel.c: mnemonics
2322
2323         * gtk/gtkgamma.c: mnemonics
2324
2325         * gtk/gtkcolorsel.c: add mnemonics to labels
2326
2327 2001-03-22  Havoc Pennington  <hp@pobox.com>
2328
2329         Applied big patch from Seth Lytle to fix event handler return
2330         values, slightly modified.
2331
2332         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
2333         handled.
2334         (gtk_calendar_key_press): return TRUE for GDK_space triggers
2335         select_day
2336
2337         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
2338         (gtk_clist_button_release): return TRUE if handled
2339
2340         * gtk/gtkcolorsel.c (mouse_release):
2341         (palette_activate): 
2342         (palette_press): 
2343         (palette_new): 
2344         (mouse_press): 
2345         (get_screen_color): 
2346         fixed return type (void to gboolean), return TRUE,
2347         added GTK_SIGNAL_FUNC cast
2348
2349         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
2350         (void to gboolean), and return TRUE
2351         (gtk_combo_button_release): changed return value to TRUE after
2352         gtk_grab_add on combo->popwin
2353
2354         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
2355         collapse or expand
2356
2357         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
2358         button/motion
2359
2360         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
2361         press/release and motion that trigger act
2362
2363         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
2364
2365         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
2366         for GDK_Return
2367         
2368         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
2369         (gtk_list_button_release): return TRUE if selection
2370
2371         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
2372         press
2373
2374         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
2375         (gtk_menu_shell_button_release): chain parent_menu_shell retval
2376
2377         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
2378         nothing triggered
2379         (gtk_notebook_button_release): return TRUE if we do anything
2380
2381         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
2382         (gtk_spin_button_button_release): return TRUE or chained retval
2383
2384         * gtk/gtktext.c (gtk_text_button_press): 
2385         (gtk_text_button_release): return TRUE
2386         (gtk_text_key_press): remove redundant retval code
2387         
2388         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
2389         and sensitive
2390         (gtk_tree_item_subtree_button_click): changed type to gint, and return
2391         TRUE if sensitive
2392
2393         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
2394         return TRUE
2395
2396 2001-03-23  Havoc Pennington  <hp@redhat.com>
2397
2398         * gtk/testgtk.c: fix warnings
2399
2400         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
2401
2402         * gtk/gtktextview.c: fix warnings
2403
2404         * gtk/gtktext.c (find_cursor_at_line): fix warning
2405
2406         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
2407
2408         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
2409         of this function
2410
2411         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
2412         fix warning
2413
2414         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
2415
2416         * gtk/gtkfontsel.c: fix warning
2417
2418         * gtk/gtkcolorsel.c: fix warnings
2419
2420 2001-03-23  Havoc Pennington  <hp@redhat.com>
2421
2422         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
2423
2424         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
2425
2426         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
2427         and deprecated gtk_check_menu_item_set_show_toggle().
2428         
2429         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
2430
2431         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
2432
2433         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
2434
2435 2001-03-23  Havoc Pennington  <hp@redhat.com>
2436
2437         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
2438         some docs
2439
2440 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
2441
2442         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
2443         this.
2444
2445         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
2446         set_cell to set_value
2447
2448         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
2449         set_cell to set_value
2450
2451 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
2452
2453         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
2454         fix braino.
2455         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
2456         support.
2457
2458         * gtk/gtktreeview.c: Addition of initial sortable support.
2459
2460         * gtk/gtktreestore.c: Addition of initial sortable support.
2461
2462         * gtk/gtkliststore.c: Addition of initial sortable support.
2463
2464         * gtk/gtkmarshal.list: yet another marshaller.
2465
2466         * gtk/gtktreedatallist.[ch]: shared code between the store models
2467         for handling sorting headers.
2468
2469 2001-03-22  Havoc Pennington  <hp@redhat.com>
2470
2471         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
2472         (gtk_container_unset_focus_chain): Add ability to override the 
2473         focus chain for a container explicitly
2474
2475 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
2476
2477         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
2478         added PROP_MNEMONIC_WIDGET.
2479
2480         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
2481         (gtk_window_remove_mnemonic): 
2482         (gtk_window_add_mnemonic): fixed assertions.
2483         (gtk_window_activate_mnemonic): constrain modifier checks to those
2484         permitted by gtk_accelerator_get_default_mod_mask().
2485         got rid of gtk_window_get_default_accel_group().
2486
2487         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
2488         activatable widgets either by focussing or a warning.
2489         added a signal accumulator to ::activate_mnemonic which stops the
2490         emission once a handler returned TRUE.
2491
2492 2001-03-22  Havoc Pennington  <hp@pobox.com>
2493
2494         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
2495         the stock item label
2496
2497         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
2498
2499         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
2500
2501         * demos/gtk-demo/*.c: Add mnemonics all over the place
2502
2503         * gtk/gtklabel.h: mark parse_uline deprecated
2504
2505 2001-03-21  Alexander Larsson  <alexl@redhat.com>
2506
2507         * gtk/gtkitemfactory.[ch]:
2508         Add support for stock and normal imagemenuitems.
2509         
2510         * gtk/testgtk.c:
2511         Add some tests for mnemonics, stock toolbars, stock
2512         and image menuitems in itemfactory and gdk_window_scroll.
2513
2514 2001-03-21  Alexander Larsson  <alexl@redhat.com>
2515
2516         * gtk/gtkbutton.[ch]:
2517         * gtk/gtkdialog.c:
2518         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
2519         removed accel_group argument. Renamed gtk_button_new_accel() to
2520         gtk_button_new_with_mnemonic() and removed accel_group argument.
2521
2522         * gtk/gtkcheckbutton.[ch]:
2523         New function gtk_check_button_new_with_mnemonic().
2524
2525         * gtk/gtkentry.c:
2526         Override activate_mnemonic and just grab focus.
2527
2528         * gtk/gtkitemfactory.c:
2529         Don't add menu uline accel group, instead use mnemonics support.
2530
2531         * gtk/gtklabel.[ch]:
2532         New support for mnemonics.
2533
2534         * gtk/gtkmarshal.list:
2535         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
2536
2537         * gtk/gtkmenu.[c]:
2538         * gtkmenushell.c:
2539         Use mnemonics instead of accel groups for uline
2540         support in menu items.
2541         Removed gtk_menu_get_uline_accel_group() and
2542         gtk_menu_ensure_uline_accel_group().
2543
2544         * gtk/gtkmenuitem.c:
2545         Override activate_mnemonic to handle switching between
2546         menu items if there are collisions.
2547         
2548         * gtk/gtknotebook.c:
2549         Connect to activate_mnemonic on the tab_label, so that
2550         activating it switches to that notebook page.
2551
2552         * gtk/gtkwidget.[ch]:
2553         Add activate_mnemonic signal. New function
2554         gtk_widget_activate_mnemonic() to emit it.
2555         Default implementation does activate/grab_focus.
2556
2557         * gtk/gtkwindow.[ch]:
2558         Add support for mnemonics in windows.
2559         New functions:
2560         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
2561         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
2562
2563         * gtk/testgtk.c:
2564         Update to function name changes.
2565         
2566 2001-03-21  Alexander Larsson  <alexl@redhat.com>
2567
2568         * gtk/gtkimagemenuitem.[c]:
2569         Add gtk_image_menu_item_new_from_stock()
2570
2571 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
2572
2573         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
2574         Fix buglet in meeting.
2575
2576 2001-03-19  Havoc Pennington  <hp@redhat.com>
2577
2578         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
2579         add a bunch of accessor functions. This is because we have
2580         reasonable expectations of extending what fields it contains in
2581         the future.
2582
2583         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
2584         changes
2585
2586         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
2587         GtkIconSource   
2588
2589 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
2590
2591         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
2592         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
2593
2594         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
2595           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
2596           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
2597           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
2598         Change float to double everywhere with the exception of 0<->1.0 alignment
2599         and GtkCurve.
2600
2601 2001-03-19  Tor Lillqvist  <tml@iki.fi>
2602
2603         * gdk/win32/gdkdrawable-win32.c
2604         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
2605         output.
2606
2607         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
2608         gdkwin32.h.
2609
2610 2001-03-18  Tor Lillqvist  <tml@iki.fi>
2611
2612         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
2613         print_event_state, print_event): Use preprocessor macro to make
2614         code more compact. Print also GDK_WINDOW_STATE events.
2615         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
2616         
2617         * gtk/gtk.def
2618         * gtk/makefile.mingw.in: Update.
2619
2620         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
2621         to catch also Cygwin.
2622
2623 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
2624
2625         * gtk/gtkspinbutton.[hc]: added rc-style argument
2626         GtkSpinButton::shadow_type.
2627         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
2628         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
2629         rc-style settings.
2630
2631         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
2632
2633         * gtk/gtkwidget.c: quark cleanups.
2634
2635         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
2636         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
2637         to create_rc_style() (we don't do cloning in standard OO sense).
2638         added per rc style properties.
2639         
2640         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
2641         property values and for caching those. some cleanups.
2642         
2643         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
2644         
2645         * gtk/gtksettings.[hc]: new file for global rc-file properties
2646         (at least currently, should get extended to support X properties
2647         and other communication mechanisms).
2648         
2649         * gtk/gtkwidget.[hc]: added style property support:
2650         (gtk_widget_class_install_style_property_parser): install style
2651         property pspec with parser function for rc-file values other
2652         than LONG, DOUBLE or STRING.
2653         (gtk_widget_class_install_style_property): same as above without
2654         parser (parsers are going to be needed quite infrequently).
2655         (gtk_widget_style_get_property): retrive style property value.
2656         (gtk_widget_style_get_valist): same as above with varargs support,
2657         has NOCOPY semantics.
2658         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
2659
2660 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
2661
2662         * demos/gtk-demo/main.c (row_activated_cb): modified to use
2663         "row_activated" signal.
2664
2665         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
2666         stupidity.  Lets actually pass in the row with this signal...
2667
2668 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
2669
2670         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
2671
2672         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
2673
2674         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
2675         everything into the ::destroy function, and freed a lot more.
2676
2677 2001-03-16  Havoc Pennington  <hp@redhat.com>
2678
2679         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
2680         instead of gint16, to avoid overflow issues, since sizes > 16-bit
2681         are now allowed.
2682
2683 2001-03-16  Havoc Pennington  <hp@redhat.com>
2684
2685         * Applied patch from Nils Barth (bug # 51041) to 
2686         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
2687         in various places.
2688
2689 2001-03-15  Havoc Pennington  <hp@redhat.com>
2690         
2691         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
2692         for properties to set on the tag.
2693
2694         * gtk/testtext.c: fixups to reflect create_tag change
2695         
2696         * gtk/gtktexttag.c (gtk_text_tag_set_property):
2697         background/foreground stipple are objects, not boxed.
2698
2699         * demos/gtk-demo/textview.c: intellihancing
2700
2701 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
2702
2703         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
2704         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
2705
2706 2001-03-16  Alexander Larsson  <alexl@redhat.com>
2707
2708         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
2709         Fix sign error with queued region translations.
2710
2711 2001-03-15  HideToshi Tajima  <tajima@happy>
2712
2713         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
2714         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
2715         * gtk/gtkentry.c (update_im_cursor_location): 
2716         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
2717         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
2718         set_cursor_pos to set_cursor_location in GtkInputContext class
2719
2720 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
2721
2722         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
2723         the location of the cell relative to its area.
2724         * gtk/gtkcell*: modified for above change
2725         * gtk/gtktreeview.c: modified for above change.
2726
2727 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
2728
2729         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
2730          (gtk_tree_view_finalize): actually unref the model.  Thanks to
2731         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
2732
2733 2001-03-14  Havoc Pennington  <hp@redhat.com>
2734
2735         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
2736         
2737         * gtk/gtk.h: remove gtkdata.h
2738
2739         * gtk/Makefile.am: remove gtkdata
2740         
2741         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
2742         not "disconnect" on the adjustments.
2743         
2744         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
2745         GtkData
2746
2747         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
2748         not GtkData
2749
2750         * configure.in: handle case where X render exists, but Pango lacks
2751         Xft support.
2752
2753 2001-03-15 Alexander Larsson  <alexl@redhat.com>
2754
2755         * gtk/gtktoolbar.[ch]:
2756         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
2757         to add stock items to toolbars.
2758
2759         * gtk/Makefile.am:
2760         Remove ../gdk/gdkim.h from gdk_headers.
2761
2762 2001-03-15  Sven Neumann  <sven@gimp.org>
2763
2764         * gdk/gdkim.h: removed
2765         
2766         * gdk/gdkprivate.h
2767         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
2768
2769 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
2770
2771         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
2772         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
2773         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
2774         set_cursor_pos() virtual method
2775
2776         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
2777         (gtk_im_context_xim_set_cursor_pos): add implementation for
2778         set_cursor_pos() method
2779
2780         * gtk/gtkentry.c (recompute_idle_func): set current cursor
2781         position to input methods
2782
2783 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
2784
2785         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
2786         code a lot.
2787
2788         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
2789         g_mem_chunk.
2790         (_gtk_tree_data_list_alloc): use g_mem_chunk.
2791         (_gtk_tree_data_list_node_to_value): Fix to switch on
2792         G_TYPE_FUNDAMENTAL.
2793         (_gtk_tree_data_list_value_to_node): Fix to switch on
2794         G_TYPE_FUNDAMENTAL.
2795         (_gtk_tree_data_list_node_copy): Fix to switch on
2796         G_TYPE_FUNDAMENTAL.
2797
2798 2001-03-12  Havoc Pennington  <hp@redhat.com>
2799
2800         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
2801         to convert to new property API. Also, change default_width and
2802         default_height get_property to return 0 as the flag value for
2803         "unset"; -1 is not a valid value for these fields.
2804
2805 2001-03-12  Havoc Pennington  <hp@redhat.com>
2806
2807         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
2808         enum with registration for icon sizes, instead of strings.
2809
2810         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
2811         gtkwidget.c: Fix to reflect GtkIconSize
2812         
2813 2001-03-12  Alexander Larsson  <alexl@redhat.com>
2814
2815         Make GtkFB compile and link.
2816         
2817         * gdk/linux-fb/gdkdrawable-fb2.c:
2818         window->mapped to GDK_WINDOW_IS_MAPPED(). 
2819         
2820         * gdk/linux-fb/gdkwindow-fb.c:
2821         window->mapped to GDK_WINDOW_IS_MAPPED(). 
2822         Added gdk_window_shape_combine_region.
2823         Added assorted placeholders for unimplemented new GdkWindow API calls.
2824
2825 2001-03-12  Alexander Larsson  <alexl@redhat.com>
2826
2827         * gtk/gtkfilesel.c:
2828         Add more test when converting filenames from/to utf-8.
2829         Don't allow entering text in the filename entry which isn't allowed in
2830         a filename. Just beep instead.
2831
2832 2001-03-12  Alexander Larsson  <alexl@redhat.com>
2833
2834         * gtk/gtkclist.c:
2835         Scroll using gdk_window_scroll(). Don't wait for exposes.
2836         Move the column headers in an order that makes them flash less.
2837
2838 2001-03-10  Hans Breuer  <hans@breuer.org>
2839
2840         * gdk/gdk.def : updated
2841
2842         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
2843         to offseting the clip_mask at the right place
2844
2845         * gdk/win32/gdkwindow-win32.c : don't create background brushes
2846         for all the gdkClasses, especially not for the input_only case.
2847         Otherwise flickering wont be avoidable, because we don't get
2848         WM_ERASEBKGND message for these windows.
2849
2850         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
2851         and fixed massive redraw problems apparently triggered by Alexanders 
2852         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
2853         but it seems to work quite well :-)
2854
2855         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
2856         prototype
2857
2858 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
2859
2860         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
2861         (gtk_list_store_set_cell): Fix a stupid typo.
2862
2863 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
2864
2865         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
2866         select_all not work if you're in SINGLE mode (it doesn't make that
2867         much sense, anyway.)
2868
2869         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
2870         handle types more sanely.
2871         (_gtk_tree_data_list_value_to_node): handle types more sanely.
2872         (_gtk_tree_data_list_node_copy): handle types more sanely.
2873
2874         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
2875         GValue better. Converts the type as well.
2876
2877         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
2878         GValue better. Converts the type as well.
2879
2880 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
2881
2882         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
2883         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
2884         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
2885         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
2886
2887         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
2888         gdk_im/gdk_ic.
2889
2890 2001-03-09  Hans Breuer  <hans@breuer.org>
2891
2892         * gdk/gdk.def : updated
2893
2894         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
2895         for their palette
2896
2897         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
2898         removing
2899
2900         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
2901         removing and implemented Havoc's GdkWindow state functions; 
2902         stick/unstick only as no-op, cause I don't know how to emulate 
2903         on win32 ...
2904
2905         * gtk/gtk.def : updated
2906
2907         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
2908
2909         * gtk/gtktypeutils.c : #include <string.h>
2910
2911         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
2912
2913 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
2914
2915         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
2916         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
2917         not a boxed.
2918
2919 2001-03-09  Alexander Larsson  <alexl@redhat.com>
2920
2921         * docs/Changes-2.0.txt:
2922         Document expose event->region change and that gtk_widget_event
2923         doesn't allow passing expose events.
2924
2925         * gdk/gdkevents.h:
2926         Add region to expose event.
2927         
2928         * gdk/gdkevents.c:
2929         Handle event->region in gdk_event_copy() and gdk_event_free().
2930
2931         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
2932         Generate expose_event->region when creating expose events.
2933
2934         * gdk/x11/gdkevents-x11.c:
2935         Generate expose events with regions when translating X events.
2936
2937         * gtk/gtkcontainer.[ch]:
2938         Default expose handler that propagates expose events to NO_WINDOW
2939         children. New function gtk_container_propagate_expose()
2940
2941         * gtk/gtkwidget.[ch]:
2942         Moved gtk_widget_event implementation to gtk_widget_event_internal.
2943         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
2944         expose events. New function gtk_widget_send_expose() to send expose
2945         events. New function gtk_widget_region_intersect() to calculate
2946         window/region intersections.
2947         
2948         * gtk/gtkmain.c (gtk_main_do_event):
2949         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
2950         Use gtk_widget_send_expose() to send expose events.
2951         
2952         * gtk/gtkbin.c:
2953         * gtk/gtkbox.c:
2954         * gtk/gtkfixed.c:
2955         * gtk/gtkimagemenuitem.c:
2956         * gtk/gtklist.c:
2957         * gtk/gtkpacker.c:
2958         * gtk/gtktable.c:
2959         * gtk/gtktree.c:
2960         Remove expose handler, using the default container implementation
2961         instead.
2962         
2963         * gtk/gtkbutton.c:
2964         * gtk/gtkcheckbutton.c:
2965         * gtk/gtkeventbox.c:
2966         * gtk/gtkfixed.c:
2967         * gtk/gtkhandlebox.c:
2968         * gtk/gtklayout.c:
2969         * gtk/gtklistitem.c:
2970         * gtk/gtkmenu.c:
2971         * gtk/gtkmenubar.c:
2972         * gtk/gtkmenuitem.c:
2973         * gtk/gtknotebook.c:
2974         * gtk/gtkoptionmenu.c:
2975         * gtk/gtkpaned.c:
2976         * gtk/gtkscrolledwindow.c:
2977         * gtk/gtktogglebutton.c:
2978         * gtk/gtktoolbar.c:
2979         * gtk/gtktreeitem.c:
2980         * gtk/gtkviewport.c:
2981         Chain expose handler to parent class handler. Use
2982         gtk_container_propagate_expose() to propagate exposes.
2983
2984         * gtk/gtkclist.c (check_exposures):
2985         * gtk/gtktext.c (process_exposes):
2986         Use gtk_widget_send_expose instead of gtk_widget_event.
2987
2988 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
2989
2990         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
2991
2992 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
2993
2994         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
2995         unref the nodes.   Fixes bug #50058.
2996
2997         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
2998         "::ref_iter" to "::ref_node".
2999         (gtk_tree_model_unref_node): change "::unref_iter" to
3000         "::unref_node". Fixes bug #50064.
3001
3002 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
3003
3004         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
3005         support for invisible cells.
3006          (gtk_tree_view_bin_expose): ditto
3007
3008 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
3009
3010         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
3011         on gobjects.
3012
3013         * tests/testtreefocus.c (main): New test file.
3014
3015         * tests/testtreeview.c: update to latest glib changes.
3016
3017         * tests/testtreecolumns.c: update to latest glib changes.
3018
3019 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
3020
3021         * gtk/testgtk.c: re-enabled event watcher emission hooks.
3022
3023 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
3024
3025         * *.c: added accumulator data argument to g_signal_newc()
3026         functions.
3027
3028         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
3029         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
3030         * gtk/treestoretest.c (make_window):
3031         s/g_signal_connect/g_signal_connectc/.
3032
3033         * gtk/gtktextbuffer.c: completed signal arg fixups,
3034         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
3035
3036 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
3037
3038         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
3039         G_CONST_RETURN.
3040
3041         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
3042         ::hierarchy-changed signal when a widget changes
3043         from anchored to unanchored or vice versa.
3044         (anchored means 
3045          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
3046         Use a private flag to keep track of this efficiently.
3047
3048 2001-03-07  Havoc Pennington  <hp@redhat.com>
3049
3050         * gtk/testgtk.c (create_spins): uglify so that size request gets
3051         tested.
3052
3053         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
3054         request on values for upper/lower, completes #6152
3055
3056 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
3057
3058         * Makefile.am: Remove gtk-config-2.0 again.
3059         (Grrrr, pkg-config. And stops make loops.)
3060
3061 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
3062
3063         * gtk/gtksignal.[hc]: removed old emission hook API.
3064         
3065         * docs/Changes-2.0.txt: fixed sections.
3066         
3067         * gtk/gtktextbuffer.c: signal arg fixups.
3068
3069 2001-03-07  Havoc Pennington  <hp@redhat.com>
3070
3071         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
3072
3073         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
3074         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
3075         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
3076         validation and the redraw which is higher priority than the
3077         validation.
3078
3079 2001-03-07  Havoc Pennington  <hp@redhat.com>
3080
3081         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
3082         (gtk_entry_set_property): remove trailer
3083
3084         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
3085         (gtk_entry_get_width_chars): new functions, to set size request to 
3086         a given number of characters
3087
3088         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
3089
3090         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
3091         (gtk_dialog_get_has_separator): new function
3092         (run_delete_handler): fix to not emit "response" signal
3093         because we already did in the delete event handler installed
3094         at dialog creation time.
3095         
3096         * gtk/gtkdialog.h: add a has_separator property,
3097         add GTK_DIALOG_NO_SEPARATOR flag
3098
3099 2001-03-07  Havoc Pennington  <hp@redhat.com>
3100
3101         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
3102         off decorations for a window.
3103
3104         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
3105         changes
3106
3107         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
3108         to get location of PangoLayout inside the label, closes #51198
3109
3110         * gtk/testgtk.c (create_bbox): fix up button box usage
3111
3112         * gtk/testcalendar.c (create_calendar): fix up button box usage
3113
3114         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
3115
3116         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
3117
3118         * gtk/gtkhbbox.h: deprecations
3119
3120         * gtk/gtkvbbox.h: deprecations
3121
3122         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
3123         emulate deprecated gtk_button_box_get_spacing
3124
3125         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
3126         the "set global default" functions
3127         (struct _GtkButtonBox): remove "spacing" field, use the one from 
3128         GtkBox base class
3129
3130         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
3131
3132         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
3133         render the icon, return the missing image icon.
3134
3135         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
3136         image icon if the load fails.   
3137
3138         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
3139         when no image is found; should be the Netscape "missing image"
3140         icon eventually but for now is a random image
3141
3142         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
3143         role for the session manager
3144
3145         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
3146
3147         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
3148         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
3149
3150         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
3151
3152 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
3153
3154         * gtk/*.c: marshaller fixes.
3155         
3156         * gtk/gtkmarshal.list: extreme cleanup.
3157
3158         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
3159         param spec for now.
3160
3161         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
3162         where appliable.
3163
3164         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
3165         special cased autogenerated boxed types from gtktypebuiltins_ids.c
3166         which are not reference counted:
3167         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
3168         PangoFontDescription, GtkTreeIter and GtkTreePath.
3169
3170 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
3171
3172         * gtk/gtktreeselection.h: 
3173         * gtk/gtktreemodel.c:
3174         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
3175         file should be included directly, and gobject/gmarshal.h
3176         as well as gtk/gtkmarshal.h even can't be included directly.
3177
3178         * Makefile.am: grr, install gtk-config-2.0.
3179
3180         * gtk/testgtk.c:
3181         * gtk/simple.c:
3182         * gtk/gtkmenu.c:
3183         * gtk/gtkitemfactory.c: use g_object_connect() instead of
3184         passing "*signal*::*" args to gtk_widget_set().
3185         
3186         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
3187         
3188         * gtk/*.c: removed trailer arg from property setters and getters.
3189         macro fixups.
3190
3191 2001-03-07  Alexander Larsson  <alexl@redhat.com>
3192
3193         * gtk/gtklabel.c (set_markup): Removed warning
3194
3195 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
3196
3197         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
3198         field to allow you to hide cell renderers.
3199
3200         * gtk/gtkcellrenderer.c: Add support for invisible cells.
3201
3202         * gtk/gtktreeview.c: Add support for invisible cells.
3203
3204 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
3205
3206         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
3207         Add "clicked" signal back to columns.
3208
3209         * ChangeLog: remove conflict markers.
3210
3211 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
3212
3213         * gtk/gtkbutton.c: Add animation of activation by, on 
3214         activate, pressing the button, and adding a timeout that 
3215         releases the button after 250ms or on key release and
3216         emits ::clicked. (#51501)
3217
3218         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
3219         action area, we connect to ::clicked instead of ::activate
3220         so the dialog stays up through the animation.
3221
3222 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
3223
3224         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
3225         check the ignore_enter flag for the menu shell that
3226         the item is actually a child of, not for attached
3227         submenus. (#51536)
3228
3229 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
3230
3231         * gtk/gtkmain.c (gtk_propagate_event): Only do special
3232         special key-press grab handling for widgets within
3233         GtkWindows. Otherwise, fall through to normal case.
3234
3235         This prevents key events being sent twice to GtkInvisible
3236         widgets, which can cause all sorts of mischief.
3237
3238 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
3239
3240         * gtk/gtkmain.c (gtk_propagate_event): When a grab
3241         widget is in effect, give the grab widget a first
3242         crack at KEY_PRESS/RELEASE events. (#424)
3243
3244 2001-03-06  James Henstridge  <james@daa.com.au>
3245
3246         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
3247         offset for the window_state_event to point at window_state_event
3248         rather than no_expose_event.
3249
3250 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
3251
3252         * gtk/gtkimmodule.h: fix busted /* comment */
3253
3254 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
3255
3256         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
3257         object properties.
3258
3259 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
3260
3261         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
3262         add object properties.
3263
3264         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
3265         to add object properties.
3266
3267         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
3268         object properties.
3269
3270         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
3271         add object properties.
3272
3273         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
3274         object properties.
3275
3276 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
3277
3278         * gtk/gtktreemodel.c: renamed "child_toggled" to
3279         "has_child_toggled".
3280
3281         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
3282         handle new signal name.
3283
3284         * gtk/gtktreestore.c: Updated to handle new signal name.
3285         * gtk/gtklisttore.c: Updated to handle new signal name.
3286         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
3287
3288 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3289
3290         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
3291         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
3292
3293 2001-03-05  Michael Natterer  <mitch@gimp.org>
3294
3295         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
3296         pixbuf-engine coincidentially also failed to make one of it's
3297         parent_class pointers static, causing overwriting of GtkLabel's
3298         parent_class pointer in pixbuf_style_class_init().
3299         (Will commit the fix to the pixbuf-engine too).
3300
3301 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3302
3303         * gdk/gdkwindow.h:
3304         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
3305         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
3306         gdk_window_set_icon_list for net wmspec functionality.
3307
3308         * gdk/x11/gdkwindow-x11.c:
3309         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
3310         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
3311         gdk_window_set_icon_list.
3312         Added gdk_wmspec_change_state helper function and used it in the code.
3313         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
3314
3315         * gtk/gtkdialog.c (gtk_dialog_init):
3316         Set GDK_WINDOW_TYPE_HINT_DIALOG.
3317
3318         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
3319         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
3320
3321         * gtk/gtkwindow.c:
3322         new function gtk_window_set_type_hint.
3323         On realize, set type hint and modal hint.
3324
3325         * gtk/gtkwindow.h:
3326         Added type_hint field and gtk_window_set_type_hint.
3327
3328 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3329
3330         * gtk/gtklabel.[ch]:
3331         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
3332         New function gtk_label_get_accel_keyval () to get the underline accelerator
3333         of the label. Setting the label pattern overrides other attributes.
3334
3335 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
3336
3337         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
3338         Added missing initializers to gtk_rc_style_init().
3339
3340 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
3341
3342         * gtk/gtktextview.c: fixed bug #51097 about setting 
3343         gtk_text_view_set_border_window_size() if the widget is 
3344         already realized.
3345
3346 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
3347
3348         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
3349
3350         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
3351         comment. Won't do to have duplicated doc comments between
3352         the platform subdirs.
3353
3354 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
3355
3356         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
3357           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
3358
3359         Detectable auto-repeat - make a repeating key generate
3360         press/press/press/release instead of press/release pairs.
3361
3362         If we have Xkb and XkbSetDectableAutoRepeat supports
3363         that, we do it that way. Otherwise, when we get
3364         a release event, we check ahead with XPending to see
3365         if the next key is a KeyPress with the same keycode
3366         and timestamp. (Not 100% reliable, but pretty close.)
3367           
3368 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
3369         
3370         * gtk/gtkmain.c (gtk_propagate_event): Only do special
3371         special key-press grab handling for widgets within
3372         GtkWindows. Otherwise, fall through to normal case.
3373  
3374         This prevents key events being sent twice to GtkInvisible
3375         widgets, which can cause all sorts of mischief.
3376  
3377 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
3378  
3379         * gtk/gtkmain.c (gtk_propagate_event): When a grab
3380         widget is in effect, give the grab widget a first
3381         crack at KEY_PRESS/RELEASE events. (#424)
3382  
3383 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
3384
3385         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
3386         to extend the selection. (Roughly based on patch
3387         from Jay Cox, #50939)
3388
3389         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
3390         to properly handle previous GDK_BUTTON_PRESS. 
3391         (Patch from Jay Cox, #50938)
3392
3393         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
3394         '\0' back along with the deleted text. (#51148)
3395
3396 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
3397
3398         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
3399         the group when extracting it from the X keyboard event.
3400
3401         * modules/input/Makefile.am modules/input/imipa.c: 
3402         Simple module for entering IPA. (Do we need a 
3403         gtk-stupid-input-tricks CVS module?)
3404
3405 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
3406
3407         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
3408         const.
3409
3410         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
3411
3412         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
3413         is no focus widget for the dialog currently, grab the focus as well
3414         as the default.
3415
3416         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
3417         the action area's children to iterate through, not the
3418         dialog's children.
3419
3420 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
3421
3422         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
3423         Add plug-socket tests. (Won't work worth a darn until I commit
3424         the rest of the plug-socket changes, but no reason these
3425         can't go into CVS now.)
3426
3427 2001-03-02  Havoc Pennington  <hp@redhat.com>
3428
3429         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
3430         _gdk_region_get_xrectangles()
3431
3432         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
3433
3434         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
3435
3436         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
3437         function, contributed by Ron Steinke    
3438
3439         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
3440         gdk_net_wm_supports
3441
3442         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
3443         New function, contributed by Ron Steinke
3444
3445         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
3446         used to line up the text in the entry when using the entry for
3447         editable sheet cell hacks
3448
3449         * gtk/testgtk.c (create_entry): test the activate_default setting
3450         on GtkEntry
3451
3452         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
3453         cause the entry to activate the default button for a dialog when 
3454         activated
3455         (gtk_entry_get_activates_default): new function
3456
3457 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
3458
3459         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
3460         Hwang to move call to sync_selection() up a few lines
3461         to before the row list is modified, to fix crash when
3462         removing rows in the undo_selection list.
3463
3464         (Test case provided by Daniel Elstner:
3465
3466         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
3467
3468 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
3469
3470         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
3471         of tree->root_tree in parent_set rather than _map(), 
3472         fixing #50892 in a bit better manner.
3473
3474 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
3475
3476         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
3477
3478 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
3479
3480         * gtk/gtkstyle.c : Remove duplicate fwd decl for
3481         gtk_default_draw_shadow.
3482
3483 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
3484
3485         * gdk/gdkimage.c (gdk_image_new): Remove excess 
3486         warning, make warnings more verbose, treat a error
3487         in shmat as permanent, and don't try again.
3488         (#51163, Ed Randall.)
3489
3490 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
3491
3492         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
3493         delay for the first click before starting to scroll.
3494         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
3495
3496         * gtk/gtktext.c: GtkText should have I-beam cursor. 
3497         (based on gtk-enf-990513-1.patch, Eric Fisher.)
3498
3499 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
3500
3501         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
3502         cleanup to remove some references to unused
3503         ->xoffset, ->yoffset.
3504
3505 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
3506
3507         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
3508         mask. (#51039, fix from Martin Maierhofer)
3509
3510 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
3511
3512         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
3513         for unshifted + and shifted = for non-us keyboards.
3514         Make <Control>+ and <Control>- work as well as 
3515         <Control>KP_Plus, <Control>KP_Minus for recursive
3516         open/close.  (#2682, René Seindal)
3517
3518 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
3519
3520         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
3521         the active menu item before deactivating the menu,
3522         so gtk_menu_popdown doesn't change the history. (#50964)
3523         
3524 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
3525
3526         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
3527         draw lines with text_gc rather than black_gc.
3528         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
3529
3530 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
3531
3532         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
3533         Move handling of buttons fully in gtktreeviewcolumn.  This code is
3534         less interrelated then it was, but it still requires the
3535         GtkTreeView to map it.
3536
3537         * test/testtreecolumn.c: Now I can add a column to one view,
3538         remove it, add it to the another view, remove it, then re-add it
3539         to the first.  Nifty.
3540
3541 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
3542
3543         * docs/tutorial/gtk-tut.sgml: Minor corrections
3544
3545 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
3546
3547         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
3548         GtkRowReference.
3549
3550 2001-02-28  Havoc Pennington  <hp@redhat.com>
3551
3552         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
3553         draw_default
3554         (gtk_widget_draw_focus): remove this function; we could instead
3555         make it just gtk_widget_draw(), but in most cases I think the
3556         result would be broken user code, so think it's better to have
3557         that code not compile and get fixed
3558         (gtk_widget_draw_default): ditto
3559
3560         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
3561         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
3562         
3563         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
3564         widgets lose/get the default, instead of calling draw_default
3565         
3566         * docs/Changes-2.0.txt: note about all this
3567
3568         Then fixed every widget in GTK, I won't list all the filenames.
3569
3570 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
3571
3572         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
3573         _gtk_tree_row_reference_deleted.
3574         (inserted_callback): Proxy out to
3575         _gtk_tree_row_reference_inserted.
3576         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
3577         get around signal emission ordering problem.
3578
3579         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
3580         fix to work with SINGLE 
3581         (_gtk_tree_selection_internal_select_node): Major sanitization on
3582         selections.  SINGLE now seems to work.
3583
3584         * tests/Makefile.am: add testtreecolumn.c:
3585
3586         * tests/testtreecolumn.c: New test.  Mostly points out selection
3587         bugs currently, but will test columns later.
3588
3589         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
3590         selection bug.  I hate touching this code -- it's scary.
3591
3592 2001-02-26  Havoc Pennington  <hp@redhat.com>
3593
3594         * gtk/testgtk.c: test the window state stuff
3595
3596         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
3597         window come to the user's attention as if it were just created
3598         (gtk_window_iconify): new function
3599         (gtk_window_deiconify): new function
3600         (gtk_window_stick): new function
3601         (gtk_window_unstick): new function
3602         (gtk_window_maximize): new function
3603         (gtk_window_unmaximize): new function
3604
3605         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
3606
3607         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
3608
3609         * gdk/x11/gdkevents-x11.c: create window state events when
3610         appropriate
3611         (gdk_wmspec_supported): new function
3612
3613         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
3614         iconification before showing the window
3615         (gdk_window_deiconify): new function
3616         (gdk_window_stick): new function
3617         (gdk_window_unstick): new function
3618         (gdk_window_maximize): new function
3619         (gdk_window_unmaximize): new function
3620
3621         * gdk/gdkwindow.c: store the window state in the window; 
3622         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
3623         window->mapped.
3624         (gdk_window_get_state): return the current window state
3625
3626         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
3627         (gdk_event_get_state): handle GDK_WINDOW_STATE
3628         (gdk_synthesize_window_state): function to create the window state
3629         events
3630
3631         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
3632         event, for changes to "window state" such as maximized, sticky, 
3633         etc.
3634         
3635         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
3636         focuses a window
3637
3638         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
3639         finds out if we support a given WM spec hint
3640
3641 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
3642
3643         * docs/faq/gtk-faq.sgml: New question re memory leaks.
3644
3645 2001-02-25  Hans Breuer  <hans@breuer.org>
3646
3647         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
3648         cause we want to loose those prototypes only in the latter case
3649
3650         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
3651         GdkPixmapImplWin32 because it itsn't derived from it. Use the
3652         impl member variable instead
3653
3654         * gtk/gtk.def : updated
3655
3656         * gtk/gtklist.c : 
3657         * gtk/gtkmenus.c : include <string.h> for memset ()
3658
3659         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
3660         for everthing built here, but for gtk-x.x.dll only. This solves
3661         problem of indifferent gtk type definitions
3662
3663 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
3664
3665         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
3666
3667 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
3668
3669         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
3670         column that is exposed.
3671
3672         (_gtk_tree_view_update_size): Changed name from set_size, and
3673         changed function to do more work, and not force people calling it
3674         to figure out the size.  Simplifies a lot of code elsewhere.
3675
3676 2001-02-23  Alexander Larsson  <alexl@redhat.com>
3677
3678         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
3679         return solid masks for xpms that have no transparent color.
3680         This makes the ..._create_from_xpm... API backwards
3681         compatible.
3682
3683 2001-02-23  Tor Lillqvist  <tml@iki.fi>
3684
3685         * README.win32: Update. Mention the gtk-1-3-win32-production
3686         branch.
3687
3688         * gdk/win32/bdfcursor.c: New file. A program that generates
3689         xcursors.h. Thanks to Stefan Ondrejicka.
3690
3691         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
3692         compact format.
3693
3694         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
3695
3696         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
3697         function, uses xcursors.h.
3698         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
3699         cursor from inline data instead of using LoadCursor() to generate
3700         it from a resource.
3701
3702         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
3703         event, must check the Windows message for mouse button state, as
3704         the GDK event state might not have been built if it is
3705         undelivered. Remove one goto.
3706
3707         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
3708         SetCursor() if the current cursor as returned by GetCursor() is
3709         the window's previous cursor. The ChildWindowFromPoint() test
3710         apparently didn't work correctly.
3711
3712         * gdk/win32/rc/*.cur: Remove.
3713
3714         * gdk/win32/rc/gdk.rc.in: Remove cursors.
3715
3716         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
3717
3718         * gtk/makefile.{mingw,msc}.in: Updates.
3719
3720 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
3721
3722         * gtk/gtktreemodel.h: add functions for signal emission.
3723
3724         * gtk/gtktreestore.c: move to use above functions instead of
3725         g_signal_emit.
3726
3727         * gtk/gtkliststore.c: ditto
3728
3729 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
3730
3731         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
3732         GObject instead of GtkObject.
3733
3734         * gtk/gtkliststore.c: ditto.
3735
3736         * gtk/gtktreemodelsort.c: ditto.
3737
3738         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
3739         GtkTreeModelIface, instead of in each model.
3740
3741 2001-02-21  Havoc Pennington  <hp@redhat.com>
3742
3743         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
3744         unbreak this function
3745
3746         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
3747         properties
3748
3749         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
3750         properties
3751
3752         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
3753         properties
3754
3755         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
3756         mean unset the max length
3757
3758 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
3759
3760         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
3761         Changed name to be set_cell_data_func to make it clear what
3762         the functino does.  Close bug #51069.
3763
3764 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
3765
3766         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
3767         have memory actually freed.  Keeps box running longer.
3768
3769 2001-02-21  Alexander Larsson  <alexl@redhat.com>
3770         
3771         * gtk/gtkseparatormenuitem.[ch]:
3772         Added new menu separator item. The drawing and size handling
3773         is still done in GtkMenuItem, but the API is a bit more sane.
3774         
3775         * gtk/Makefile.am:
3776         Add gtkseparatormenuitem.[ch].
3777
3778         * gtk/gtk.h:
3779         Add gtkseparatormenuitem.h.
3780         
3781         * gtk/gtkentry.c:
3782         * gtk/gtkmenufactory.c:
3783         * gtk/gtktextview.c:
3784         Use the new API for menu separators.
3785         
3786         * demos/gtk-demo/menus.c (create_menu):
3787         Add some GtkSeparatorMenuItem demo code.
3788
3789 2001-02-20  Havoc Pennington  <hp@redhat.com>
3790
3791         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
3792         Lee Mallabone
3793
3794         * gtk/gtkarrow.c: Convert to new property API, patch from 
3795         Lee Mallabone
3796
3797 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
3798
3799         * tests/testtreeview.c (toggled_callback): fix to reflect change
3800         in GtkTreeModelStore.
3801
3802 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
3803
3804         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
3805         function to create an icon set from a pixbuf.
3806
3807 2001-02-20  Alexander Larsson  <alexl@redhat.com>
3808
3809         * gtk/gtkcellrenderertext.[ch]:
3810         Add a "markup" property.
3811
3812         * gtk/treestoretest.c:
3813         Use the markup property, remove some leftover stuff from
3814         GtkTreeModelMapping.
3815
3816 2001-02-20  Alexander Larsson  <alexl@redhat.com>
3817
3818         * gtk/gtklabel.c (gtk_label_set_selectable):
3819         Queue a redraw if the selectable setting was changed.
3820
3821 2001-02-20  Alexander Larsson  <alexl@redhat.com>
3822
3823         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
3824         Actually copy the whole gc, not just the public parts.
3825         
3826         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
3827         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
3828         labels.
3829
3830 2001-02-19  Havoc Pennington  <hp@pobox.com>
3831
3832         * gdk/gdkwindow.c: docs
3833
3834         * gdk/gdkrgb.c: docs
3835
3836         * gdk/gdkregion-generic.c: docs
3837
3838         * gdk/gdkgc.c (gdk_gc_set_values): docs
3839
3840         * gdk/gdkdraw.c: docs
3841
3842         * gdk/gdkdrawable.h: deprecate drawable get/set data
3843
3844 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
3845
3846         * demos/gtk-demo/dialog.c: Add simple new demo.
3847
3848 2001-02-19  Havoc Pennington  <hp@redhat.com>
3849
3850         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
3851         insert_child_anchor signal, bug #50245
3852
3853         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
3854         from create_child_anchor, so the anchor is passed in
3855
3856         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
3857         (_gtk_widget_segment_new): have the child anchor object passed in, 
3858         instead of creating it.
3859
3860         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
3861         to gtk_text_buffer_get_modified
3862
3863 2001-02-19  Havoc Pennington  <hp@redhat.com>
3864
3865         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
3866         changed GLib without fixing GTK
3867
3868         * gtk/gtkrange.h: Rename all the stupid implementation detail 
3869         functions to have an underscore in front. Most of them should 
3870         probably just go away, but for starters don't export them.
3871         Bug #50482
3872
3873 2001-02-19  Havoc Pennington  <hp@redhat.com>
3874
3875         * gdk/gdkcolor.h: test was backward, so deprecated functions were
3876         excluded by default
3877
3878         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
3879         clean up the old code a bit
3880
3881         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
3882         inconsistent state
3883
3884         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
3885         draw inconsistent state
3886
3887         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
3888         (create_menu): add inconsistent test
3889
3890         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
3891         new function
3892         (gtk_check_menu_item_get_inconsistent): new function
3893         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
3894         state (using etched in for now)
3895
3896         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
3897         draw inconsistent state
3898
3899         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
3900         function, used when the user has selected a range of stuff in
3901         different states
3902         (gtk_toggle_button_get_inconsistent): accessor for that
3903         (gtk_toggle_button_paint): draw inconsistent state (etched in?
3904         don't know what else to do)
3905
3906 2001-02-19  Hans Breuer <hans@breuer.org>
3907
3908         * gtk/gtk.def : updated exported symbols
3909
3910         * gtk/makefile.msc.in : updated
3911
3912         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
3913         a colormap, when invoked from testgtk::entry. I'm not sure where
3914         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
3915         avoids immediate crashing ...
3916
3917         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
3918         any objections ?
3919
3920         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
3921         0 parameter. At least msvc doesn't like macros with var args. 
3922         I simply removed the extra 0, was it a feature or a typo ?
3923
3924         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
3925         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
3926         because the value assignment to the internal struct wasn't working.
3927         I'm not absolutely sure. The problem could have been resolved by
3928         changing the "func" declartion in the struct, but was the pointer
3929         to the function pointer intended ?
3930
3931         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
3932
3933         * gdk/gdk.def : updated exported symbols
3934
3935         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
3936         only use SetDIBitsToDevice if there is a palette at the drawable
3937         and the image is GDK_VISUAL_PSEUDO_COLOR
3938
3939         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
3940
3941         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
3942
3943         * gdk/*/makefile.msc : updated
3944
3945 2001-02-19  Havoc Pennington  <hp@redhat.com>
3946
3947         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
3948         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
3949
3950         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
3951         (gdk_key_repeat_restore): nuke
3952
3953         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
3954         (gdk_init_check): no atexit func
3955
3956         * gdk/gdkrgb.h: mark some stuff deprecated
3957
3958         * gdk/gdkcolor.h: mark some stuff deprecated
3959         
3960         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
3961
3962         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
3963
3964 2001-02-16  Havoc Pennington  <hp@redhat.com>
3965
3966         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
3967         scroll steps.
3968
3969         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
3970         steps, and add Ctrl-arrow shortcuts for paging visually as with
3971         HScale, since Page Up and Page Down move logically.
3972
3973         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
3974         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
3975         
3976         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
3977         steps
3978         (gtk_range_scroll): handle the visual steps
3979
3980         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
3981         scroll steps
3982
3983         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
3984         steps, not the logical ones.
3985
3986         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
3987         (scroll_vertical): handle up/down steps
3988
3989 2001-02-19 Alexander Larsson  <alexl@redhat.com>
3990
3991         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
3992         Copy data and free data with free().
3993
3994         * gdk-pixbuf/gdk-pixbuf.c:
3995         * gdk-pixbuf/io-jpeg.c:
3996         * gdk-pixbuf/io-png.c:
3997         Use g_try_malloc/g_free instead malloc/free.
3998         
3999         * gdk-pixbuf/test-gdk-pixbuf.c:
4000         Must... initialize... gobject...
4001         
4002         * gdk-pixbuf/pixops/timescale.c:
4003         * gtk/gtkcalendar.c:
4004         Use g_malloc instead of malloc.
4005         
4006 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
4007
4008         * gtk/testgtkrc:
4009         Comment out property assignments, these don't work yet.
4010
4011 2001-02-17  Havoc Pennington  <hp@pobox.com>
4012
4013         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
4014         bit.
4015
4016 2001-02-17  Havoc Pennington  <hp@pobox.com>
4017
4018         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
4019         shadowed variables that had broken size request in some cases,
4020         leading to bogus tooltips (#50996)
4021
4022 2001-02-06  Jon K Hellan  <hellan@acm.org>
4023
4024         Implement fast browsing of tooltips, bug #50619
4025         
4026         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
4027         and last_popdown
4028         
4029         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
4030         use_sticky_delay and last_popdown.
4031         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
4032         time of popdown.
4033         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
4034         is NULL.
4035         (gtk_tooltips_recently_shown): New static function.  Return true
4036         if < sticky_delay has elapsed since last popdown.
4037         (gtk_tooltips_event_handler): Display window after sticky_delay
4038         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
4039         since last popdown.
4040         
4041 2001-02-17  Havoc Pennington  <hp@pobox.com>
4042
4043         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
4044         instead of (). #6394
4045
4046         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
4047         G_CONST_RETURN, make it return by reference, #50473
4048         
4049 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
4050
4051         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
4052         generated ENTER_NOTIFY event with 0, otherwise not explicitely
4053         setup fields contain garbage (e.g. subwindow, breaking
4054         gdk_drawable_ref() upon event copy).
4055         (gtk_menu_stop_navigating_submenu_cb): same here.
4056
4057         * gtk/gtklist.c (gtk_list_vertical_timeout): 
4058         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
4059         * gtk/gtkclist.c (vertical_timeout): 
4060         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
4061         default-zero-intialization for unions to memset(,0,), as unions are
4062         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
4063         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
4064
4065         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
4066         g_closure_sink() warning.
4067
4068         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
4069         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
4070         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
4071         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
4072         
4073 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
4074
4075         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
4076         gtk_*_store_get, and moved to GtkTreeModel.
4077
4078         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
4079
4080         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
4081
4082         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
4083
4084         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
4085         set the func.
4086
4087         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4088         freeze/thaw notify between setting all the properties for a cell.
4089
4090         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
4091
4092 2001-02-15  Havoc Pennington  <hp@redhat.com>
4093
4094         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
4095         the X coordinates so they're with respect to the line, rather than 
4096         with respect to the layout.
4097
4098         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
4099         Mallabone
4100
4101         * gtk/testgtk.c (create_range_controls): add vscale tests, 
4102         and inverted test
4103
4104         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
4105         #50806
4106
4107         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
4108
4109         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
4110         gtk_text_iter_is_end
4111
4112         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
4113         rename gtk_text_buffer_get_end_iter
4114
4115         * gtk/testgtk.c (create_labels): Add test for selectable
4116
4117         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
4118         the selection stuff. This code is kind of broken since it doesn't 
4119         use the theme engine.
4120
4121         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
4122         fix infinite loop and y offset problem
4123         (gdk_draw_layout_line_with_colors): fix foreground color handling
4124
4125         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
4126         that makes the label selectable.
4127         
4128         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
4129         layout when the style is set, since fonts etc. could have changed.      
4130
4131 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
4132
4133         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
4134
4135         * gtk/gtktreemodelsimple.[ch]: removed.
4136
4137 2001-02-16  Alexander Larsson  <alexl@redhat.com>
4138
4139         * gtk/gtktreemodelmapping.[ch]:
4140         New files. Implement GtkTreeModelMapping.
4141         
4142         * gtk/Makefile.am:
4143         Add gtktreemodelmapping.[ch].
4144         
4145         * gtk/gtk.h:
4146         Add gtktreemodelmapping.h
4147
4148         * gtk/treestoretest.c:
4149         Test the GtkTreeModelMapping
4150
4151 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
4152
4153         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
4154         have a demo, we might as well pass in real values.  Thanks to
4155         clahey for pointing this out.
4156
4157 2001-02-14  Havoc Pennington  <hp@pobox.com>
4158
4159         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
4160         "static" to a private function
4161         (gtk_image_menu_item_class_init): remove destroy handler,
4162         add "image" object property
4163
4164 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
4165
4166         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
4167         Add a shortcut if the window and the current clip_region doesn't
4168         overlap. This is needed when there are a lot of windows in a
4169         window. The layout test in testgtk is a good test.
4170
4171         * gdk/linux-fb/gdkwindow-fb.c:
4172         Whitespace fix.
4173
4174 2001-02-13  Sven Neumann  <sven@convergence.de>
4175
4176         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
4177
4178 2001-02-13  Alexander Larsson  <alexl@redhat.com>
4179
4180         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
4181         Don't reference last_cursor if it is null. Fixes crash when rotating
4182         the screen before having moved the mouse.
4183
4184         * gdk/linux-fb/gdkcc-fb.c: Zapp!
4185
4186         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
4187
4188         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
4189         when using 90 or 270 degrees rotation.
4190
4191 2001-02-12  Havoc Pennington  <hp@pobox.com>
4192
4193         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
4194         it always set the foreground, even if we were only using
4195         a stipple.
4196         (gdk_draw_layout_line_with_colors): new function, allow
4197         override colors
4198         (gdk_draw_layout_with_colors): new function, allow override
4199         colors
4200         (gdk_pango_layout_line_get_clip_region): function to get the clip
4201         region for a logical text range
4202         (gdk_pango_layout_get_clip_region): get the clip region for a
4203         logical text range
4204
4205         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
4206         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
4207         the right number of arguments.
4208
4209         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
4210         enhance the function to check that node data corresponds to a 
4211         view still belonging to the tree.
4212
4213         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
4214         GtkTreePath
4215         (gtk_tree_view_inserted): ditto
4216         (gtk_tree_view_child_toggled): ditto
4217
4218         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
4219         simplify this code.
4220
4221         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
4222         a PangoAttrList
4223
4224         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
4225
4226         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
4227
4228         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
4229         size in the size request 
4230         (gtk_menu_bar_size_allocate): consider toggle size here
4231
4232         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
4233         that displays a widget in the toggle slot
4234
4235         * gtk/testgtk.c: test GtkImageMenuItem
4236
4237         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
4238         
4239         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
4240         request and allocation
4241
4242         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
4243
4244         * gtk/gtkcheckmenuitem.c
4245         (gtk_check_menu_item_toggle_size_request): ditto
4246         
4247 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
4248
4249         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
4250         reference.
4251
4252         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
4253         and refuse to initialize GTK+ if they fail.
4254
4255 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
4256
4257         * configure.in: Add check for gtk-doc version.
4258
4259 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
4260
4261         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
4262         where the xpad/ypad was only being used on one side!
4263
4264 2001-02-11  Tor Lillqvist  <tml@iki.fi>
4265
4266         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
4267         function, copied from X11 version.
4268
4269         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
4270         DestroyCursor failures. The reason for the problem (despite the
4271         inconsistent messages from GetLastError()) was that
4272         DestroyCursor() cannot be called while a cursor is set in a
4273         window. Set the new cursor first and then destroy the old one.
4274         Thanks to jpe@archaeopteryx.com.
4275
4276         * gdk/win32/gdkcc-win32.c: Remove.
4277
4278         * gdk/win32/Makefile.am: Remove from here, too.
4279         
4280         * gdk/gdk.def
4281         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
4282
4283         * gtk/gtk.def
4284         * gtk/makefile.mingw.in: Updates.
4285
4286 2001-02-08  Havoc Pennington  <hp@redhat.com>
4287
4288         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
4289         add a widget to a bin that already has a child.
4290
4291         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
4292
4293         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
4294         
4295         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
4296
4297         * gdk/gdk.h: remove gdkcc.h
4298
4299         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
4300
4301         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
4302         GdkPixbuf, since the previous implementation was GdkColorContext
4303         dependent.
4304
4305         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
4306         
4307 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
4308
4309         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
4310         a sane value!
4311
4312 2001-02-08  Havoc Pennington  <hp@redhat.com>
4313
4314         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
4315         lighten them.
4316
4317 2001-02-08  Havoc Pennington  <hp@redhat.com>
4318
4319         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
4320         validation idle
4321
4322         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
4323         cell renderer
4324
4325         * demos/pixbuf-demo.c (timeout): remove deprecated
4326         gtk_widget_draw
4327
4328         * demos/testpixbuf-save.c (main): remove deprecated
4329         gtk_drawing_area_size
4330
4331         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
4332         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
4333         at the start of the allocation.
4334         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
4335         unsetup or NULL model.
4336
4337         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
4338         even/odd/sorted cells in the tree view.
4339
4340         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4341         bugfixes
4342
4343         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
4344         backgrounds with draw_flat_box using different detail for even/odd
4345         rows.
4346
4347         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
4348         row, so we can draw the alternating colors thing
4349
4350         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
4351         property from a synonym property, notify for the synonym.
4352         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
4353         (gtk_text_tag_get_property): Always return the font, even if
4354         all its fields aren't set
4355
4356         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
4357         store the attr list; it leaves us with no way to change attributes
4358         in _render according to the render flags, and no way to implement
4359         get_property. Instead store all the specific text attributes. 
4360         Separate whether an attribute is enabled from its value. Sync all
4361         properties with GtkTextTag, make them all consistent, etc.
4362
4363         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
4364         renderers can highlight the sort row/column     
4365
4366         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
4367         accessor functions to get values; this has the side effect of
4368         showing up which accessor functions were missing. Added those.
4369
4370         * gtk/gtktreeviewcolumn.h: Replace set_justification with
4371         set_alignment, to be consistent with GtkLabel, GtkMisc
4372
4373         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
4374         arrow.
4375
4376         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
4377
4378         * gtk/gtktreesortable.h: updates in here
4379
4380 2001-02-07  Sven Neumann  <sven@convergence.de>
4381
4382         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
4383         pango dimensions after painting the background. We used to draw
4384         gigantic flat boxes here.
4385
4386 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
4387
4388         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
4389         error introduced with earlier commit) (pointed out by
4390         Ollie Lho)
4391
4392 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
4393
4394         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
4395         which are no longer necessary.
4396
4397 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
4398
4399         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
4400
4401 2001-02-04  Tor Lillqvist  <tml@iki.fi>
4402
4403         * gdk/gdk.def
4404         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
4405         Provide dummy implementations.
4406
4407 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
4408
4409         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
4410
4411         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
4412         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
4413         deprecated this function.
4414
4415         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
4416         argument.
4417
4418 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
4419
4420         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
4421
4422 2001-02-03  Havoc Pennington  <hp@pobox.com>
4423
4424         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
4425         Mikael Hermansson with patch from Mikael (if there was a toggle
4426         start one after the first character in the range, this function
4427         was broken). Bug #50380
4428
4429 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
4430
4431         * configure.in: Remove confusing comment about X11.
4432
4433 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
4434
4435         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
4436         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
4437         
4438 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
4439
4440         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
4441         it breaks things on BSD. If you want to compile GTK+ with
4442         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
4443         when configuring, since GTK+ simply can't be "pure ANSI" 
4444         in the header files it uses. (#8170, Greg Hudson)
4445
4446 2001-02-02  Havoc Pennington  <hp@redhat.com>
4447
4448         * gtk/gtkwindow.c: docs
4449
4450         * gtk/gtkwidget.c: docs
4451         (gtk_widget_set_colormap): add a reference to the colormap
4452         (gtk_widget_get_default_colormap): add a reference to the colormap
4453
4454         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
4455
4456         * gtk/gtktextiter.c: docs
4457
4458         * gtk/gtkmain.c (gtk_propagate_event): docs
4459
4460         * gtk/gtkpaned.c (gtk_paned_get_position): docs
4461         (gtk_paned_set_position): docs
4462
4463         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
4464         sort interface, no implementation yet.
4465
4466         * demos/testpixbuf.c (new_testrgb_window): replace
4467         gtk_drawing_area_size() with gtk_widget_set_usize()
4468
4469         * demos/testpixbuf-drawable.c (main): ditto
4470         
4471         * gtk/testgtk.c: remove use of GtkStatusbarMsg
4472
4473         * gtk/gtktextbuffer.c: docs
4474
4475         * gtk/gtkstock.c: docs
4476
4477         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
4478
4479         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
4480
4481         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
4482         
4483         * gtk/gtkimage.c: add some docs in here
4484         (gtk_image_size_request): change name of
4485         gtk_widget_render_stock_icon
4486         (gtk_image_get_icon_set): don't dup returned string
4487         (gtk_image_get_icon_set): don't dup returned string
4488
4489         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
4490         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
4491         and gtkiconfactory.h functions
4492
4493         * gtk/gtkiconfactory.c: add some docs in here
4494
4495         * gtk/gtkmain.c (gtk_get_default_language): document
4496         (gtk_get_current_event): document
4497         (gtk_get_current_event_state): document
4498         (gtk_get_event_widget): document
4499
4500         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
4501
4502         * gtk/gtkcontainer.c: Add some documentation
4503         (gtk_container_add): give a more explanatory warning on adding an
4504         already-parented widget, this is kind of a FAQ and also a common
4505         typo that's easier to debug with a nice warning 
4506
4507         * gtk/gtkcellrenderertoggle.c
4508         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
4509         adding this, it's useless
4510         (gtk_cell_renderer_toggle_set_active): remove
4511         (gtk_cell_renderer_toggle_get_radio): add
4512
4513         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
4514         the NULL cell renderer, that doesn't make any sense to me. 
4515
4516         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
4517         demo code should never use deprecated features.
4518
4519         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
4520         code should never use deprecated features.
4521
4522         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
4523         gtk_widget_queue_clear_area deprecated
4524
4525         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
4526         deprecated
4527
4528         * gtk/gtklabel.h: mark gtk_label_get() deprecated
4529
4530         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
4531         a GdkImage deprecated, replaced by new consistently-named
4532         functions       
4533
4534         * gtk/gtkmain.h: Mark gtk_exit() deprecated
4535
4536         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
4537
4538         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
4539         deprecated
4540
4541         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
4542         so it won't appear in docs and confuse people.
4543
4544         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
4545
4546         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
4547         macros deprecated. (can't mark the type itself deprecated, since
4548         GtkProgressBar is not deprecated and we need the type decl to use
4549         GtkProgressBar)
4550
4551         * gtk/gtkpixmap.h: Mark deprecated
4552
4553         * gtk/gtkoldeditable.h: Mark deprecated
4554
4555         * gtk/gtklist.h: Mark deprecated
4556
4557         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
4558         for anything anymore.
4559
4560         * gtk/gtkctree.h: Mark deprecated
4561
4562         * gtk/gtkclist.h: Mark deprecated
4563
4564         * gtk/gtkpreview.h: Mark deprecated
4565
4566         * gtk/gtkpacker.h: Mark deprecated
4567
4568         * gtk/gtktipsquery.h: Mark deprecated
4569
4570         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
4571
4572         * gtk/gtkvruler.h: Add comment that it will move out of GTK
4573
4574         * gtk/gtkhruler.h: Add comment that it will move out of GTK
4575
4576         * gtk/gtkruler.h: Add comment that it will move out of GTK
4577
4578         * gtk/gtkgamma.h: Add comment that it will move out of GTK
4579
4580         * gtk/gtkcurve.h: Add comment that it will move out of GTK
4581
4582 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
4583
4584         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
4585         gdk_colormap_sync private since it was never exported
4586         in a header file.
4587
4588         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
4589         colormap->colors[] for StaticGray, StaticColor colormaps.
4590
4591         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
4592         was being used as if it was image->bits_per_pixel.
4593
4594         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
4595         for the image in the GdkImage structure since it isn't
4596         reconstructable, and we need it to handle packed types
4597
4598         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
4599         the assumption that on Win32 image->bits_per_pixel == image->depth,
4600         always.
4601
4602         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
4603
4604         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
4605         warning message if no converter can be found. 
4606
4607 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
4608
4609         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
4610         chars to isupper() / tolower(). (#567)
4611
4612         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
4613         to clear up 64-bit warnings. (#567)
4614
4615 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
4616
4617         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
4618         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
4619
4620         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
4621         since some people set $(libdir) separately. (#1290, David Kaelbling)
4622
4623 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
4624
4625         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
4626         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
4627         MAXPATHLEN, but the code here depends on a fixed value.)
4628         (#4524)
4629
4630 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
4631
4632         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
4633         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
4634
4635 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
4636
4637         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
4638         viewable there is no way that moving the node will cause the 
4639         focus row to become not viewable, so omit check on the visibility
4640         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
4641
4642 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
4643
4644         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
4645         selection before inserting new text.
4646
4647 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
4648
4649         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
4650         Make the sensitivity of the reparented child track that of
4651         the original parent menu item. (#34218, David Hodson)
4652
4653         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
4654         the case where the current item is destroyed properly.
4655
4656         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
4657         some edge cases with child-less menuitems.
4658         
4659 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
4660
4661         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
4662         key pop down window. (#12074, Jon K Hellan)
4663
4664 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
4665
4666         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
4667         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
4668         The solution here isn't perfect - you get an extraneous
4669         emission of "toggle", which could conceivably confuse an app,
4670         but better than the current situation. LXR search seems to
4671         indicate that no apps in GNOME CVS connect to "toggle".
4672
4673 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
4674
4675         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
4676         gtk_public_h_sources to directly here to avoid warning when
4677         building srcdir != builddir. (#9656)
4678
4679 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
4680
4681         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
4682         handlers in gtkrange.c return the proper values (TRUE == handled)
4683         (#10316).
4684
4685         This is just the tip of the iceberg, but gtkrange.c is the
4686         most common place where the propagation is problematical,
4687         and also a place where it is almost certainly safe to change
4688         this in the stable branch.
4689
4690         (You don't want right click popups on a range control or anything...)
4691
4692 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
4693
4694         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
4695         area on focus out, even if a background pixmap isn't set.
4696         (#13941)
4697         
4698 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
4699
4700         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
4701         to deal with setting the shape properly when scrolling arrows are
4702         turned on, but not visible because there is sufficient space.
4703         (#13432)
4704
4705 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
4706
4707         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
4708         items with submenus, destroy the item along with the submenu.
4709         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
4710         properly.
4711
4712         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
4713         later.
4714
4715 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
4716
4717         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
4718         the focus widget sometimes wasn't drawn with the default if there
4719         was no default widget.
4720
4721         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
4722         unreference pixmaps. 
4723
4724         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
4725         for some extra safety.
4726
4727 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
4728
4729         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
4730         the text of a cell to the old pointer value better, by
4731         copying the new text before freeing the old text. Some code
4732         cleanup. (#8079, Karl Nelson)
4733
4734 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
4735
4736         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
4737         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
4738
4739 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
4740
4741         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
4742         item from a menu, check to see if it matches 
4743         menu->old_active_menu_item, and if so, unref and clear
4744         old_active_menu_item (Patch from Pavel Cisler)
4745
4746         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
4747         menu_shell->active_menu_item, if it is the child being
4748         removed. (Patch based on that of Gene Ragan, #50337)
4749
4750 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
4751
4752         * gdk/linux-fb/gdkselection-fb.c: 
4753         * gdk/linux-fb/gdkcolor-fb.c: 
4754         * gdk/linux-fb/gdkdrawable-fb2.c: 
4755         * gdk/linux-fb/gdkfont-fb.c: 
4756         * gdk/linux-fb/gdkim-fb.c: 
4757         * gdk/linux-fb/gdkinput.c: 
4758         * gdk/linux-fb/gdkkeyboard-fb.c: 
4759         * gdk/linux-fb/gdkmain-fb.c: 
4760         * gdk/linux-fb/gdkrender-fb.c: 
4761         A bunch of whitespace cleanup.
4762         
4763 2001-01-30  Havoc Pennington  <hp@pobox.com>
4764
4765         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
4766         #ifdef GTK_ENABLE_BROKEN.
4767
4768         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
4769         GTK_ENABLE_BROKEN just before including the broken headers.
4770         
4771         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
4772         deprecated types registered.
4773
4774         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
4775         we have to test the broken stuff.
4776
4777         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
4778         
4779 2001-01-30  Havoc Pennington  <hp@redhat.com>
4780
4781         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
4782         here where prev pointer was set to the wrong thing
4783
4784         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
4785         (gtk_tree_path_is_descendant): new function
4786
4787         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
4788         cached length
4789         (gtk_list_store_get_iter): don't modify iter if we can't get the
4790         path.
4791
4792         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
4793         
4794         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
4795         GtkTreeDragDest
4796
4797         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
4798         was causing segfault
4799
4800         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
4801         pointer to NULL
4802
4803         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
4804
4805         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
4806         on returning FALSE
4807         (gtk_list_store_iter_children): ditto
4808         (gtk_list_store_iter_nth_child): ditto
4809         (gtk_list_store_iter_nth_child): ditto
4810         (gtk_list_store_iter_parent): ditto
4811
4812         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
4813         on iter->user_data != NULL instead of silently accepting it.
4814         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
4815         we are returning TRUE.
4816         (gtk_tree_store_iter_children): ditto
4817         (gtk_tree_store_iter_nth_child): ditto
4818         (gtk_tree_store_iter_parent): ditto
4819         (gtk_tree_store_insert): remove handling of parent->user_data ==
4820         NULL, replace with parent == NULL       
4821
4822         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
4823         and a comment explaining things
4824
4825         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
4826         interface support to GtkTreeStore.
4827
4828         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
4829         FALSE if no prev, fix
4830
4831         * gtk/gtktreeview.c (set_source_row): use a row reference
4832         (set_dest_row): use a row reference
4833
4834 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
4835
4836         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
4837         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
4838         (gtk_tree_selection_select_iter): The same as above.
4839
4840 2001-01-26  Havoc Pennington  <hp@redhat.com>
4841
4842         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
4843         which holds a handle to a specific row (particular set of values
4844         in the model, i.e. pointer-identity row).
4845
4846         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
4847         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
4848         Still need to use it for the src/dest row saved on the drag context.
4849
4850 2001-01-26  Havoc Pennington  <hp@redhat.com>
4851
4852         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
4853
4854         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
4855         not offset by TREE_VIEW_HEADER_HEIGHT
4856         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
4857         TREE_VIEW_HEADER_HEIGHT
4858
4859         * configure.in (included_loaders): for me, --with-included-loaders
4860         generates the error "the specified loader yes does not exist",
4861         i.e. the arg defaults to "yes", so change test for value ""
4862         to test for value "yes", and include all loaders in that case.
4863
4864         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
4865
4866         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
4867         handle TREE_VIEW_VERTICAL_SEPARATOR
4868         (gtk_tree_view_bin_expose): fix to consider the row offset as
4869         pointing halfway into vertical separator.       
4870         (gtk_tree_view_draw_node_focus_rect): ditto
4871
4872         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
4873         --gtk-debug=updates, which causes gdk_window_set_debug_updates
4874         (TRUE) to be called.
4875
4876         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
4877         debug mode where the invalid region is colored in on invalidate,
4878         so you can see the flicker and know whether your redraw code is 
4879         doing a good job.
4880
4881         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
4882         tree window coordinates (clip rect is in tree window coords)
4883
4884         * gtk/Makefile.am: add gtktreednd.[hc]
4885
4886         * gtk/gtkliststore.c: implement gtktreednd interfaces.
4887
4888         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
4889         drag-and-drop data operations on a model (so we can set up tree
4890         drag-and-drop automatically)
4891
4892         * gtk/testgtk.c: Add a window to change sensitivity in the
4893         GtkLabel test; add a way to change the entry frame in GtkEntry
4894         test
4895
4896         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
4897         (gtk_entry_get_has_frame): new functions to remove the frame
4898         around an entry
4899         (gtk_entry_size_request): shrink requisition if no frame
4900         (gtk_entry_draw_focus): don't draw frame if no frame
4901
4902         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
4903         checks inside a cell renderer
4904         (gtk_default_draw_option): ditto for options
4905
4906         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
4907         children from the alignment, not the button
4908         (gtk_tree_view_column_init): ref/sink the column, to emulate
4909         GObject refcounting.
4910
4911         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
4912         
4913         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4914         Use theme functions to draw the toggles 
4915
4916         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
4917
4918         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
4919         GdkPangoAttrEmbossed to use in rendering insensitive text
4920
4921         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
4922
4923         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
4924         using new GDK features
4925         
4926 2001-01-24  Alexander Larsson  <alexl@redhat.com>
4927
4928         * gtk/gtkimage.c:
4929         Splitted gtk_image_clear into gtk_image_clear() and
4930         gtk_image_reset(). Call gtk_image_clear() in ::destroy
4931         to avoid leaks.
4932
4933         * gtk/gtklabel.c (set_markup):
4934         Don't leak text.
4935
4936         * gtk/gtktextlayout.c:
4937         Always free display->shaped_objects.
4938
4939         * gtk/testgtk.c (create_clist):
4940         Don't leak custom style.
4941
4942 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4943
4944         * gtk/gtkcolorsel.c (grab_color_at_mouse):
4945         Don't leak image. Simplify using gdk_colormap_query_color().
4946         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
4947
4948         * linux-fb/gdkcolor-fb.c:
4949         Implemented gdk_colormap_query_color.
4950
4951 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4952
4953         * linux-fb/gdkcursor-fb.c:
4954         Don't leak built-in cursors.
4955
4956         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
4957         Don't leak tmp_points.
4958
4959         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
4960         Don't modify desc. Don't leak font if the PangoFont
4961         isn't found.
4962         
4963         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
4964         Free dash_list.
4965
4966         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
4967         Don't leak string.
4968         
4969 2001-01-20  Havoc Pennington  <hp@pobox.com>
4970
4971         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
4972         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
4973         me, matches Pango
4974
4975 2001-01-22  Havoc Pennington  <hp@redhat.com>
4976
4977         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
4978
4979         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
4980
4981         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
4982         Remove, move back to gdk-pixbuf
4983
4984         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
4985         to all the word functions
4986
4987         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
4988         before doing anything on NULL layout or if we don't have the focus
4989
4990         * gtk/testtext.c (fill_example_buffer): "justification"
4991
4992         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
4993         to be called "justification" not "justify"
4994
4995         * demos/gtk-demo/textview.c (create_tags): "justification"
4996         
4997         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
4998
4999 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5000
5001         * gdk/gdkwindow.c (gdk_window_invalidate_region):
5002         Don't leak visible_region. Use visible_region instead of region.
5003         
5004         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
5005         Don't do extra gdk_drawable_ref(). This is not X.
5006         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
5007         gdk_fb_focused_window is ref:ed.
5008         (gdk_fb_window_send_crossing_events): Watch out for destroyed
5009         windows.
5010
5011 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5012
5013         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
5014         Don't leak the PangoFontDescriptor.
5015
5016 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
5017
5018         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
5019         when not realized.
5020         (gtk_tree_view_scroll_to_cell): Make work when not realized.
5021         (gtk_tree_view_realize): add scroll_to support
5022         (gtk_tree_view_finalize): add a finalize method.  Populate.
5023         (gtk_tree_view_insert_column): ref and sink the column.
5024         (gtk_tree_view_append_column): ref and sink the column.
5025         (gtk_tree_view_queue_draw_node): New function to handle redrawing
5026         individual nodes.  Should make the code much more efficient, if
5027         actually used.
5028
5029 2001-01-19  Havoc Pennington  <hp@redhat.com>
5030
5031         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
5032         byte_offset variable was being used to mean both "offset into
5033         layout" and "offset into buffer line" which was no longer true
5034         with addition of preedit string; fix
5035
5036 2001-01-19  Havoc Pennington  <hp@redhat.com>
5037
5038         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
5039
5040         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
5041         function
5042
5043         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
5044         implement
5045
5046         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
5047         scroll_to_cell, matches TextView scroll functions better
5048         (gtk_tree_view_tree_to_widget_coords): new function
5049         (gtk_tree_view_widget_to_tree_coords): new function
5050         (gtk_tree_view_get_visible_rect): new function
5051         (gtk_tree_view_get_path_at_pos): accept negative coordinates
5052         (gtk_tree_view_draw_node_focus_rect): new function moved from
5053         draw_focus, also, use width of bin_window as width of the focus
5054         rect
5055         (gtk_tree_view_expand_row): fix bug where it didn't recognize
5056         already-expanded rows
5057         (gtk_tree_view_get_cell_rect): new function
5058         (gtk_tree_view_get_path_at_pos): return the click position
5059         relative to the passed-in cell
5060         (gtk_tree_view_set_expander_column): new function
5061
5062         * configure.in: remove gtk-config-2.0 chmod
5063
5064         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
5065         and properly handle drags with targets we don't understand
5066         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
5067         scrolling anyway
5068         (gtk_text_view_drag_drop): stop scrolling here though, and set the
5069         mark invisible
5070
5071         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
5072         function
5073         (gtk_drag_dest_get_target_list): new function
5074         (gtk_drag_dest_set_target_list): new function
5075         
5076         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
5077
5078         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
5079         related to drag-and-drop
5080
5081 2001-01-19  Alexander Larsson  <alexl@redhat.com>
5082
5083         * gdk/linux-fb/gdkprivate-fb.h:
5084         Define EMULATE_GDKFONT.
5085         Add extra pango_font stuff to GfkFontPrivate.
5086         
5087         * gdk/linux-fb/gdkdrawable-fb2.c:
5088         * gdk/linux-fb/gdkfont-fb.c:
5089         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
5090         emulation using PangoFont.
5091
5092 2001-01-17  Havoc Pennington  <hp@pobox.com>
5093
5094         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
5095         all the non-deprecated set_foo functions. Added missing object
5096         properties, and added g_object_notify() to setters. 
5097         Wrote docs.
5098         
5099 2001-01-18  Tor Lillqvist  <tml@iki.fi>
5100
5101         * gtk/gtkmain.c
5102         * gtk/gtkrc.c: (Win32) Use the new
5103         g_win32_get_package_installation_(sub)directory() functions.
5104
5105         * config.h.win32.in: New file.
5106         
5107         * config.h.win32: Removed.
5108
5109         * configure.in: Output config.h.win32.
5110
5111         * Makefile.am: Add it to EXTRA_DIST.
5112
5113         * gtk/gtk.def: Update.
5114
5115 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
5116
5117         * gtk/gtklabel.c (gtk_label_size_request): Set the
5118         attributes onto the PangoLayout even if they are newly
5119         created from label->pattern.
5120
5121 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
5122
5123         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
5124
5125         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
5126         structures in functions. Fixes bug where gtk_dataset_*
5127         was accidentally still being used in one place, causing
5128         every dest side event to be treated independently.
5129
5130         * gtk/gtkdnd.c: Remove last vestages of handling
5131         ::draw (fixes warning)
5132         
5133         * gtk/gtkentry.[ch]: Add drag and drop support.
5134
5135         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
5136         new function gtk_check_drag_threshhold() for checking
5137         to check if (dx,dy) has exceeded the threshhold for starting
5138         a drag and use it everywhere.
5139
5140 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
5141
5142         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
5143         add -I{includedir}/gtk-2.0.
5144
5145         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
5146         gdk/gdk-pixbuf.h: Doc fixups.
5147         
5148         * gtk/gtkobject.h: Remove trailing , from enum
5149
5150 2001-01-17 Alexander Larsson <alexl@redhat.com> 
5151
5152         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
5153         Doh! Mixed up x and y.
5154
5155         * gdk/linux-fb/gdkglobals-fb.c:
5156         Removed gdk_fb_pointer_grab_window_events,
5157         added _gdk_fb_pointer_grab_owner_events and
5158         _gdk_fb_keyboard_grab_owner_events.
5159
5160         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
5161         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
5162         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
5163         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
5164         Send crossing events after ungrab finished.
5165         (gdk_keyboard_grab): Set ..._owner_events
5166         (type_masks): Move out of function.
5167         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
5168         gdk_fb_keyboard_event_window): New functions, return the
5169         window an event should be targeted at. Handles grabs and
5170         event propagation. Can return NULL.
5171         (gdk_event_make): Remove event_mask checking. Now always
5172         returns an event.
5173                 
5174         * gdk/linux-fb/gdkkeyboard-fb.c:
5175         * gdk/linux-fb/gdkproperty-fb.c:
5176         * gdk/linux-fb/gdkselection-fb.c:
5177         Use new event_window/gdk_event_make() behaviour.
5178         
5179         * gdk/linux-fb/gdkmouse-fb.c:
5180         Use new event_window/gdk_event_make() behaviour.
5181         Only send motion events if in the same window.
5182         If grabbed, use cursor from window if sibling of grabbed
5183         window, and cursor from grabbed window otherwise.
5184
5185         * gdk/linux-fb/gdkprivate-fb.h:
5186         Update gdk_fb_window_send_crossing_events, gdk_event_make
5187         and grab varaible declarations. Add gdk_fb_*_event_window().
5188
5189         * gdk/linux-fb/gdkwindow-fb.c:
5190         Use new event_window/gdk_event_make() behaviour.
5191         Keep correct track of focus window.
5192         (gdk_window_set_events): Set all specific button motion masks
5193         if GDK_BUTTON_MOTION_MASK set.
5194
5195         * gtk/gtkdnd.c (gtk_drag_update):
5196         Free info->last_event if gdk_drag_motion returned FALSE.
5197
5198 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5199
5200         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
5201         Eliminate redraws when input-only windows are shown or
5202         hidden. Thanks to jpe@archaeopteryx.com.
5203
5204 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
5205
5206         * docs/faq/gtk-faq.sgml: FAQ update:
5207           - Update to bugzilla
5208           - Add GTK+ and security/SUID/SGID
5209           - Add DnD question
5210
5211 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
5212
5213         * gdk/linux-fb/gdkdnd-fb.c:
5214         Some cleanups.
5215         
5216 2001-01-15  Havoc Pennington  <hp@pobox.com>
5217
5218         * tests/testtreeview.c: add test stuff for CellRendererToggle
5219
5220         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
5221         accessor
5222
5223         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
5224         only toggle on button press (would do release like GtkButton, but
5225         we'd need implicit grab code for treeview cells)
5226
5227 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5228
5229         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
5230
5231         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
5232         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
5233
5234         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
5235         to g_{locale,filename}_{to,from}_utf8 to match current API.
5236
5237         * gtk/makefile.msc.in (gtk_OBJECTS)
5238         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
5239
5240         * gtk/gtk.def: Update.
5241
5242 2001-01-15  Tor Lillqvist  <tml@iki.fi>
5243
5244         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
5245         implementaion that more closely mimics the events that an X server
5246         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
5247         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
5248         with nested preview widgets, for instance, more responsive when
5249         you move the mouse quickly into them.
5250         (find_window_for_pointer_event): Make it actually compile.
5251         (gdk_event_translate): Set send_event to the value of
5252         InSendMessage (). This doesn't really mean the same as X11's
5253         send_event flag, but is close enough, says jpe@archaeopteryx.com
5254
5255 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5256
5257         * gdk/linux-fb/gdkdnd-fb.c:
5258         Implemented drag and drop.
5259         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
5260         when it tries to free and then copy the same event (info->last_event).
5261         I am not sure about why this happens, but will continue looking.
5262
5263 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5264
5265         * gdk/linux-fb/gdkwindow-fb.c:
5266         Use gdk_window_invalidate_rect instead of
5267         gdk_window_invalidate_rect_clear to minimise flashing.
5268         When hiding windows you need to clear the root window though.
5269
5270 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5271
5272         * gdk/linux-fb/gdkdrawable-fb2.c:
5273         For optization, add an full_shapes argument to gdk_fb_clip_region.
5274         If this is false, only the cliprects of the shapes are used.
5275
5276         * gdk/linux-fb/gdkprivate-fb.h:
5277         Export gdk_fb_window_peek_shape.
5278         Add full_shapes to gdk_fb_clip_region.
5279
5280         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
5281         When moving a window, don't clear everything under the it, just the
5282         root window. Makes stuff faster and flash less.
5283         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
5284         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
5285         offset of the shape.
5286         
5287
5288 2001-01-12  Havoc Pennington  <hp@redhat.com>
5289
5290         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
5291         current invalid region, fixes redraw bug while scrolling the 
5292         text widget
5293
5294         * gtk/gtktextview.c, gtk/gtktextview.h:
5295         Rearrange the scrolling/validation/etc. code in a major way, 
5296         so it seems to make sense to me. Probably isn't genuinely that
5297         much better, but...
5298
5299         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
5300         notifies
5301
5302         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
5303
5304 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
5305
5306         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
5307         Hide mouse pointer while rotation. Show it afterwards.
5308
5309 2001-01-12  Alexander Larsson  <alexl@redhat.com>
5310
5311         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
5312         windows in consideration when generating clip region.
5313
5314         * gdk/linux-fb/gdkfb.h:
5315         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
5316
5317         * gdk/linux-fb/gdkprivate-fb.h:
5318         Add shape to GdkWindowFBDatat.
5319         exported gdk_fb_window_get_abs_shape().
5320         removed gdk_fb_draw_lines declaration.
5321
5322         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
5323         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
5324         send focus changes when there is a grabbed window.
5325         (gdk_window_get_pointer): Handle shaped windows.
5326         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
5327         (gdk_fb_window_peek_shape): Returns the shape for a window,
5328         handles GDK_FB_USE_CHILD_SHAPE.
5329         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
5330         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
5331         (gdk_window_shape_combine_mask): Implement.
5332
5333         * gtk/gtkwindow-decorate.c:
5334         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
5335         setting the shape of a window makes the window transparent.
5336
5337 2001-01-11  Havoc Pennington  <hp@redhat.com>
5338
5339         * gtk/gtktreemodelsimple.h: Oops, broke some macros
5340
5341 2001-01-10  Havoc Pennington  <hp@redhat.com>
5342
5343         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
5344         add this function, bug 40251
5345
5346         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
5347         of type macro   
5348
5349 2001-01-11  Alexander Larsson  <alexl@redhat.com>
5350
5351         * acconfig.h:
5352         Added ENABLE_SHADOW_FB
5353
5354         * configure.in:
5355         Added --disable-shadowfb
5356
5357         * gdk/linux-fb/gdkcursor-fb.c:
5358         Update shadowfb when updating cursor
5359
5360         * gdk/linux-fb/gdkdrawable-fb2.c:
5361         Added wrappers for shadowfb that calls  the normal drawable
5362         methods, but calls gdk_shadow_fb_update(bounding box) when
5363         GdkWindows are drawed to.
5364         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
5365         which also returns the bounding box.
5366
5367         * gdk/linux-fb/gdkfb.h:
5368         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
5369
5370         * gdk/linux-fb/gdkgeometry-fb.c:
5371         Update shadowfb when scrolling window.
5372
5373         * gdk/linux-fb/gdkglobals-fb.c:
5374         Add _gdk_fb_screen_angle.
5375         
5376         * gdk/linux-fb/gdkkeyboard-fb.c:
5377         Test code for screen rotation. Shift-F2 in the xlate driver
5378         rotates the screen.
5379
5380         * gdk/linux-fb/gdkmain-fb.c:
5381         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
5382
5383         * gdk/linux-fb/gdkmouse-fb.c:
5384         Use fb_width/height instead of modeinfo.xres/yres.
5385
5386         * gdk/linux-fb/gdkprivate-fb.h:
5387         Added fb_men, fb_width, fb_height & fb_stride. When using
5388         shadow fb these can differ from the framebuffer stuff.
5389         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
5390         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
5391         _gdk_fb_screen_angle. Removed CM, RP.
5392
5393         * gdk/linux-fb/gdkrender-fb.c:
5394         Added code for shadowfb handling and screen rotation using
5395         shadowfb.
5396
5397         * gdk/linux-fb/gdkwindow-fb.c:
5398         Use fb_mem, fb_stride, fb_width, fb_height.
5399         Added recompute_rowstride to reset the rowstride of all windows.
5400         Added gdk_fb_recompute_all() which recomputes rootwindow size,
5401         window abs positions and window rowstrides. Usefull when the
5402         rotation has changed.
5403
5404 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
5405
5406         * docs/faq/gtk-faq.sgml: update to make web site updating easier
5407
5408 2001-01-10  Havoc Pennington  <hp@redhat.com>
5409
5410         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
5411         where sibling == iter
5412         (gtk_tree_store_insert_after): handle sibling == iter
5413         (gtk_tree_store_prepend): remove stamp checks
5414         (gtk_tree_store_insert_before): ditto
5415         (gtk_tree_store_append): ditto
5416         (gtk_tree_store_get_path): ditto
5417         (gtk_tree_store_get_value): ditto
5418         (gtk_tree_store_iter_has_child): ditto
5419         (gtk_tree_store_iter_n_children): ditto
5420         (gtk_tree_store_iter_nth_child): ditto
5421         (gtk_tree_store_insert_after): ditto
5422         (gtk_tree_store_is_ancestor): ditto
5423         (gtk_tree_store_iter_depth): ditto
5424         (gtk_tree_store_insert_before): assert that sibling's parent is
5425         the same as the passed-in parent
5426         (gtk_tree_store_insert_after): assert that sibling's parent is
5427         the same as the passed-in parent
5428
5429         
5430         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
5431         function to get the first iterator in a model
5432         
5433         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
5434         conventionally the "root" in this sense is just NULL afaict.
5435
5436         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
5437         where sibling == iter
5438         (gtk_list_store_insert_after): handle case where sibling == iter
5439
5440         * tests/testtreeview.c (run_automated_tests): fairly lame basic
5441         automated tests for ListStore, TreeStore
5442
5443         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
5444         (gtk_list_store_insert): update tail pointer, and fix it to work
5445         (gtk_list_store_insert_before): update tail pointer, and fix it to work
5446         (gtk_list_store_append): use tail to be faster
5447         (gtk_list_store_prepend): fix it, update tail pointer
5448         (gtk_list_store_insert_after): fix it, update tail pointer
5449
5450         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
5451         the list
5452
5453 2001-01-09  Havoc Pennington  <hp@redhat.com>
5454
5455         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
5456         is NULL due to a pending resize
5457
5458         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
5459         column width to values less than 1
5460
5461         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
5462         width to be between min/max width, and still set the width 
5463         even if autosize is turned on, so the tree view can use this 
5464         function in order to autosize.
5465         (gtk_tree_view_column_init): set initial width to 1 not 0
5466
5467         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
5468         setter function to modify column width, so we get notification
5469         (gtk_tree_view_insert_iter_height): ditto
5470         (gtk_tree_view_calc_size): ditto
5471         (gtk_tree_view_check_dirty): ditto
5472
5473         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
5474         properties to change all the interesting attributes of the tree
5475         view column.
5476         (gtk_tree_view_column_set_header_clickable): rename set_clickable
5477         (gtk_tree_view_column_get_clickable): add
5478         (gtk_tree_view_column_set_cell_renderer): don't unset the current
5479         attributes; assume a cell renderer with equivalent object
5480         properties has been swapped in. Do g_object_notify().
5481         (gtk_tree_view_column_set_visible): g_object_notify
5482         (gtk_tree_view_column_get_sizing): rename from get_col_type
5483         (gtk_tree_view_column_set_sizing): g_object_notify
5484         (gtk_tree_view_column_set_width): add g_object_notify
5485         (gtk_tree_view_column_set_min_width): ditto
5486         (gtk_tree_view_column_set_max_width): ditto
5487         (gtk_tree_view_column_set_title): ditto
5488         (gtk_tree_view_column_set_clickable): ditto
5489         (gtk_tree_view_column_set_widget): ditto
5490         (gtk_tree_view_column_set_justification): ditto
5491
5492 2001-01-09  Havoc Pennington  <hp@redhat.com>
5493
5494         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
5495         there are no rows in the model
5496
5497         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
5498         NULL, then return the start of the list
5499
5500         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
5501         if we can't get any rows from an empty model 
5502
5503         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
5504         extraneous * after function pointer typedef usage
5505
5506         * Makefile.am: don't specify full path to cp and rm
5507
5508         * gtk/gtkcellrenderertextpixbuf.c
5509         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
5510         NULL before dereferencing, fixes a segfault that happened from
5511         time to time
5512
5513         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
5514         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
5515         and reindent the function
5516         (gtk_cell_renderer_pixbuf_get_size): indentation
5517
5518         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
5519         we quit it
5520         (gtk_dialog_add_buttons_valist): add g_return_if_fail
5521         (gtk_dialog_set_default_response): New function, to set default
5522         button
5523         (gtk_dialog_set_response_sensitive): New function, to set 
5524         sensitivity of buttons
5525
5526         * gtk/gtkcellrendererpixbuf.c
5527         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
5528         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
5529
5530         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
5531         handle any G_TYPE_OBJECT subclass, not just the base class, and 
5532         also boxed types.
5533         (_gtk_tree_data_list_value_to_node): ditto
5534
5535         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
5536         --gtk-debug=tree
5537
5538         * gtk/gtkmain.c: add GTK_DEBUG_TREE
5539
5540         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
5541
5542 2001-01-09  Tor Lillqvist  <tml@iki.fi>
5543
5544         * gdk/win32/gdkevents-win32.c: Implement better mouse
5545         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
5546         (find_window_for_pointer_event): New function.
5547         (gdk_event_translate): Use it when handling mouse events.
5548
5549 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
5550
5551         * configure.in:
5552         Added --with-included-loaders option
5553
5554         * gdk-pixbuf/Makefile.am:
5555         * gdk-pixbuf/gdk-pixbuf-io.c:
5556         Add support for including selected gdk-pixbuf loaders only.
5557
5558         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
5559         gtk_window_set_has_frame):
5560         Added inline documentation.
5561
5562         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
5563         * docs/reference/gdk/tmpl/windows.sgml:
5564         Added inline documentation.
5565
5566 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
5567
5568         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
5569         realizing buttons that have already been realized.
5570
5571 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
5572
5573         * tests/testtreeview.c (main): Show menu items before adding to
5574         option menu.
5575
5576         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
5577         around if we kill them.
5578
5579         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
5580         Return if we pass in a NULL model.
5581
5582 2001-01-08  Havoc Pennington  <hp@redhat.com>
5583
5584         * tests/testtreeview.c: hack on this some
5585
5586         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
5587         gtk_tree_store_set_valist, v is for arrays, valist for varargs
5588         list
5589         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
5590
5591         * gtk/gtkliststore.h: Add varargs set() and get() convenience
5592         functions
5593
5594 2001-01-08  Alexander Larsson  <alexl@redhat.com>
5595
5596         * gtk/gtkwindow-decorate.[hc]:
5597         * gtk/Makefile.am:
5598         New files. Contains an implementation of a minimal WM for
5599         linux-fb.
5600
5601         * gtk/gtkwindow.h:
5602         Add the possibility for GtkWindows to specify a frame. This
5603         is used for the window decoration code, but could concievably
5604         be used for X programs too (xmms style windows).
5605         GtkWindow->frame is the toplevel window if the window is framed.
5606         The signal frame_event gets all events that are targeted to
5607         GtkWindow->frame.
5608         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
5609         
5610         * gtk/gtkwindow.c:
5611         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
5612         Call out to gtkwindow-decorate.c for WM support in linx-fb.
5613
5614 2001-01-08  Alexander Larsson  <alexl@redhat.com>
5615
5616         * docs/README.linux-fb:
5617         Correct filename ~/.pangoft2_aliases
5618
5619         * gdk/gdkwindow.h:
5620         Added new function gdk_window_get_decorations.
5621
5622         * gdk/linux-fb/gdkfb.h:
5623         Removed _gdk_window_get_decorations declaration.
5624         Renamed _gdk_window_set_child_handler to
5625         gdk_fb_window_set_child_handler.
5626
5627         * gdk/linux-fb/gdkwindow-fb.c:
5628         Renamed _gdk_window_set_child_handler to
5629         gdk_fb_window_set_child_handler.
5630
5631         * gdk/x11/gdkwindow-x11.c:
5632         New function gdk_window_get_mwm_hints().
5633         Implemented gdk_window_get_decorations.
5634
5635         * docs/reference/gdk/tmpl/windows.sgml:
5636         * docs/reference/gdk/gdk-sections.txt:
5637         Added gdk_window_get_decorations docs.
5638         
5639 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
5640
5641         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
5642         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
5643         gdk_fb_window_send_crossing_events):
5644         Possibly send focus events when the mouse moves from one
5645         window to another.
5646
5647 2001-01-07  Tor Lillqvist  <tml@iki.fi>
5648
5649         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
5650         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
5651         to match current API.
5652
5653         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
5654         environment variable is set, don't call g_error when on a
5655         palettized (PseudoColor) display. Some people want to use GTK+ 
5656         in 256-colour mode even though works only partially.
5657
5658         * gdk/gdk.def
5659         * gtk/gtk.def
5660         * gtk/makefile.mingw.in: Update.
5661
5662 2001-01-05  Havoc Pennington  <hp@redhat.com>
5663
5664         * tests/testtreeview.c: hack on this a bit
5665
5666         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
5667         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
5668
5669         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
5670         was spelled incorrectly
5671         (GTK_IS_TREE_MODEL_SIMPLE): ditto
5672
5673         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
5674         from gtk_tree_view_set_headers_active   
5675
5676         * gtk/gtktexttag.c:
5677         (gtk_text_tag_get_property): handle PROP_DIRECTION
5678         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
5679         properties, bug 40235
5680
5681         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
5682         forward_to_line_end
5683
5684 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
5685
5686         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
5687         modules/input/gtkimcontextxim.c: Adapt to new prototypes
5688         for unicode,locale,filename conversion functions.
5689
5690 2001-01-05  Havoc Pennington  <hp@redhat.com>
5691
5692         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
5693         broken if called on the first position in the buffer.
5694
5695         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
5696         forward_to_delimiters to be called only if we aren't already at
5697         the delimiters.
5698
5699 2001-01-05  Havoc Pennington  <hp@redhat.com>
5700
5701         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
5702
5703 2001-01-05  Alexander Larsson  <alexl@redhat.com>
5704
5705         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
5706         colormap in here. Sync from X port.
5707         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
5708         Sync from X port.
5709         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
5710         This happens now and then, and i don't think it is a bug.
5711         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
5712         != endpoint.
5713         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
5714         GDK_LINE_SOLID.
5715
5716         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
5717         some of the fields filled in at least.
5718
5719         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
5720         miLineArcD is no more, remove it from the function definition.
5721
5722 2001-01-04  Havoc Pennington  <hp@redhat.com>
5723
5724         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
5725         this
5726
5727         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
5728         user_data instead of tree_node
5729
5730         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
5731         TREE_VIEW_COLUMN_SIZE
5732
5733         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
5734         "size" field to "width" finishes bug 40061
5735
5736         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
5737         for bitfields, bug 40268
5738
5739 2001-01-04  Havoc Pennington  <hp@redhat.com>
5740
5741         Rename some stuff:
5742         
5743         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
5744
5745         s/GtkModelSimple/GtkTreeModelSimple/g;
5746         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
5747         s/gtk_model_simple/gtk_tree_model_simple/g;
5748         s/gtkmodelsimple/gtktreemodelsimple/g;
5749
5750         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
5751
5752         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
5753         s/column_set_col_type/column_set_sizing/g;
5754
5755         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
5756         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
5757
5758         s/GtkCellRendererType/GtkCellRendererState/g;
5759         
5760         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
5761         (gtk_cell_renderer_toggle_class_init): change "state" property to
5762         "active", to match GtkToggleButton
5763         (gtk_cell_renderer_toggle_get_active): new function, bug
5764         40269
5765         (gtk_cell_renderer_toggle_set_active): new function
5766         (gtk_cell_renderer_toggle_set_property): route changes to toggle
5767         state through gtk_cell_renderer_set_active
5768
5769 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
5770
5771         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
5772         temporarily until they work again.  Brought up to date with
5773         changes in the model.
5774         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
5775         model.
5776
5777 2001-01-04  Havoc Pennington  <hp@redhat.com>
5778
5779         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
5780         equal to the line length, then position iterator before paragraph 
5781         separators. Fixes crash reported by Mikael Hermansson when
5782         pressing left arrow from the start of a line.   
5783
5784         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
5785         about byte indexes off the end
5786         (iter_set_from_char_offset): add g_error about char offsets
5787         off the end
5788
5789 2001-01-03  Havoc Pennington  <hp@redhat.com>
5790
5791         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
5792
5793         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
5794         of private functions; remove inclusion of private headers.
5795
5796         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
5797         function, so we don't need private functions in gtktextdisplay.c
5798
5799         * gtk/gtktextiterprivate.h: underscore-ification
5800
5801         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
5802         to instead say "only useful to implement widgets"
5803
5804         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
5805         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
5806         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
5807
5808         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
5809         This function was completely broken
5810
5811         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
5812
5813         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
5814
5815         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
5816
5817         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
5818
5819         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
5820
5821         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
5822
5823         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
5824         gtk_paint_layout
5825
5826         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
5827         gtk_paint_layout
5828
5829         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
5830         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
5831         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
5832         which were not implemented.     
5833
5834         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
5835         insert_pixbuf signal. Rename delete_text to delete_range since it
5836         also deletes pixbufs and child anchors. This almost closes bug
5837         40245 (still need to deal with child anchors)
5838
5839         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
5840         insert_pixbuf, change signal names as appropriate, change types of
5841         signals taking marks/tags to have the specific type, not just
5842         G_TYPE_OBJECT
5843         
5844         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
5845         closes bug 40051
5846
5847         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
5848         unnecessary remove_contents() call
5849         (gtk_option_menu_class_init): add a "changed" signal, closes
5850         bug 40039
5851         (gtk_option_menu_update_contents): emit "changed" if the 
5852         active menu item changes
5853
5854         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
5855         cast to GtkObject, reported by Jonas Borgstrom
5856         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
5857         we can't do stuff with side effects in finalize. Instead, spew a
5858         warning if the loader isn't closed.
5859
5860         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
5861         colormap in here, non-X ports probably need to sync to this change
5862
5863         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
5864         assertion that colormap != NULL, you can set the colormap to NULL
5865         if you like.
5866         
5867         * Makefile.am: remove gtk-config-2.0
5868
5869         * configure.in: Use pkg-config to locate GLib. Remove
5870         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
5871         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
5872         Use pkg-config to locate Pango. Output correct Pango libs to
5873         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
5874
5875         * Makefile.am (pkgconfig_DATA): install only target-specific pc
5876         files
5877         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
5878         X11 pc files
5879
5880         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
5881         unref from here
5882
5883 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
5884
5885         * configure.in:
5886         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
5887
5888 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
5889
5890         * gtk/gtktextlayout.c
5891         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
5892         variable when moving back onto a single line.
5893
5894 2001-01-01  Havoc Pennington  <hp@redhat.com>
5895
5896         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
5897
5898         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
5899
5900         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
5901         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
5902
5903 2001-01-01  Havoc Pennington  <hp@redhat.com>
5904
5905         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
5906
5907         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
5908         GtkTextAttributes
5909
5910         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
5911         #40246
5912         (gtk_text_attributes_copy_values): rename from 
5913         gtk_text_attributes_copy
5914         (gtk_text_attributes_copy): a more standard GTK copy function, 
5915         which returns a new object
5916
5917 2001-01-01  Havoc Pennington  <hp@redhat.com>
5918
5919         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
5920         
5921         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
5922         don't fill in tree_view->priv->selection, kind of an unexpected
5923         side effect
5924
5925         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
5926         gtkintl.h
5927         
5928         * gtk/gtkcellrenderer.c: Remove definition of _ and include
5929         gtkintl.h
5930         (gtk_cell_renderer_get_property): remove calls to g_value_init
5931
5932         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
5933         gtkintl.h
5934
5935         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
5936         and include gtkintl.h
5937         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
5938         property names
5939
5940         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
5941         GtkTreeSelection
5942         (_gtk_tree_selection_new_from_with_view): rename, return
5943         GtkTreeSelection
5944         (_gtk_tree_selection_set_tree_view): rename with uscore
5945         (gtk_tree_selection_get_selected): fill in the "model" out param
5946         first, so it gets filled in even if we return at the top of the 
5947         function
5948         (gtk_tree_selection_real_select_all): add a comment and an else{}
5949         to clarify this a bit
5950         (gtk_tree_selection_real_unselect_all): add the same else{}
5951
5952         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
5953         set_tree_view to have underscore prefixes, move them to the
5954         private header, fix return type of new_with_tree_view
5955         (struct _GtkTreeSelection): mark struct
5956         fields private  
5957
5958         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
5959         GtkTreeModelFlags, not a guint
5960         (gtk_tree_path_prev): return gboolean not gint
5961         (gtk_tree_path_up): return gboolean not gint
5962
5963         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
5964         return GtkTreeModelFlags, not a guint
5965
5966         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
5967         that child model is non-null before unrefing it
5968         (g_value_int_compare_func): make this a qsort compare func, not 
5969         a boolean predicate
5970
5971         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
5972         (add -umn to the end), and mark it unimplemented
5973         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
5974         I don't see what it's for - doesn't the model always sort itself?
5975         (gtk_tree_model_sort_set_compare): this had the wrong signature
5976
5977         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
5978         Fix the docs to say that it destructively replaces existing
5979         attributes (previously said that it added attributes).
5980         (gtk_tree_view_column_set_visible): canonicalize bool before
5981         equality testing. Also, check for realization before
5982         hiding/showing the tree_column->window; if this window could exist
5983         before realization, then it's busted and needs fixing, we can't 
5984         create GDK resources pre-realization. Also, remove
5985         superfluous queue_resize(), since set_size() does that for us.
5986         (gtk_tree_view_column_set_col_type): check realization before 
5987         using tree_column->window
5988
5989         * gtk/gtktreedatalist.c: fix filename in copyright notice
5990
5991 2000-12-31  Havoc Pennington  <hp@pobox.com>
5992
5993         * gtk/gtktextview.c: Rearrange all the
5994         scroll-while-dragging-or-selecting code to be different, not
5995         necessarily better. ;-)
5996         (gtk_text_view_scroll_to_mark): Change this
5997         function to take within_margin as a fraction instead of a pixel
5998         value, and to take alignment arguments (indicating where to align 
5999         the mark inside the visible area)
6000         
6001         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
6002         to GtkObject
6003
6004         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
6005         behavior so that offsets past the end of the line are not 
6006         allowed, and an offset equal to the line length moves the iterator
6007         to the next line
6008         (gtk_text_iter_set_line_index): make parallel change
6009         (gtk_text_iter_get_bytes_in_line): add this function
6010         
6011         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
6012         of byte indexes off the end of the line; byte index at the end of
6013         the line now returns FALSE and doesn't fill in the requested
6014         values, byte index past the end of the line is an error.  Also,
6015         don't allow -1 offset anymore, since its meaning is unclear.
6016
6017         This change exposes some bug in visual cursor motion, where we
6018         end up with a huge invalid byte index; needs fixing. Symptom of 
6019         bug is a crash when you hit up arrow.
6020         
6021         (_gtk_text_line_char_locate): match the change to byte_locate
6022
6023         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
6024         from start of line properly. fixes bug reported by Mikael
6025         Hermansson where backspace would delete all text before the
6026         cursor.
6027
6028 2000-12-30  Tor Lillqvist  <tml@iki.fi>
6029
6030         * gdk/win32/gdkwindow-win32.c
6031         (gdk_window_impl_win32_get_visible_region): New function, as in
6032         the X11 backend.
6033         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
6034         instead of duplicating the same code here.
6035
6036         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
6037         GDK_COLORMAP macro.
6038
6039         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
6040         destroy function.
6041         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
6042         access that.
6043
6044         * gtk/gtk.def: Update.
6045
6046         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
6047
6048 2000-12-30  Havoc Pennington  <hp@pobox.com>
6049
6050         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
6051         colormap on input only windows, to avoid special cases all over
6052         the code for these windows.
6053
6054 2000-12-26  Tor Lillqvist  <tml@iki.fi>
6055
6056         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
6057         we are on a palettized display ("PseudoColor" in X11), as the code
6058         for that doesn't work anyway, and never has.
6059
6060 2000-12-22  Alexander Larsson  <alexl@redhat.com>
6061
6062         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
6063         Don't use isprint() for chars > 255.
6064
6065 2000-12-21  Havoc Pennington  <hp@redhat.com>
6066
6067         * tests/testtreeview.c: more work
6068
6069 2000-12-21  Alexander Larsson  <alexl@redhat.com>
6070
6071         * docs/README.linux-fb:
6072         Update the docs to the new pangoft2 way.
6073
6074 2000-12-21  Alexander Larsson  <alexl@redhat.com>
6075
6076         * configure.in:
6077         For linux-fb get the pangoft2 cflags and libs. This needs a recent
6078         pango version.
6079         Remove modules/linux-fb/Makefile.
6080
6081         * gdk/linux-fb/gdkdrawable-fb2.c:
6082         Render glyphs using freetype.
6083
6084         * gdk/linux-fb/gdkfb.h:
6085         Add new fb-specific functions needed for managing windows.
6086
6087         * gdk/linux-fb/gdkmain-fb.c:
6088         Remove gdk_font_init/fini() calls.
6089
6090         * gdk/linux-fb/gdkpango-fb.c:
6091         Remove old implementation. Use pangoft2 instead.
6092
6093         * gdk/linux-fb/gdkprivate-fb.h:
6094         Remove PangoFBFont and related stuff.
6095
6096         * gdk/linux-fb/gdkwindow-fb.c:
6097         Implement drawable->get_visible_region.
6098         Implement support for _gdk_window_set_child_handler () and
6099         _gdk_window_get_decorations().
6100
6101         * modules/Makefile.am:
6102         Remove linux-fb subdir.
6103
6104         * modules/linux-fb/*:
6105         Removed all.
6106         
6107 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
6108
6109         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
6110         calls, as they are no longer needed.
6111
6112         * gtk/gtktreemodelsort.c: Fix up the comparison code.
6113         
6114         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
6115         figure out how to emit a signal on an interface.
6116
6117 2000-12-20  Havoc Pennington  <hp@redhat.com>
6118
6119         * tests: new directory to contain tests, gtk/test* should move
6120         here sometime (with appropriate on-cvs-server hackery)
6121
6122         * tests/testtreeview.c, tests/Makefile.am: a test
6123         
6124         * configure.in (AC_OUTPUT): add tests/Makefile
6125
6126         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
6127         and "invisible_set" which were missing
6128
6129         * gtk/gtkrbtree.h: some cheesy indentation fix
6130         
6131 2000-12-20  Alexander Larsson  <alexl@redhat.com>
6132
6133         * gtk/gtkinvisible.c (gtk_invisible_realize):
6134         Attach the style to the window so that the style it is not
6135         leaked when unrealizing the window.
6136
6137 2000-12-18  Havoc Pennington  <hp@redhat.com>
6138
6139         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
6140         begin/end user action where appropriate
6141         (gtk_text_view_commit_handler): add begin/end user action
6142
6143         * gtk/gtktextbuffer.c: add begin/end user action signals, and
6144         bracket interactive operations with begin/end user action pair.
6145         
6146         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
6147         "interactive" arg from insert_text and delete_text signals.
6148         Add begin_user_action, end_user_action signals
6149         (gtk_text_buffer_begin_user_action): 
6150         (gtk_text_buffer_end_user_action): New functions to delimit 
6151         a user-visible action
6152
6153         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
6154         signals.
6155         
6156 2000-12-18  Havoc Pennington  <hp@redhat.com>
6157
6158         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
6159         was pretty non-working.
6160
6161         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
6162         by passing the length to g_utf8_validate().
6163
6164 2000-12-16  Havoc Pennington  <hp@pobox.com>
6165
6166         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
6167         Port to GObject, can go back in gdk-pixbuf after setting up 
6168         a gdk-pixbuf-marshal.h header over there.
6169
6170         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
6171         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
6172         args
6173         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
6174         set
6175         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
6176         here, do it when we create the buttons later
6177         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
6178         (gtk_tree_view_map): paranoia checks that column->button is shown 
6179         and unmapped
6180         (gtk_tree_view_size_request): only request visible children.
6181         Move header size calculation in here, for cleanliness, and 
6182         to maintain invariants for child widgets if we eventually 
6183         let users set different children inside the buttons
6184         (gtk_tree_view_map_buttons): factor out code to map buttons,
6185         since it was being called several times
6186         (gtk_tree_view_size_allocate_buttons): move_resize the drag
6187         windows instead of just moving them; their height may change 
6188         if we allow random widgets in there, or the theme changes.
6189         (gtk_tree_view_size_allocate): move button size allocation 
6190         above emitting the scroll signals, to ensure a sane state when we
6191         hit user code
6192         (gtk_tree_view_button_release): remove queue_resize after
6193         tree_view_set_size(), set_size() will handle any resize queuing
6194         that's needed
6195         (gtk_tree_view_focus_in): just queue a draw, don't fool with
6196         draw_focus goo
6197         (gtk_tree_view_focus): use gtk_get_current_event() and
6198         gdk_event_get_state()
6199         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
6200         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
6201         semicolon
6202         (gtk_tree_view_create_button): show the button here
6203         (gtk_tree_view_button_clicked): actually emit the clicked signal
6204         on the column
6205         (_gtk_tree_view_set_size): return right away if the size is
6206         unchanged, as a cheesy optimization
6207         (gtk_tree_view_setup_model): rename set_model_realized to 
6208         setup_model to match the flag that indicates whether we've 
6209         called it
6210         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
6211         exist, because set_scroll_adjustment does that and it shouldn't
6212         matter what order you call these in
6213         (gtk_tree_view_get_vadjustment): ditto
6214         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
6215         for paranoia
6216         (gtk_tree_view_set_headers_visible): call
6217         gtk_tree_view_map_buttons() instead of using cut-and-paste code
6218         (gtk_tree_view_append_column): clarify whether the return value
6219         is the count of columns before or after, and do the increment 
6220         separately from the return statement so you can tell from the code.
6221         (gtk_tree_view_remove_column): ditto
6222         (gtk_tree_view_insert_column): ditto
6223         (gtk_tree_view_get_column): remove g_return_if_fail for columns
6224         outside the existing range, the docs say that outside-range
6225         columns are allowed, so we handle them as documented. (Presumably
6226         this allows a nice loop with column != NULL as test.)
6227         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
6228         mean (left/right/center etc.).
6229         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
6230         (gtk_tree_view_expand_row): add docs
6231         (gtk_tree_view_collapse_row): add docs
6232
6233         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
6234         function to emit the clicked signal on a column
6235         
6236         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
6237         state of an event
6238         (gdk_event_get_time): don't treat GDK_SCROLL 
6239         as a button event, remove default case from switch so gcc 
6240         will whine if we don't explicitly handle all event types
6241
6242         * gtk/gtktreeselection.h: added some FIXME 
6243         
6244         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
6245         "columns" to "n_columns" and "column" to "columns" for clarity
6246
6247 2000-12-16  Havoc Pennington  <hp@pobox.com>
6248         
6249         * gtk/gtktextiter.c: General cleanup of the log attr iteration
6250         stuff. This should make e.g. the delete key work again in the
6251         text widget...
6252         (gtk_text_iter_forward_cursor_positions): handle negative count
6253         (gtk_text_iter_backward_cursor_positions): handle negative count
6254         (gtk_text_iter_forward_word_ends): handle negative count
6255         (gtk_text_iter_backward_word_starts): handle negative count
6256
6257         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
6258         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
6259         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
6260         GObject. No doubt will cause breakage.
6261
6262         * demos/gtk-demo/textview.c: remove hacks around
6263         non-GObject-ification of the text objects
6264
6265         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
6266         the text tag
6267         
6268 2000-12-14  Havoc Pennington  <hp@pobox.com>
6269
6270         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
6271         that we have Xrender
6272
6273 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
6274
6275         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
6276         Add two virtualized functions gdk_drawable_get_clip_region - to
6277         get the clip region when drawing.
6278         
6279         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
6280         use invalidate_region.
6281
6282         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
6283         region.
6284
6285         * acconfig.h configure.in: Check for Xft. For now, assume
6286         that if Xft is found, Pango was compiled with Xft support
6287         as well.
6288
6289         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
6290         gdk_colormap_query_color().
6291         
6292         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
6293         with Xft if appropriate.
6294
6295         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
6296         a pangoxft context if we have XFT and the environment
6297         variable GD_USE_XFT is set.
6298         
6299         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
6300         and also possibly an XftDraw structure.
6301
6302         * gtk/gtkfontsel.c: Handle the case where the font from the
6303         style doesn't match any of the fonts a bit better.
6304         
6305         * gtk/testgtk.c: Add tabs between directional segments for
6306         hebrew/arabic test. (Not really necessary, just a little
6307         prettier.)
6308
6309 2000-12-14  Havoc Pennington  <hp@redhat.com>
6310
6311         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
6312         reading a file
6313
6314 2000-12-14  Havoc Pennington  <hp@redhat.com>
6315
6316         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
6317         unused call to get_last_line()
6318
6319         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
6320         here until boxed is working (and maybe after that - we should
6321         really not gratuitously break old code)
6322
6323         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
6324         specific types for font_desc and tabs args, move them to
6325         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
6326         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
6327
6328         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
6329         use GTK_TYPE_POINTER for signal signatures as a hack-around
6330
6331         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
6332         PangoTabArray
6333
6334         * gtk/gtktextlayout.c (line_display_iter_to_index): 
6335         make static
6336         (line_display_index_to_iter): make static
6337
6338         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
6339         to marshal a string not a boxed
6340
6341         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
6342
6343         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
6344         since the UTF-8 isn't validated yet
6345
6346         * gtk/gtktextsegment.c (char_segment_check_func): don't require
6347         lines to end in '\n'
6348         
6349         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
6350         forward_to_delimiters, and grapheme boundaries
6351         (gtk_text_view_delete_from_cursor): properly handle non-newline
6352         delimiters, and grapheme boundaries
6353
6354         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
6355         to gtk_text_iter_forward_to_delimiters, and make it work properly
6356         if empty lines end with a character other than '\n'
6357
6358         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
6359         position
6360
6361 2000-12-15  Tor Lillqvist  <tml@iki.fi>
6362
6363         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
6364
6365         * gtk/gtk.def
6366         * gdk/gdk.def: Update.
6367
6368         * gdk/win32/gdkmain-win32.c
6369         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
6370         gdkmain-win32.c here.
6371
6372         * gdk/win32/makefile.mingw.in (all): No need to make
6373         gdk-win32res.o here, the makefile one step up will call us to make
6374         it.
6375
6376         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
6377         gdkkeys-win32.
6378
6379         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
6380
6381         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
6382         call to g_source_add().
6383
6384         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
6385         leak. Thanks to Andreas Kemnade.
6386
6387 2000-12-13  Havoc Pennington  <hp@pobox.com>
6388
6389         * gtk/gtktextbtree.h: Remove double _ in front of some functions
6390
6391         * gtk/gtktext*.[hc]: update accordingly
6392         
6393 2000-12-13  Havoc Pennington  <hp@pobox.com>
6394
6395         * gtk/gtktextbtree.h: Put _ in front of every function in this 
6396         header file
6397
6398         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
6399
6400 2000-12-13  Alex Larsson  <alexl@redhat.com>
6401
6402         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
6403         Add support for ps2 intellimouse.
6404
6405         * gdkkeyboard-fb.c:
6406         Move shift-F1 repaint handling to xlate handler only.
6407         
6408         * docs/README.linux-fb:
6409         Add imps2 to docs.
6410         Document the new refresh keys.
6411         
6412 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
6413
6414         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
6415
6416         * gtk/gtkbox.c: change property types from (u)long to (u)int for
6417         ::position and ::padding.
6418
6419         * gtk/gtkcontainer.c: make ::border_width an INT property.
6420
6421         * gtk/gtkpacker.c: make ::position an INT property.
6422
6423         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
6424         guard against NULL h/v scrollbars, since this is used at construction
6425         time.
6426
6427         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
6428         internal gtk_clist_constructor().
6429
6430         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
6431         gtk_ctree_constructor().
6432
6433         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
6434         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
6435
6436         * docs/reference/Makefile.am: fun stuff, disabled docs generation
6437         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
6438
6439         * gtk/gtkwidget.[hc]:
6440         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
6441         and gtk_widget_get().
6442         (gtk_widget_new): use g_object_new_valist().
6443         (gtk_widget_set): use g_object_set_valist().
6444
6445         * gtk/gtkobject.[hc]:
6446         removed gtk_object_arg_get_info(), gtk_object_getv(),
6447         gtk_object_query_args(), gtk_object_newv(),
6448         gtk_object_class_add_signals(),
6449         gtk_object_class_user_signal_new(),
6450         gtk_object_class_user_signal_newv(),
6451         gtk_object_arg_set(), gtk_object_arg_get(),
6452         gtk_object_args_collect(),
6453         gtk_object_default_construct(),
6454         gtk_object_constructed(),
6455         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
6456         removed nsignals, signals and n_args members from GtkObjectClass.
6457         (gtk_object_new): use g_object_new_valist().
6458         (gtk_object_set): use g_object_set_valist().
6459         (gtk_object_get): use g_object_get_valist().
6460         
6461         * gtk/gtkcompat.h: define gtk_object_default_construct().
6462         
6463         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
6464         g_object_new().
6465
6466         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
6467         fucntions, cleaned up method assignments (make sure your structures
6468         are setup properly before calling out). removed all GTK_CONSTRUCTED
6469         hacks ;)
6470
6471 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
6472
6473         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
6474         off-by-one error in checks. (Dave Lambert)
6475
6476 2000-12-12  Alexander Larsson  <alexl@redhat.com>
6477
6478         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
6479         Don't free gdk_fb_keyboard twice.
6480
6481 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
6482
6483         * gtk/testgtk.c:
6484         (create_tooltips): 
6485         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
6486         use GObject swapped_signal:: properties instead.
6487
6488         * gtk/gtkcellrenderertoggle.c: 
6489         * gtk/gtkcellrenderertextpixbuf.c: 
6490         * gtk/gtkcellrenderertext.c: 
6491         * gtk/gtkcellrendererpixbuf.c: 
6492         * gtk/gtkcellrenderer.c:
6493         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
6494         missing warnings for invalid property ids, install properties
6495         with g_object_class_install_property() now.
6496         
6497         * gtk/gtksignal.c:
6498         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
6499         
6500 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
6501         
6502         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
6503         to determine if a window is the focus widget within
6504         its toplevel.
6505
6506         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
6507         to be boolean.
6508
6509         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
6510         of the case where the container CAN_FOCUS to here instead
6511         of having it in each individual move-the-focus place.
6512
6513         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
6514         focusing to be geometric in a much more obvious sense. Arrowing
6515         around is still non-intuitive because it isn't perfect and
6516         because entries, etc, grab the arrow keys, but it at least
6517         usually will do what you expect now.
6518         
6519         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
6520         file.
6521
6522         * gtk/gtknotebook.c: Change tabs to be a single item in
6523         the focus chain. Make movement of focus on tabs with arrow
6524         keys wrap around.
6525         
6526         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
6527         CHECK_FIND_CHILD macro to give informative error messages
6528         instead of silent returns.
6529
6530         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
6531         flag since we handle GdkReturn on the tabs.
6532
6533         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
6534         windows rather than sending expose events directly.
6535
6536         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
6537         definition for GtkNotebookPage into .c file, since it is private.
6538
6539         * gtk/testgtk.c (create_notebook): Add option for 
6540         testing borderless notebook.
6541
6542         * gtk/testgtk.c (page_switch): Removed egregious poking
6543         around in GTK+ internals.
6544
6545         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
6546
6547         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
6548         properly through gtk_clist_focus. Make the title headers a
6549         single item in the tab-focus chain, and make left-right wrap
6550         around.
6551
6552         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
6553         focus method so that wrapping around works properly.
6554
6555         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
6556         that is handled for the widget now. 
6557
6558 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
6559
6560         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
6561         widgets as TOPLEVEL.
6562
6563         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
6564         TOPLEVEL widgets are containers.
6565
6566         * gtk/gtkinvisible.h: Remove useless include.
6567
6568 2000-12-11  Havoc Pennington  <hp@redhat.com>
6569
6570         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
6571         Handle chopping off \r\n and 0x2029 in addition to \n before
6572         passing to PangoLayout
6573
6574         * gtk/gtkimcontextsimple.c
6575         (gtk_im_context_simple_get_preedit_string): 
6576         return an empty string if no match is pending
6577
6578         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
6579         assertion that the returned preedit string was sane
6580
6581         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
6582         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
6583         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
6584
6585 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
6586
6587         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
6588         Fix up finalizer to chain to its parent.
6589
6590 2000-12-11  Alexander Larsson  <alexl@redhat.com>
6591
6592         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
6593         Clearified the difference between the keyboard types. Wrote a note
6594         about the magic sysrq key to get out of raw mode.
6595
6596 2000-12-09  James Henstridge  <james@daa.com.au>
6597
6598         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
6599         member to hold masks for detecting the start of a protocol packet.
6600         (mouse_devs): add packet start masks for ps2 and ms device types.
6601         Left the mask for fidmour blank, as I have no idea what it should
6602         be.
6603         (handle_mouse_io): skip bytes until we get to the start of a
6604         packet.  My Logitech mouse seems to be passing an extra NULL pad
6605         byte, and GPM does a similar thing here.
6606         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
6607         this is the ms mouse driver.
6608         (gdk_fb_mouse_ms_packet): fix up button handling, which was
6609         completely broken except for button1.  It was checking the wrong
6610         bit in the packet for the status of the right mouse button, and
6611         wrongly assuming right == button2 rather than 3.  I fixed that and
6612         also added support for middle button (button2).
6613
6614 2000-12-08  Havoc Pennington  <hp@redhat.com>
6615
6616         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
6617         that cause a segfault on text insertion
6618
6619         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
6620         warning
6621
6622         * gtk/gtktextiter.c (test_log_attrs): use
6623         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
6624
6625         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
6626         Get log attrs for a line, using a cache stored on the buffer
6627         
6628         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
6629         reported by Jeff Franks
6630
6631 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
6632
6633         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
6634         /dev/ttyS0 -> /dev/mouse
6635
6636 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
6637
6638         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
6639         Added dummy gdk_fontset_load.
6640
6641 2000-12-08  Alexander Larsson  <alexl@redhat.com>
6642
6643         * docs/README.linux-fb:
6644         * docs/Makefile.am:
6645         Initial GtkFB docs.
6646         
6647         * gdk/linux-fb/Makefile.am:
6648         Define GDK_DATA_PREFIX.
6649
6650         * gdk/linux-fb/gdkmain-fb.c:
6651         Fix typo.
6652         Change default display to /dev/fb0.
6653
6654         * gdk/linux-fb/gdkpango-fb.c:
6655         Add $(prefix)/share/fonts/ to font path.
6656         
6657 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
6658
6659         * gdk/linux-fb/gdkkeyboard-fb.c:
6660         New file containing the abstracted keyboard driver. Most code
6661         taken from gdkinput-ps2.c
6662
6663         * gdk/linux-fb/gdkinput-ps2.c:
6664         Removed file.
6665         
6666         * gdk/linux-fb/Makefile.am:
6667         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
6668
6669         * gdk/linux-fb/gdkcolor-fb.c:
6670         display->fb was renamed to display->fb_fd.
6671
6672         * gdk/linux-fb/gdkcursor-fb.c:
6673         gdk_mouse_get_info -> gdk_fb_mouse_get_info
6674
6675         * gdk/linux-fb/gdkinput.c:
6676         Moved gdk_input_init here from gdkinput-ps2.c
6677
6678         * gdk/linux-fb/gdkmain-fb.c:
6679         display->fb was renamed to display->fb_fd.
6680         Now the tty and the console is opened here instead
6681         of in the keyboard driver. Also check GDK_VT to see what
6682         tty to open.
6683         Move gdk_beep () here from gdkinput-ps2.c
6684         gdk_mouse_get_info -> gdk_fb_mouse_get_info
6685
6686         * gdk/linux-fb/gdkmouse-fb.c:
6687         Add header.
6688         gdk_mouse_get_info -> gdk_fb_mouse_get_info
6689         Return correct keyboard modifiers.
6690         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
6691
6692         * gdk/linux-fb/gdkprivate-fb.h:
6693         Add tty and vt info to display.
6694         Add orignal modeinfo storage to display
6695         Update global functions
6696
6697         * gdk/linux-fb/gdkwindow-fb.c:
6698         Added gdk_fb_window_find_focus().
6699         gdk_mouse_get_info -> gdk_fb_mouse_get_info
6700
6701 2000-12-07  Havoc Pennington  <hp@pobox.com>
6702
6703         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
6704         function, noticed by Alex
6705
6706 2000-12-06  Elliot Lee  <sopwith@redhat.com>
6707
6708         * configure.in: Detect freetype properly
6709
6710         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
6711         above.
6712
6713 2000-12-06  Alexander Larsson  <alexl@redhat.com>
6714
6715         * gdk/linux-fb/Makefile.am:
6716         Add gdkmouse-fb.c
6717         
6718         * gdk/linux-fb/gdkmouse-fb.c:
6719         New file. Abstracted the mouse drivers a bit.
6720
6721         * gdk/linux-fb/gdkcursor-fb.c:
6722         The cursor hide/show functions was moved here from gdkinput-ps2.c.
6723
6724         * gdk/linux-fb/gdkinput-ps2.c:
6725         Removed old mouse handling code. Moved cursor handling code
6726         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
6727         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
6728         gdk_mouse_get_info.
6729
6730         * gdk/linux-fb/gdkmain-fb.c:
6731         Pass NULL pointers for x,y in gdk_mouse_get_info call.
6732
6733         * gdk/linux-fb/gdkprivate-fb.h:
6734         Removed public gdk_fb_find_common_ancestor, added and renamed
6735         functions for the new mouse handling code.
6736
6737         * gdk/linux-fb/gdkwindow-fb.c:
6738         Moved gdk_fb_window_send_crossing_events here. added global
6739         variable gdk_fb_window_containing_pointer. made
6740         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
6741         renamed to gdk_mouse_get_info.
6742
6743 2000-12-06  Alexander Larsson  <alexl@redhat.com>
6744
6745         * gdk/linux-fb/gdkevents-fb.c:
6746         Update to match latest gmain/gsource changes.
6747
6748         * gdk/linux-fb/gdkinput-ps2.c:
6749         Bogus gdk_keymap_get_entries_for_keycode implementation so that
6750         it links. Will be implemented later.
6751
6752 2000-12-03  Havoc Pennington  <hp@pobox.com>
6753
6754         * gdk/Makefile.am: add gdkkeys.[hc]
6755
6756         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
6757         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
6758
6759         * acconfig.h, configure.in: add checks and command line options
6760         for XKB
6761
6762         * gdk/x11/gdkkeys-x11.c: Implement the above functions
6763         
6764         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
6765         and group in the key event
6766
6767         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
6768         field with the low-level hardware key code, and a group
6769         field with the keyboard group
6770
6771         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
6772         and declare a couple globals used for keymap handling
6773         
6774         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
6775         hold down Shift-Control and type a hex number to get a Unicode 
6776         character corresponding to the hex number
6777         (gtk_im_context_simple_get_preedit_string): Fix cursor position
6778         (return bytes not chars)
6779
6780 2000-12-05  Elliot Lee  <sopwith@redhat.com>
6781
6782         * gdk/gdkcolor.h: Make GdkColor specify element sizes
6783         to avoid waste on 64-bit platforms.
6784
6785 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
6786
6787         * INSTALL: Fix link to PNG home, remove reference
6788         to fribidi.
6789
6790         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
6791         
6792         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
6793         tested.)
6794
6795         * gtk/gtkcheckmenuitem.c: Permanently turn on
6796         always_show_toggle.
6797
6798         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
6799         be NULL. (Vladimir Klebanov, #26545)
6800
6801         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
6802         some signed/unsigned comparison problems. (#6510,
6803         David Kaelbling)
6804
6805         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
6806         return type to boolean (Oskar Liljeblad, #18648)
6807
6808 2000-12-05  Alexander Larsson  <alexl@redhat.com>
6809
6810         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
6811         Remove bogus colormap setting.
6812
6813 2000-12-05  Alexander Larsson  <alexl@redhat.com>
6814
6815         * gdk/linux-fb/gdkcolor-fb.c:
6816         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
6817
6818         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
6819         Must set colormap.
6820         
6821 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
6822
6823         * docs/tutorial/gtk-tut.sgml: DND updates
6824
6825 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
6826
6827         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
6828         Remove old debug g_warning().
6829         (gdk_fb_draw_drawable): The src argument can be either a wrapper
6830         or an implementation, just pass the implementation to draw_drawable_2.
6831         
6832         * gdk/linux-fb/gdkprivate-fb.h:
6833         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
6834
6835         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
6836         clear and invalidate area when window is destroyed.
6837         (send_map_events): Remove old commented out code.
6838
6839 2000-12-05  Alexander Larsson  <alexl@redhat.com>
6840
6841         * gdk/linux-fb/gdkpango-fb.c:
6842         Use italic instead of oblique in font aliases.
6843         
6844         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
6845         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
6846         other unsupported functions.
6847
6848 2000-12-04  Havoc Pennington  <hp@redhat.com>
6849
6850         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
6851
6852         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
6853
6854         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
6855
6856         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
6857         hack to avoid infinite loops (synthetic expose event) - 
6858         Owen has more appropriate fixes in a branch he'll check in later.
6859
6860         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
6861         separator, CR, and CRLF as line ends
6862
6863         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
6864         into lines using pango_find_paragraph_boundary(); other bits of
6865         the widget are still going to be broken if the boundary isn't '\n'
6866         though
6867
6868 2000-12-04  Alexander Larsson  <alexl@redhat.com>
6869
6870         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
6871         multiply.
6872
6873         * gdk/linux-fb/gdkpango-fb.c:
6874         Copied some 26.6 scaling macros from pango to clean up the rounding.
6875         (pango_fb_font_get_glyph_info): Correct sign on x value.
6876
6877         * gdk/linux-fb/gdkprivate-fb.h:
6878         Removed unreferenced external functions.
6879
6880         * modules/linux-fb/Makefile.am: Use ` instead of '.
6881
6882         * modules/linux-fb/basic.c:
6883         Remove dead code. In particular the dummy lang engine which broke all
6884         pango layouts in GtkFB. Don't include tables-big.i anymore.
6885
6886         * modules/linux-fb/tables-big.i:
6887         Upgrade to latest version from pango. Left for reference, basic_ranges
6888         moved to basic.c.
6889         
6890 2000-12-04  Havoc Pennington  <hp@redhat.com>
6891
6892         Fix bugs Alex found:
6893         
6894         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
6895         to "draw"
6896
6897         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
6898
6899         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
6900
6901         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
6902         implementation in here, apparently the expose() implementation was
6903         dead code.
6904
6905 2000-12-04  Alexander Larsson  <alexl@redhat.com>
6906
6907         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6908         Return positive descent.
6909
6910 2000-12-02  Havoc Pennington  <hp@pobox.com>
6911
6912         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
6913         method and signal
6914         
6915         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
6916         calls gdk_window_process_updates() to push the exposes through
6917         (gtk_widget_class_init): No more draw signal, no
6918         gtk_widget_real_draw()  
6919         
6920         * gtk/gtkbin.c (gtk_bin_draw): remove
6921
6922         * gtk/gtkbox.c (gtk_box_draw): remove
6923
6924         * gtk/gtkbutton.c (gtk_button_draw): remove
6925
6926         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
6927
6928         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
6929
6930         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
6931
6932         * gtk/gtkclist.c (gtk_clist_draw): remove
6933
6934         * gtk/gtkentry.c (gtk_entry_draw): remove
6935
6936         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
6937
6938         * gtk/gtkfixed.c (gtk_fixed_draw): remove
6939
6940         * gtk/gtkframe.c (gtk_frame_draw): remove
6941
6942         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
6943
6944         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
6945
6946         * gtk/gtklayout.c (gtk_layout_draw): remove
6947
6948         * gtk/gtklist.c (gtk_list_draw): remove
6949
6950         * gtk/gtklistitem.c (gtk_list_item_draw): remove
6951
6952         * gtk/gtkmenu.c (gtk_menu_draw): remove
6953
6954         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
6955
6956         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
6957
6958         * gtk/gtknotebook.c (gtk_notebook_draw): remove
6959
6960         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
6961
6962         * gtk/gtkpacker.c (gtk_packer_draw): remove
6963
6964         * gtk/gtkrange.c (gtk_range_draw): remove
6965
6966         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
6967
6968         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
6969
6970         * gtk/gtktable.c (gtk_table_draw): remove
6971
6972         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
6973
6974         * gtk/gtktext.c (gtk_text_draw): remove
6975
6976         * gtk/gtktextview.c (gtk_text_view_draw): remove
6977
6978         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
6979
6980         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
6981
6982         * gtk/gtktree.c (gtk_tree_draw): remove
6983
6984         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
6985
6986         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
6987
6988         * gtk/gtkviewport.c (gtk_viewport_draw): remove
6989
6990         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
6991
6992         * gtk/gtkvscale.c (gtk_vscale_draw): remove
6993
6994         * gtk/gtkwindow.c (gtk_window_draw): remove
6995
6996 2000-20-01  Anders Carlsson  <andersca@gnu.org>
6997
6998         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
6999         a GtkToggleButton is both insensitive and active, it was being
7000         drawn by the GtkButton draw handler which doesn't check the
7001         state. Now it's calling gtk_toggle_button_paint instead.
7002         
7003 2000-12-01  Havoc Pennington  <hp@redhat.com>
7004
7005         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
7006         dangling pointers to the appearance attributes from the 
7007         line display
7008
7009         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
7010         width/height to mean "full width/height of drawable"
7011
7012         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
7013         click to select word/line
7014         
7015         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
7016         when getting log attrs. Get a slice, so that pixmaps and stuff
7017         are properly handled.
7018
7019         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
7020         paste into the selection (replaces selection now, previously
7021         crashed or added to selection). Reveals longstanding btree bug -
7022         select multiple lines, middle-click on the selection, boom. This
7023         isn't related to my changes though.
7024
7025         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
7026         PangoLogAttrs changes
7027         (gtk_entry_move_backward_word): ditto
7028
7029         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
7030         functions return bool whether the iter moved onto a
7031         dereferenceable position.
7032  
7033         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
7034         functions for motion in terms of display lines.
7035
7036         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
7037         get the buffer a mark is inside
7038         
7039 2000-12-01  Alexander Larsson  <alexl@redhat.com>
7040
7041         * gdk/linux-fb/Makefile.am:
7042         * modules/linux-fb/Makefile.am:
7043         Freetype 2 final uses freetype-config
7044
7045         * gdk/linux-fb/gdkpango-fb.c:
7046         Upgrade to use Freetype 2 final.
7047         More flexible support for font aliases, this also fixes a bug with
7048         GtkFontSelector, as the aliases must be visible in the font/family list,
7049         or GtkFontSelector reads uninitialized memory.
7050
7051 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
7052
7053         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
7054         XGetIMValues to properly terminate variable argument list, and do
7055         NULL return check for ic_values and xim_styles.
7056
7057         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
7058         Restore preedit state after XmbResetIC().
7059         
7060         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
7061         XvaCreateNestedList() should take XvaNestedList, but not
7062         XvaNestedList*.
7063
7064         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
7065         preedit_draw_callback, preedit_caret_callback): Match
7066         "preedit-changed" signal name to "preedit_changed" to be
7067         consistent to the spec.
7068
7069         * gtk/gtkimcontextsimple.c (check_table):
7070         Match "preedit-changed" to "preedit_changed" to be consistent
7071         to the spec.
7072
7073 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
7074
7075         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
7076         gc->clip_region == NULL>
7077
7078 2000-11-30  Tor Lillqvist  <tml@iki.fi>
7079
7080         Changes by Hans Breuer:
7081         
7082         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
7083         Dont't use negative width and height as max_hints. This fixes
7084         Owen's recent testgtk changes for win32.
7085
7086         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
7087         gdk_win32_hdc_release): These are exported and may be called with
7088         other drawable types than our GdkDrawableImplWin32 (?).
7089
7090         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
7091         so always #define USE_BACKING_STORE.
7092
7093         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
7094         of printf for debugging output.
7095
7096         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
7097         
7098         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
7099
7100         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
7101         declaration.
7102
7103         * gtk/gtktexttypes.h: Ditto.
7104
7105         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
7106         (GDK_VoidSymbol) also if in case of arg check failure.
7107
7108         * gtk/gtkimcontextsimple.c
7109         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
7110         position to the pointer, but to the variable it points to.
7111
7112         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
7113
7114         * gtk/gtk.def: Updates.
7115
7116 2000-11-29  Elliot Lee  <sopwith@redhat.com>
7117
7118         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
7119         GTK_TYPE_TREE_MODEL.
7120
7121 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7122
7123         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
7124         Set the size of the font from the description.
7125         (gdk_text_width): Gross hack that calculates the width
7126         of text by text_length * size/2. This is necessary because
7127         GtkLabel does some ugly gtk_string_width call to calculate
7128         an good size.
7129         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
7130
7131 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
7132
7133         * docs/tutorial/gtk-tut.sgml: DND updates
7134
7135 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7136
7137         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
7138         If you pass width or height == 0 to gdk_window_clear_area they
7139         should be calculated from the window size.
7140
7141 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7142
7143         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
7144         a grab, but no grab-cursor, use the cursor from the grabbed
7145         window. (gdk_fb_window_send_crossing_events): Send normal
7146         enter/leave notifications if grab and owner_events == TRUE.
7147
7148 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7149
7150         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7151         Do implicit button grabs, even if the window doesn't
7152         want the event.
7153         (gdk_fb_window_send_crossing_events): If there is a
7154         grab, only the grabbed window gets normal enter/leave
7155         notifications. On ungrab go from grabbed window to current.
7156         Don't send any notification to b when propagating from c -> b.
7157         If setting a grab on window, don't set prev_window.
7158         (handle_mouse_input): Send enter/leave events to the window the
7159         mouse is over, not the grabbed one.
7160         
7161 2000-11-28  Elliot Lee  <sopwith@redhat.com>
7162
7163         * gdk/gdkregion-generic.c: Zap warning.
7164         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
7165         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
7166
7167 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
7168
7169         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
7170         The cursor should be hidden if it is part of either the
7171         source or destination region. Not only if it is in both.
7172         (gdk_window_set_transient_for): Silence warnings.
7173
7174 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7175
7176         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
7177         The default mode in X is Pie Arcs, therefore that is
7178         what Gtk+ uses.
7179
7180 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7181
7182         * gdk/linux-fb/gdkinput-ps2.c:
7183         Implement correct EnterNotify/LeaveNotify:
7184         (gdk_fb_window_send_crossing_events): New function that sends
7185         all GdkCrossingEvents from the last mouse-window to the specified
7186         destination.
7187         (gdk_fb_window_visibility_crossing): Removed function.
7188         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
7189         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
7190         instead of gdk_window_get_pointer() for better readability.
7191
7192         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
7193         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
7194
7195         * gdk/linux-fb/gdkprivate-fb.h:
7196         removed gdk_fb_window_visibility_crossing, added
7197         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
7198
7199         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
7200         New function that finds the least common ancestor of two windows.
7201         (gdk_window_show, gdk_window_hide):
7202         Use gdk_fb_window_send_crossing_events.
7203         (gdk_fb_window_move_resize): Send configure events to toplevel
7204         windows. Use gdk_fb_window_send_crossing_events.
7205
7206 2000-11-27  Havoc Pennington  <hp@redhat.com>
7207
7208         * gtk/gtkprivate.h (enum): Remove a trailing comma
7209
7210 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
7211
7212         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
7213         the "changed" callback of the adjustment.  We need to redraw the
7214         spin button's arrows when the adjustment's range changes.
7215         (adjustment_changed_cb): Draw the arrows.
7216         (gtk_spin_button_value_changed): Draw the arrows.
7217
7218 2000-11-23  Alexander Larsson  <alexl@redhat.com>
7219
7220         * gdk/linux-fb/gdkselection-fb.c:
7221         Initial selection implementation.
7222
7223         * gtk/gtkselection.c:
7224         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
7225         requestor in gtk_selection_request.
7226         
7227         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
7228         Added gdk_selection_property atom.
7229
7230         * gdk/linux-fb/gdkprivate-fb.h:
7231         Export _gdk_selection_window_destroyed.
7232         Removed mask_off_x/y from GdkCursorPrivateFB.
7233         Removed hbearing, added top, left to PangoFBGlyphInfo.
7234
7235         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7236         Call _gdk_selection_window_destroyed
7237         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
7238         the root window has been created.
7239         (static_dx_hack, static_dy_hack, compare_draw_rects,
7240         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
7241         in region. They are already sorted. Instead just traverse them in
7242         reverse if draw_direction < 0.
7243         
7244         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7245         Double-clicks must be sent after the normal button_press.
7246         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
7247         
7248         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
7249         Pass _gdk_fb_screen_gc instead of NULL.
7250
7251         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
7252         Initialize gdk_selection_property.
7253         (gdk_event_make): Remove unused code.
7254
7255         * gdk/linux-fb/gdkcursor-fb.c:
7256         Make the pixmap for the cursor the same size as the mask. Also remove
7257         the mask_off_x/y fields in GdkCursorPrivateFB and combine
7258         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
7259         Now the whole cursor is visible.
7260
7261         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7262         Fix bug where xdest+height instead of ydest+height was used
7263         to calculate if the source and dest overlapped. This fixes the
7264         redraw bug when the main window in testgtk was scrolled when
7265         partially covered by a tall window.
7266         Copy rectangles in region in order depending on draw_direction.
7267         Also moved the draw_direction flipping of start_y and end_y into
7268         the gc functions, as this might not be what all of them want.
7269         (gdk_fb_draw_lines): Support dashed lines.
7270         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
7271         so that the text is positioned correctly (was 1 pixel high).
7272
7273         gdk/linux-fb/gdkgc-fb.c:
7274         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
7275         all lines were drawn a pixel to short. Also checked the default of
7276         the rest of the values, and they're the same as X now.
7277
7278         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
7279         Clean up pixel positioning of the glyphs. Just use bgy->top and
7280         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
7281         to all divisions to get correct rounding behaviour.
7282
7283         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
7284         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
7285         Moved start_y/end_y flip into draw_drawable implementations.
7286         Flip also x rendering when draw_direction < 0.
7287         Remove unneccesary multiply with draw_direction.
7288
7289 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
7290
7291         * docs/tutorial/gtk-tut.sgml:
7292           - get rid of gtk_toggle_button_toggled FUD
7293           - start DND section - needs work - based on:
7294                 http://wolfpack.twu.net/docs/gtkdnd/
7295
7296 2000-11-22  Alexander Larsson  <alexl@redhat.com>
7297
7298         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7299         Correct calculation of font metrics. Now GtkEntrys have sane
7300         size.
7301
7302 2000-11-22  Alexander Larsson  <alexl@redhat.com>
7303
7304         * gdk/gdktypes.h:
7305         Add new type GdkSpan
7306         
7307         * docs/reference/gdk/gdk-sections.txt,
7308         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
7309         gdk/gdkregion.h:
7310         Implement and document gdk_region_spans_intersect_foreach.
7311
7312         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
7313         Add new file gdkrender-fb.c which contains all core
7314         rendering code.
7315         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
7316         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
7317         (optimized rectangle fillers).
7318
7319         * gdk/linux-fb/gdkdrawable-fb2.c:
7320         Move all rendering code to gdkrender-fb.c.
7321         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
7322         Use the new span intersection functions in gdk_fb_fill_spans.
7323         gdk_fb_draw_rectangle() clips filled rectangles and calls
7324         gc->fill_rectangle with the result.
7325         gdk_fb_fill_spans() gets extra argument "sorted".
7326
7327         * gdk/linux-fb/gdkevents-fb.c:
7328         Remove unused includes and defines.
7329         New function gdk_fb_get_time() to get correct time for events.
7330
7331         * gdk/linux-fb/gdkinput-ps2.c:
7332         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
7333         Make sure to set the time of all events.
7334
7335         * gdk/linux-fb/gdkmain-fb.c:
7336         Use gdk_fb_get_time ().
7337
7338         * gdk/linux-fb/gdkprivate-fb.h:
7339         New virtual GC calls: fill_span & fill_rectangle.
7340         Export gdk_fb_get_time().
7341         gdk_fb_fill_spans() gets extra argument "sorted".
7342
7343         * gdk/linux-fb/mi*.c:
7344         Use GdkSpan instead of GdkRectangle.
7345         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
7346         from XFree 4 source)
7347         
7348 2000-11-22    <jrb@redhat.com>
7349
7350         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
7351         reversing the order in an if statement will do.  Doing so managed
7352         to make the treemodelsort half work.  Other half will follow after
7353         I get the insert function fully fixed.
7354
7355 2000-11-21  Elliot Lee  <sopwith@redhat.com>
7356         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
7357         more than 2 bits. Besides, I need to implement an evil hack. :)
7358
7359 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
7360
7361         * docs/tutorial/gtk-tut.sgml: minor corrections
7362
7363 2000-11-20  Jonathan Blandford <jrb@redhat.com>
7364         * gtk/gtktreemodelsort.h: Add convertion functions to let you
7365           convert to and from relative path's and iters.
7366
7367         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
7368           testing sorting functions a bit better.  Currently broken -- will
7369           fix in morning.
7370
7371 2000-11-20  Havoc Pennington  <hp@redhat.com>
7372
7373         * gtk/gtkwidget.c: Documented a bunch of functions in here
7374         (gtk_widget_realize): Warn if you try to realize
7375         a widget with no parent that isn't a toplevel
7376         (gtk_widget_intersect): return a gboolean
7377
7378 2000-11-20  Havoc Pennington  <hp@redhat.com>
7379
7380         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
7381         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
7382         scrolling to be implemented in GDK to finish. Also, right now
7383         we just size_allocate all children on every layout change,
7384         which is pretty lame. Test commented out of testtext.c, 
7385         until it works better.
7386
7387 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
7388
7389         * gdk/linux-fb/gdkdrawable-fb2.c:
7390         Removed unused arguments from gdk_fb_drawable_get_pixel().
7391
7392         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
7393         Renamed fidur specific mouse packet data in MouseDevice to
7394         generic. Used it in ps2 mouse handling code to avoid blocking
7395         reads.
7396
7397 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
7398
7399         * demos/gtk-demo/main.c: Changed to have the list become
7400         non-italic when the demo window is destroyed through an external
7401         event (like a close button).  Doing so found three bugs in the
7402         widget.
7403
7404         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
7405
7406         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
7407         we actually set the cell.
7408
7409         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
7410
7411         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
7412         free a leaked path.  Thanks memprof.
7413
7414 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
7415
7416         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
7417         off-by-one error when destroying allocated segments
7418         on failure. (Elliot)
7419
7420 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
7421
7422         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
7423         memleaks found by Evan Martin.
7424
7425 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
7426
7427         * Released 1.3.2
7428         
7429         * NEWS: Updates for 1.3.2
7430
7431 2000-11-17  Tor Lillqvist  <tml@iki.fi>
7432
7433         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
7434         but in general for window system specific events.
7435
7436         * gtk/gtk.def
7437         * gtk/makefile.mingw.in
7438         * gtk/makefile.msc.in: Update.
7439         
7440         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
7441
7442 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
7443
7444         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
7445         distribute gtk.immodules.
7446
7447         * gtk/Makefile.am (install-data-local): Don't install the
7448         gtk.immodules file created for the uninstalled modules;
7449         instead run gtk-query-immodules after install
7450
7451 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
7452
7453         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
7454         -rpath to the right install location.
7455
7456         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
7457         -export-dynamic.
7458
7459         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
7460         properly.
7461
7462 2000-11-15  Havoc Pennington  <hp@pobox.com>
7463
7464         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
7465         patch from Mikael Hermansson to temporarily stop blinking while
7466         the user is using the keyboard to type or navigate. 
7467
7468         Also, when blinking, stay on for longer than we stay off. Also,
7469         return from start_cursor_blink if !cursor_visible, to save
7470         checking that flag all over the place before we call
7471         start_cursor_blink.
7472
7473 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
7474
7475         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
7476         only contain a "fontset" line, which is now ignored.
7477
7478         * gtk/gtkentry.c (gtk_entry_button_release): Make 
7479         double-click-to-select-word work.
7480         
7481 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
7482
7483         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
7484         Don't move back one char when we are actually at the end of the 
7485         paragraph.
7486
7487 2000-11-15  Robert Brady  <robert@suse.co.uk>
7488
7489         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
7490         'o' < 'p'.
7491         
7492         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
7493         bind_textdomain_codeset.
7494
7495         (gtk_init_check): Make the warning about translating default:LTR
7496         sterner.
7497         
7498 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
7499
7500         * **/Makefile.am : remove unecessary rules for win32-specific
7501         config-substituted targets. If you want these rules, use
7502         --enable-maintainer-mode (called automatically by autogen.sh).
7503         Stops a lot of unneccessary make-time warnings.
7504
7505         * gtk/gtktext{layout,display}.c: Factor in total width as
7506         well as screen when figuring alignment for word-wrap as well as
7507         no wrap; this is necessary to handle lines that cannot be wrapped
7508         at all.
7509
7510 2000-11-15  Havoc Pennington  <hp@redhat.com>
7511
7512         * gtk/testtext.c: Implement essential color cycling feature
7513
7514 2000-11-15  Havoc Pennington  <hp@redhat.com>
7515
7516         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
7517         when we invalidate the main window.
7518
7519         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
7520         GtkTextView will now invalidate the side windows for us when text
7521         changes.
7522
7523 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
7524
7525         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
7526         unconditionally, since we may need to update the horizontal
7527         scrollbars even if the height didn't change.
7528
7529         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
7530         the extra attrs, since some of them affect size.
7531
7532         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
7533         x_offset correctly.
7534
7535 2000-11-15  Havoc Pennington  <hp@redhat.com>
7536
7537         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
7538         don't move the first line out into the margin, instead move the
7539         whole paragraph in order to make space for the first line within 
7540         the margin
7541
7542 2000-11-15  Havoc Pennington  <hp@redhat.com>
7543
7544         * gtk/gtktextview.c (changed_handler): offset redraw rect by
7545         xoffset in addition to yoffset, so horizontal scrolling doesn't
7546         break redraws
7547
7548 2000-11-15  Havoc Pennington  <hp@redhat.com>
7549
7550         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
7551         from the cursor
7552         (render_layout_line): fix reversed test that caused weird
7553         underlines to get drawn
7554
7555 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
7556
7557         * gdk/linux-fb/gdkprivate-fb.h:
7558         Fix debug macros.
7559         
7560 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
7561
7562         * gdk/linux-fb/gdkprivate-fb.h:
7563         Added virtual functions set_pixel, get_color,
7564         fill_span and draw_drawable to the GC.
7565         Added global _gdk_fb_screen_gc to use instead of
7566         NULL when drawing to the screen.
7567         Added _gdk_fb_gc_calc_state() prototype.
7568
7569         * gdk/linux-fb/gdkgc-fb.c:
7570         Call _gdk_fb_gc_calc_state() on any gc state change.
7571
7572         * gdk/linux-fb/gdkglobals-fb.c:
7573         Add _gdk_fb_screen_gc
7574                 
7575         * gdk/linux-fb/gdkdrawable-fb2.c:
7576         _gdk_fb_gc_calc_state() calculates best functions
7577         for the GC state and depth.
7578         Moved bpp specialized code to separate functions.
7579         Added optimized 24 bpp AA draw_drawable.
7580
7581         * gdk/linux-fb/gdkevents-fb.c:
7582         Silence gcc warning.
7583
7584         * gdk/linux-fb/gdkimage-fb.c:
7585         Use _gdk_fb_screen_gc
7586
7587         * gdk/linux-fb/gdkwindow-fb.c:
7588         Init and use _gdk_fb_screen_gc
7589
7590         * gdk/linux-fb/mitypes.h:
7591         Remove unused types.
7592
7593 2000-11-14  Havoc Pennington  <hp@pobox.com>
7594
7595         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
7596         to pixels
7597
7598 2000-11-14  Havoc Pennington  <hp@pobox.com>
7599
7600         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
7601
7602         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
7603         unknown char, no real reason we were using a variable. 
7604         Remove gtk_text_unknown_char variable. Fix all the text widget
7605         files accordingly.
7606
7607         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
7608         since the Unicode spec seems to prefer that character for our
7609         purposes.
7610
7611 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
7612
7613         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
7614         value of g_getenv() isn't freeable, so g_strdup it.
7615
7616         * modules/input/inuktitut.c: Inuktitut input method.
7617
7618         * modules/input/Makefile.am: Build this.
7619         
7620 2000-11-14  Elliot Lee  <sopwith@redhat.com>
7621
7622         * gtk/Makefile.am: Install gtk.immodules, needed for operation
7623         of gtk programs.
7624
7625 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
7626
7627         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
7628         reversed > that was causing Home to go to end of previous line.
7629
7630         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
7631         modified-keypresses (leave for bindings.)
7632
7633         * modules/input/Makefile.am: Remove useless -export-dynamic
7634         from module LDFLAGS.
7635
7636 2000-11-14  Havoc Pennington  <hp@redhat.com>
7637
7638         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
7639         higher.
7640
7641         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
7642         account. Also, render rise, underline, background, etc. for
7643         pixbufs as well as text. Also, draw underlines one pixel higher.
7644
7645         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
7646         PangoAttribute for the rise, so it gets drawn properly. Also,
7647         add the GtkTextAppearance attribute for pixbuf/widget segments
7648         as well; we should go ahead and have rise, underline, background,
7649         stipple work for those
7650
7651         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
7652         Pango
7653
7654 2000-11-15  Tor Lillqvist  <tml@iki.fi>
7655
7656         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
7657
7658         * gtk/gtk.def: Update.
7659
7660         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
7661         included.
7662         (gtk_rc_get_im_module_file): Use run-time installation directory
7663         on Win32.
7664
7665         * gdk/win32/rc/gdk.rc: Remove.
7666         * gdk/win32/rc/gdk.rc.in: New file.
7667         * gdk/win32/rc/Makefile.am: New file
7668         * gdk/win32/Makefile.am: Corresponding changes.
7669
7670         * gtk/gtk.rc: Remove.
7671         * gtk/gtk-win32.rc.in: New file.
7672         * gtk/Makefile.am: Corresponding changes.
7673
7674         * configure.in: Corresponding changes.
7675
7676         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
7677         has a built gtkcompat.h. Developers using CVS code on Win32 can
7678         hand-edit it from gtkcompat.h.in.
7679
7680         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
7681         gtkcompat.h from gtkcompat.h.win32.
7682
7683 2000-11-14  Havoc Pennington  <hp@redhat.com>
7684
7685         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
7686         to default to GDK_ACTION_MOVE if the drag is within a single
7687         widget. Defaults to GDK_ACTION_COPY between widgets.
7688
7689 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
7690
7691         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
7692
7693         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
7694
7695         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
7696         srcdir != builddir
7697
7698         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
7699
7700         * configure.in (GTK_VERSION): Up to 1.3.2
7701
7702         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
7703         gtkimcontextxim.h
7704
7705         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
7706         missing doc comment.
7707
7708 2000-11-14  Alexander Larsson  <alexl@redhat.com>
7709
7710         * modules/linux-fb/basic.c:
7711         Use the glib iconv wrappers.
7712
7713 2000-11-13  Havoc Pennington  <hp@pobox.com>
7714
7715         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
7716         still more bugs.
7717
7718         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
7719         scroll the GdkWindows before realization.
7720
7721 2000-11-13  Havoc Pennington  <hp@redhat.com>
7722
7723         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
7724         where GC didn't always get updated properly
7725
7726         * demos/gtk-demo/textview.c (create_tags): Use subattributes
7727         of fonts instead of setting the entire font
7728
7729         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
7730         setting entire font
7731
7732         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
7733
7734         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
7735         a bunch of individually-settable font attributes. You can still 
7736         use the "font" and "font_desc" args, they just set all the font
7737         attributes at once.
7738
7739 2000-11-13 Elliot Lee <sopwith@redhat.com>
7740
7741         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
7742
7743 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
7744
7745         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
7746         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
7747
7748         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
7749         work better.
7750
7751 2000-11-13  Havoc Pennington  <hp@redhat.com>
7752
7753         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
7754         the module file.
7755
7756         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
7757         dest->language
7758
7759         * gtk/testtext.c: Test pixels above/below/inside paragraphs
7760         settings
7761
7762         * gtk/gtktextview.c: Implement object args and setters/getters for
7763         all the aspects of the GtkTextAttributes that are not set from
7764         GtkWidget attributes. This is spacing, justification, margins,
7765         etc.
7766
7767         (gtk_text_view_set_arg)
7768         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
7769         args
7770         (gtk_text_view_class_init): Add args for justify, left_margin,
7771         right_margin, indent, and tabs
7772         
7773
7774         * gtk/gtktextlayout.c (set_para_values): fix to display indent
7775         attribute properly
7776
7777         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
7778         replace with indent attribute
7779
7780         * gtk/gtktextlayout.c (set_para_values): multiply indent by
7781         PANGO_SCALE
7782
7783         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
7784         rearranging code to do that
7785         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
7786         i.e. don't subtract the top_margin first, just to keep
7787         all margin-futzing in one place.
7788
7789         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
7790
7791         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
7792         special case of last line, Pango now handles this itself.
7793         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
7794         Y coordinate
7795         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
7796         (find_display_line_above): wasn't moving the byte index as it
7797         iterated over lines, so always returned byte 0. Also, port to use
7798         PangoLayoutIter.
7799         (find_display_line_below): same problem as
7800         find_display_line_above. Also, port to use PangoLayoutIter.
7801
7802 2000-11-13  Alexander Larsson  <alexl@redhat.com>
7803
7804         * gdk/linux-fb/*.[ch]:
7805         Massive reindent to gtk+ standard. My hands hurt.
7806
7807         * gdk/linux-fb/gdkcolor-fb.c:
7808         Move GdkColorPrivateFB from inherited to windowing_data
7809
7810         * gdk/linux-fb/gdkcursor-fb.c:
7811         _gdk_cursor_new_from_pixmap made static
7812
7813         * gdk/linux-fb/gdkdnd-fb.c:
7814         GdkDragContextPrivate moved to windowing_data
7815
7816         * gdk/linux-fb/gdkdrawable-fb2.c:
7817         Removed endian.h, use glib endianness macros instead
7818         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
7819         and GDK_DRAWABLE_IMPL_FBDATA
7820
7821         * gdk/linux-fb/gdkfont-fb.c:
7822         Add empty gdk_font_load(). Needed for linking of Gtk+.
7823
7824         * gdk/linux-fb/gdkimage-fb.c:
7825         Removed endian.h, use glib endianness macros instead
7826         Moved GdkImagePrivateFB to windowing_data
7827         gdk_image_new_bitmap didn't always allocate enough
7828         memory.
7829
7830         * gdk/linux-fb/gdkinput-ps2.c:
7831         Added semi-working support for MS serial mice.
7832
7833         * gdk/linux-fb/gdkprivate-fb.h:
7834         s/GdkWindowPrivate/GdkWindowObject/
7835         Removed GdkWindowPrivate typedef
7836         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
7837         Removed GDK_DRAWABLE_P
7838         Move GdkColorPrivateFB from inherited to windowing_data
7839         Moved GdkImagePrivateFB to windowing_data
7840
7841         * gdk/linux-fb/gdkvisual-fb.c:
7842         Removed some unused debug code.
7843
7844         * gdk/linux-fb/gdkwindow-fb.c:
7845         Use stock cursors instead of including X headers.
7846         s/GdkWindowPrivate/GdkWindowObject/
7847
7848         * gdk/linux-fb/mitypes.h:
7849         Removed unused types.
7850
7851         * modules/linux-fb/basic.c:
7852         Use the pango fribidi wrappers.
7853
7854 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
7855
7856         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
7857         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
7858         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
7859         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
7860         GEqualFunc where applicable.
7861         
7862         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
7863         pango_font_description_equal as changed in pango.
7864         
7865         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
7866
7867         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
7868
7869         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
7870
7871         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
7872
7873         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
7874
7875         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
7876
7877         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
7878         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
7879
7880         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
7881         gtk_rc_styles_compare -> gtk_rc_styles_equal.
7882
7883 2000-11-12  Havoc Pennington  <hp@pobox.com>
7884
7885         * demos/gtk-demo/Makefile.am (democodedir): change demo install
7886         dir to datadir/gtk+-2.0/demo
7887
7888         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
7889         sorts of text widget and Pango font bugs. Urgh.
7890
7891         * demos/gtk-demo/Makefile.am (demos): Add textview.c
7892
7893         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
7894         tree that you should double click to see the demo. Fix 
7895         types of variables to reflect changed return values from 
7896         GtkTreeStore and GtkTreeViewColumn constructors.
7897
7898         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
7899         newly-created buffer to prepare for GObject semantics
7900
7901         * gtk/testtext.c: don't leak the buffer with GObject semantics
7902
7903         * gtk/testtextbuffer.c: ditto
7904         
7905 2000-11-12  Havoc Pennington  <hp@pobox.com>
7906
7907         Rename this testgtk to gtk-demo to avoid confusion, and 
7908         install it so people can use it as a supplement to 
7909         the documentation.
7910         
7911         * demos/gtk-demo: Moved from demos/testgtk
7912
7913         * demos/testgtk: Removed
7914
7915         * configure.in: make Makefile in gtk-demo
7916         
7917         * demos/gtk-demo/Makefile.am: Install sample source to 
7918         datadir/gtk-demo (maybe there's a better place?), and 
7919         rename the binary to gtk-demo
7920         
7921         * demos/gtk-demo/main.c (load_file): Load installed sample
7922         source if source isn't found in pwd.
7923
7924 2000-11-09  Havoc Pennington  <hp@pobox.com>
7925
7926         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
7927         argument to set the char displayed when visibility == FALSE
7928         (gtk_entry_create_layout): If !entry->visible, replace 
7929         all chars with the "invisible char"
7930
7931         * gtk/testgtk.c: Test the invisible_char deal
7932         
7933 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
7934
7935         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
7936         can't get a native font in the right encoding.
7937
7938 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
7939
7940         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
7941         respectively.
7942
7943 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
7944
7945         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
7946         Fix warning when moving between paragraphs.
7947
7948         * gtk/gtkentry.[ch]: Change move => move_cursor, 
7949         delete => delete_from_cursor, insert => insert_at_cursor
7950
7951 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
7952
7953         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
7954
7955         * modules/input/imthai-broken.c: A Thai input method for use if
7956         Thai keys are really generating Latin1 keysyms.
7957
7958         * modules/input/Makefile.am: Build these.
7959
7960 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
7961
7962         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
7963         g_filename_{to,from}_utf8 now takes an extra parameter.
7964
7965         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
7966         strftime into UTF-8.
7967
7968         (column_from_x, gtk_calendar_paint_day_names): Support RTL
7969         calendars.
7970
7971         (gtk_calendar_paint_day_names): Draw day names in the right 
7972         place.
7973         
7974 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
7975
7976         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
7977         problem with using result of g_get_charset() backwards -
7978         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
7979
7980         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
7981         negative min_width/height and max_width/height to
7982         mean "requisition"; this allows setting a window
7983         to be user-resizable in only one direction easily.
7984
7985         * gtk/testgtk.c (create_main_window): Remove hard-coded
7986         usize - set a default size in the vertical direction.
7987
7988 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
7989
7990         * gtk/gtkrange.c: Add some missing casts. Support 
7991         2 and 3 button clicks on the arrows to mean 
7992         "move by pages" and "jump to end". (Like gtkspinbutton)
7993
7994 2000-11-12 Hans Breuer <Hans@Breuer.Org>
7995
7996         * gdk/win32/makefile.msc : reflect build module changes
7997
7998         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
7999         from GdkPixmap*, cast implementation member instead.
8000
8001         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
8002         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
8003         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
8004         more Gdi functions return value checking. 
8005         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
8006         GdkImagePrivateWin32 *.
8007
8008         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
8009         menus useable again. Add #pragma message to keep reminded on this issue.
8010         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
8011         windows. This allows to enable backing store on Win32!
8012
8013         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
8014         in drawable is of impl type. Correct specific type checks appropriate.
8015  
8016         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
8017         GDK_WINDOW_DESTROYED before allocating new resources.
8018
8019         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
8020
8021         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
8022         (gdk_window_foreign_new) initialize parent handle.
8023         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
8024
8025         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
8026         Let the GDI invalidate the window on MoveWindow call to fix scrolling
8027         problems (e.g. main buttons in testgtk). 
8028
8029 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
8030
8031         * gtk/gtkentry.c (gtk_entry_key_press): Call 
8032         gtk_widget_activate for GDK_Return.
8033
8034         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
8035         of preedit cursor position.
8036
8037 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
8038
8039         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
8040         static.
8041
8042 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
8043
8044         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
8045         out support for multiple locales; that simple doesn't
8046         work reliably with current Xlib
8047
8048         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
8049         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
8050         Add support for positioning the cursor within the preedit string.
8051
8052 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
8053
8054         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
8055         at XIM input method module.
8056
8057         * gtk/gtktextview.c: Check for bindings after passing
8058         events to im context filter.
8059
8060 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
8061
8062         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
8063         empty attribute lists properly.
8064
8065 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
8066
8067         * gtk/queryimmodules.c (main): Return non-zero exit
8068         status if errors were encountered querying any
8069         modules.
8070
8071         * modules/input/Makefile.am (moduledir): remove
8072         leftover bin program target.
8073
8074         * docs/make-todo: Fix typo in error message.
8075
8076 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
8077
8078         * configure.in: Add modules/input/Makefile
8079
8080 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
8081
8082         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
8083         don't include gtkthemes.h.
8084
8085         * gtk/testgtk.c gtk/testtext.c: Set environment variables
8086         to point
8087
8088         * gtk/Makefile.am: Add new .c and .h files, build 
8089         gtk-query-immodules and use it to create a gtk.immodules
8090         file for use of test programs.
8091
8092         * gtk/gtkpreview.c: remove extra blank line.
8093
8094 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
8095
8096         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
8097         Add the ability to add extra tables beyond the default
8098         one, and also the ability to have compose sequences 
8099         that are prefixes of other compose sequences. 
8100
8101         * gtk/gtkimcontextsimple.c: Export a preedit string which
8102         consists of possible candidates for keystrokes that have
8103         been entered but not yet committed.
8104
8105         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
8106         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
8107
8108         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
8109         Add a function to add input-method switching menu items
8110         to a menu.
8111
8112         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
8113         when switching input methods.
8114
8115         * gtk/gtkimcontextsimple.[ch]: Change the format of
8116         the compose table to allow compose tables of different
8117         lengths / sequence.
8118
8119 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
8120
8121         * gtk/gtkimmodule.[ch]: Support routines for loading
8122         GtkIMContext implementations dynamically at runtime.
8123
8124         * modules/input/imcyrillic-translit.c: A sample input
8125         method (based on GtkIMContextSimple with an extra table),
8126         which demonstrates preedit strings and the module
8127         system for input modules
8128
8129         * gtk/queryimmodules.c: Program to query the available
8130         input modules and write the results into a file.
8131          
8132         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
8133         extra config options "im_module_file" (cache file for
8134         input method modules), and "im_module_path" - path
8135         to look for modules when generating cache file.
8136
8137         This doesn't scale.
8138
8139 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
8140
8141         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
8142         generic code from gtkthemes into a new abstraction
8143         GtkModule which has the logic for implementing
8144         a loadable module which implements a number of 
8145         GObject types.
8146
8147 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
8148
8149         * gtk/gtkeditable.[ch]: Convert GtkEditable from
8150         a class into an interface  
8151         
8152         * gtk/gtkoldeditable.[ch]: Move the old editable
8153         implementation into here, so legacy widgets can
8154         still rely on the implemenation. GtkOldEditable
8155         exports GtkEditable. Make selection handling
8156         code use new text conversion functions (and
8157         handle UTF-8 as a side-effect). Use GtkClipboard
8158         for CLIPBOARD.
8159
8160         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
8161         Adopt to match above changes.
8162
8163         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
8164         avoid GtkOldEditable implementation. Restructure
8165         to reduce number of places that modify state directly.
8166         Move to GtkBindingSet. Display the preedit string.
8167         Queue recomputation of PangoLayout and scroll position
8168         to improve effiency of doing complex changes naively.
8169         Add a menu with cut/copy/paste and input method selection.
8170
8171 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
8172
8173         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
8174         to set preedit string and attributes; display preedit string by
8175         inserting string and attributes at cursor when creating the
8176         GtkTextLineDisplay.
8177
8178         * gtk/gtktextlayout.c: Move all conversions between byte
8179         positions in PangoLayout and GtkTextIter into new functions
8180         line_display_iter_to_index/index_to_iter that properly
8181         handle the preedit string.
8182
8183         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
8184         it to return const char * (eventually will end up
8185         as GCONST char *, most likely.)
8186
8187         * gtk/gtktextview.[ch]: Handle the preedit string, call
8188         gtk_im_context_reset() as necessary, add a menu to switch
8189         input methods.
8190         
8191         * gtk/gtktextlayout.[ch]: Remove useless
8192         gtk_text_layout_get_log_attrs() function.
8193
8194 2000-11-11  Tor Lillqvist  <tml@iki.fi>
8195
8196         * gdk/gdk.def
8197         * gtk/gtk.def: Update.
8198
8199         * gdk/win32/*.c: Add last argument to g_type_register_static()
8200         calls.
8201
8202         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
8203
8204         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
8205         generated by older wheel mouse drivers. Get the correct y
8206         coordinate from WM_MOUSEWHEEL messages.
8207
8208         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
8209         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
8210         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
8211         Debugging functions.
8212
8213         * gdk/win32/gdkprivate-win32.h: Declare them.
8214
8215         * gdk/win32/gdkinput-win32.h: Add declaration for
8216         gdk_input_window_destroy().
8217
8218         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
8219
8220 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
8221
8222         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
8223         function to help handle keeping things in sync.
8224
8225 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
8226
8227         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
8228         BOXED marshallers.
8229
8230         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
8231         (gtk_list_store_class_init): use the new BOXED marshallers.
8232
8233         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
8234         new_with_values to new_with_types.
8235         (gtk_tree_store_get_column_type): add this.
8236         (gtk_tree_store_class_init): use the new BOXED marshallers.
8237
8238         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
8239         mirror some POINTER marshallers.
8240
8241 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
8242
8243         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
8244         allow more interesting iterators.  Also, made the lifecycle of
8245         iterators more explicit.
8246
8247         * gtk/gtktreemodelsort.[ch]: New model for sorting.
8248
8249         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
8250         types.
8251
8252 2000-11-09  Alexander Larsson  <alexl@redhat.com>
8253
8254         * demos/testgtk/menus.c:
8255         Changes to make the new testgtk compile after
8256         gtk_menu_append was removed.
8257
8258         * gdk/linux-fb/gdkdrawable-fb2.c
8259         (gdk_fb_get_depth, gdk_fb_get_visual,
8260         gdk_drawable_impl_fb_class_init): Implement
8261         these drawable functions. Now GtkImages work again.
8262
8263         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
8264
8265         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
8266         
8267         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
8268         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
8269         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
8270         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
8271
8272 2000-11-08  Havoc Pennington  <hp@pobox.com>
8273
8274         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
8275         visible_set args, don't know where these had gone, I thought they
8276         used to be there
8277
8278         * gtk/testtext.c: Add a menu item to apply invisibility tag;
8279         now we can test the feature and see that it's totally broken.
8280
8281 2000-11-08  Havoc Pennington  <hp@pobox.com>
8282
8283         Make DND copy pixbufs and tags when source and target share a 
8284         tag table.
8285         
8286         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
8287         in-process GTK_TEXT_BUFFER_CONTENTS target
8288         (gtk_text_view_drag_data_received): Paste from
8289         GTK_TEXT_BUFFER_CONTENTS if we receive it.
8290
8291 2000-11-08  Alexander Larsson  <alexl@redhat.com>
8292
8293         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
8294         API changes.
8295
8296         * gtk/gtkmenu.c: Add support for scrolling menus.
8297         Remove gtk_menu_append/prepend/insert, these have been moved to
8298         gtkcompat.h as #defines.
8299
8300         * gtk/gtkcompat.h.in:
8301         Add compatibility #defines for gtk_menu_append/prepend/insert
8302
8303         * gtk/gtkmenu.h: Add data needed for scrolling menus.
8304         GtkMenuPositionFunc gets an extra argument push_in.
8305         gtk_menu_append/prepend/insert removed.
8306         
8307         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
8308         positioning behaviour to fit to scrolling menus.
8309
8310         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
8311         into menuitem->submeny. That is wrong, and broke torn
8312         off submenus of torn off menus, since they were unrealized
8313         when the first menu was unrealized.
8314
8315         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
8316         gtk_menu_shell_select_item() since these need to be overridden in
8317         GtkMenu.
8318
8319         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
8320         positioning behaviour to fit to scrolling menus.
8321         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
8322         the current item so that it is prelighted when the menu pops up.
8323         This is a workaround to the fact that the menu doesn't get the
8324         initial enter event (due to grabs).
8325
8326         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
8327         s/gtk_menu_append/gtk_menu_shell_append/
8328
8329         * gtk/gtknotebook.c:
8330         s/gtk_menu_insert/gtk_menu_shell_insert/
8331
8332         * gtk/testgtk.c (create_menu, create_menus):
8333         Create the first menu with 50 items so that menu scrolling
8334         can be tested.
8335         
8336         
8337         Patch from Jonathan Blandford  <jrb@redhat.com>
8338
8339         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
8340         system to handle size requests.  First, we ask what the size of
8341         the toggle is.  Then, when allocating the size, we allocate the
8342         toggle_size first.  This way we can have multiple menu-item
8343         classes w/o needing a seperate class for each.
8344
8345         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
8346         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
8347
8348         * gtk/gtkcheckmenuitem.c
8349         (gtk_check_menu_item_toggle_size_request): New function to handle
8350         the toggle size-request.
8351
8352 2000-11-07  Havoc Pennington  <hp@redhat.com>
8353
8354         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
8355         Half-ass somewhat fix this function, so that scrolling to the
8356         insertion point works. Pango hacking is in the future to really
8357         fix it.
8358
8359         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
8360         length of data, no longer used.
8361
8362         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
8363         method contents in here, get rid of destroy method
8364         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
8365         that were backward. Remove debug spew.
8366         (cut_or_copy): Make the clipboard work with insert_range to
8367         preserve tags and pixbufs, not just the primary selection.
8368
8369 2000-11-07  Havoc Pennington  <hp@redhat.com>
8370
8371         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
8372         to gtk_text_mark_get_visible
8373
8374         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
8375         bug that was generating an invalid iterator
8376
8377         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
8378         ensure_char_offsets() in front of code placing the iter in an
8379         invalid state.
8380
8381         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
8382         make override_location arg const
8383         (paste): Replace the selection if we paste into the 
8384         current selection
8385
8386         * gtk/gtkselection.h: Remove "GtkSelectioData"
8387         (struct _GtkSelectionData): move the definition here.
8388
8389         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
8390         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
8391
8392         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
8393
8394         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
8395         (gtk_text_buffer_insert_range_interactive): implement
8396         (gtk_text_buffer_get_tags): Remove, replaced by
8397         gtk_text_iter_get_tags()
8398
8399         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
8400         limit parameter, to avoid infinite linear scan.
8401         (gtk_text_iter_backward_search): Add search limit
8402         (gtk_text_iter_forward_find_char): Add search limit
8403         (gtk_text_iter_backward_find_char): Add search limit
8404
8405 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
8406
8407         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
8408         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
8409         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
8410         gdk/linux-fb/gdkwindow-fb.c:
8411         use g_object_new() instead of g_type_create_instance() which
8412         is a private function for fundamental type implementations.
8413
8414         * gdk/linux-fb/gdkinput-ps2.c:
8415         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
8416         instead just store the current modifier state. Add a (somewhat broken)
8417         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
8418         Rename exported function gdk_input_ps2_get_mouseinfo to
8419         gdk_input_get_mouseinfo.
8420
8421         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
8422         gdk/linux-fb/gdkwindow-fb.c:
8423         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
8424         
8425
8426 2000-11-02  Havoc Pennington  <hp@redhat.com>
8427
8428         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
8429         use stock buttons. Should be 100% source compatible, appropriate
8430         filesel fields now point to dialog->vbox and dialog->action_area.
8431         On the bizarre side, dialog->action_area and filesel->action_area
8432         are not the same widget.
8433         (gtk_file_selection_init): Put some padding around the selection
8434         entry, so it isn't touching the GtkDialog separator.    
8435
8436         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
8437         use stock buttons, etc. Should also be source compatible.
8438         Set the dialog default title in _init not _new().
8439         
8440         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
8441         Use stock buttons; don't put a button box inside the existing
8442         dialog button box. Don't bother with push/pop colormap anymore.
8443
8444         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
8445         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
8446         for message dialog, and necessary for the font selection and color
8447         selection with help and apply buttons.
8448         
8449         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
8450         to the created button widget. Set GTK_CAN_DEFAULT on the button.
8451         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
8452         between buttons, put less padding around the action area.
8453         (gtk_dialog_run): Exit on unmap rather than on destroy. 
8454         This will also exit the loop if the widget is hidden.
8455         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
8456         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
8457         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
8458         special-case delete event.
8459
8460         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
8461         formatting
8462         
8463 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
8464
8465         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
8466         button to temporarily disable position recording in the
8467         "saved position" test.
8468
8469 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
8470
8471         * gtk/gtkthemes.c: added compat code that temporarily implements
8472         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
8473         going to be revamped by owen's upcoming GtkModule patches, but
8474         untill then people want gtk to build, right? ;)
8475
8476 2000-11-04  Havoc Pennington  <hp@pobox.com>
8477
8478         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
8479         list
8480
8481         * docs/Changes-2.0.txt: Add note about
8482         gtk_container_get_toplevels()
8483
8484         * gtk/gtktextview.h: formatting
8485         
8486         * gtk/gtktextview.c: don't start descriptions with "Returns",
8487         confuses gtk-doc
8488
8489 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
8490
8491         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
8492         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
8493
8494 2000-11-03  Havoc Pennington  <hp@redhat.com>
8495
8496         * gtk/gtktexttagtable.c: Docs
8497         (gtk_text_tag_table_size): return a signed int
8498
8499         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
8500         (gtk_text_tag_event): make the event_object a GObject
8501
8502         * gtk/gtktextview.c: Write API docs for all functions.
8503
8504         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
8505         for gtk_text_view_get_window_type() called on one of the private
8506         windows.
8507
8508         * gtk/gtktextview.c: Instead of accessing text_view->buffer
8509         directly, call get_buffer() which demand-creates a default
8510         buffer. So gtk_text_view_new() can be used to create a view with a
8511         default buffer in it, if you just want an empty text box users can
8512         put data in. Useful for GUI builders also.
8513
8514 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
8515
8516         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
8517         the charset encodign portion MUST be in lowercase.
8518         * gtk/gtkrc.az: added file for Azeri language
8519
8520 2000-11-03  Havoc Pennington  <hp@redhat.com>
8521
8522         Get widgets working on the btree/buffer side. Display of them 
8523         still doesn't work.
8524         
8525         * gtk/gtktextview.c: start implementing child widget stuff
8526
8527         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
8528
8529         * gtk/gtktextlayout.c: handle embedded widgets
8530
8531         * gtk/gtktextdisplay.c: handle embedded widgets
8532
8533         * gtk/gtktextchild.c: Implement all the child anchor goo
8534
8535         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
8536         function
8537
8538         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
8539         (insert_pixbuf_or_widget_segment): abstract out common portions of 
8540         creating a child anchor or a pixbuf segment.
8541         (gtk_text_btree_create_child_anchor): new function
8542         (gtk_text_btree_unregister_child_anchor): new function
8543
8544         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
8545         allocate_child signal on GtkTextLayout
8546
8547         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
8548         values
8549         (gtk_text_iter_get_child_anchor): new function
8550
8551         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
8552         default handler for the changed signal, which calls
8553         gtk_text_buffer_set_modified(), instead of just always emitting
8554         changed then calling set_modified() manually. I guess this is
8555         maybe more flexible. It seems logical.
8556
8557 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
8558
8559         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
8560         now.
8561
8562         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
8563
8564 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
8565
8566         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
8567         been marked static.
8568
8569 2000-11-02  Havoc Pennington  <hp@redhat.com>
8570
8571         * gtk/testgtk.c (create_labels): had a test backward
8572
8573         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
8574         fields, so the dest GC ends up with the correct clip origin, 
8575         etc. Fixes a bug where colored labels didn't redraw 
8576         properly.
8577
8578 2000-11-02  Alexander Larsson  <alexl@redhat.com>
8579
8580         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
8581         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
8582         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
8583         Add last argument to t_type_register_static call.
8584         
8585         * gdk/linux-fb/gdkdrawable-fb2.c:
8586         Add last argument to t_type_register_static call.
8587         export the get_image drawable virtual function.
8588
8589         * gdk/linux-fb/gdkimage-fb.c:
8590         Add last argument to t_type_register_static call.
8591         rename gtk_image_get to _gdk_fb_get_image and
8592         export it for use by gdkdrawable-fb2.
8593
8594         * gdk/linux-fb/gdkprivate-fb.h:
8595         export _gdk_fb_get_image.
8596
8597         * gdk/linux-fb/gdkselection-fb.c:
8598         Add new api call stubs.
8599
8600         * gtk/Makefile.am:
8601         Missing ( in linux-fb part.
8602
8603         * modules/linux-fb/Makefile.am:
8604         Must link with gdk_pixbuf or get unresolved symbol.
8605
8606 2000-11-01  Havoc Pennington  <hp@pobox.com>
8607
8608         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
8609         GTK_TYPE_TEXT_ITER and BOXED marshallers
8610
8611         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
8612
8613         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
8614         
8615         * gtk/gtk-boxed.defs: add GtkTextIter
8616
8617         * gtk/gtkmarshal.list: Add marshallers for text widget that 
8618         properly use OBJECT and BOXED
8619
8620 2000-11-01  Havoc Pennington  <hp@redhat.com>
8621
8622         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
8623
8624         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
8625         before returning it. 
8626         
8627 2000-11-01  Havoc Pennington  <hp@redhat.com>
8628
8629         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
8630         Clip the rectangle to be rendered to the drawable, since
8631         get_from_drawable() requires a region within the drawable
8632
8633 2000-11-01  Havoc Pennington  <hp@redhat.com>
8634
8635         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
8636         from coordinates.
8637
8638 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
8639
8640         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
8641         it isn't NULL.
8642
8643 2000-11-01  Havoc Pennington  <hp@pobox.com>
8644
8645         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
8646         on a label
8647         (gtk_label_finalize): unref the attr list if any.
8648
8649         * gtk/testgtk.c (create_get_image): close test on second click
8650         (make_message_dialog): close dialog if it exists
8651
8652         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
8653
8654         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
8655         gdk-pixbuf
8656
8657         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
8658         from Pango markup format
8659         (gtk_label_set_markup_with_accel): ditto but with accelerator
8660         parsing
8661
8662         * gtk/gtkimage.c (gtk_image_expose): reformatting.
8663
8664         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
8665         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
8666         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
8667         call gdk_window_get_origin().
8668
8669         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
8670         implement GDK_PIXBUF_ALPHA_FULL
8671         
8672 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
8673
8674         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
8675         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
8676         g_signal_handlers_disconnect_matched to block/unblock and disconnect
8677         multiple handlers respectively, instead of only treating the
8678         first handler found (bug reported by owen).
8679
8680 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
8681
8682         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
8683
8684         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
8685
8686         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
8687         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
8688         gtk/gtktreeviewcolumn.h: Fixed inline docs.
8689
8690         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
8691         widget.  Needs writing someday.
8692
8693         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
8694         the docs.
8695
8696 2000-10-30  Havoc Pennington  <hp@redhat.com>
8697
8698         * gtk/gtktextview.h, gtk/gtktextview.c:
8699         Rename delete_at_cursor delete_from_cursor, and 
8700         move to move_cursor.
8701
8702 2000-10-30  Havoc Pennington  <hp@redhat.com>
8703
8704         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
8705         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
8706         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
8707         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
8708         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
8709         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
8710         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
8711         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
8712         gtktexttypes.h, gtktextview.c, gtktextview.h:
8713
8714         Massive reindentation and reformatting. Arg alignment and comments
8715         still need fixing in various places.
8716
8717 2000-10-30  Havoc Pennington  <hp@redhat.com>
8718
8719         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
8720         to be named insert_at_cursor and delete_at_cursor so C++ can
8721         handle them.
8722
8723 2000-10-28  Tor Lillqvist  <tml@iki.fi>
8724
8725         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
8726         to get a double directory separator in case the home directory
8727         ends with one. This would cause trouble especially on Windows,
8728         where the path will be confused with the syntax for an an UNC
8729         (network share) path \\server\share\path.
8730         (gtk_rc_add_initial_default_files): Ditto.
8731
8732 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
8733
8734         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
8735
8736         * gtk/gtktextview.c: Use correct marshallers.
8737
8738 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
8739
8740         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
8741         use new iter stuff, and added all the appropriate signals et al.
8742
8743         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
8744         code is internal to gtk only.
8745
8746 2000-10-28  Tor Lillqvist  <tml@iki.fi>
8747
8748         * gtk/gtk.def
8749         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
8750         glib-genmarshal etc.
8751
8752 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
8753
8754         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
8755         parallel builds.
8756
8757 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
8758
8759         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
8760
8761 2000-10-27  Robert Brady  <robert@suse.co.uk>
8762
8763         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
8764         en_GB (British), ia (Interlingua).
8765
8766 2000-10-26  Havoc Pennington  <hp@redhat.com>
8767
8768         * gtk/gtktextiter.c (my_strrstr): fix constness warning
8769
8770         Fixed output of:
8771         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
8772         
8773         * gtk/gtktextsegment.c (char_segment_new): rename
8774         (_char_segment_new_from_two_strings): rename
8775         (_toggle_segment_new): rename
8776         
8777         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
8778         (make_clipboard_widget): make it static
8779         (text_get_func): static
8780         (text_clear_func): static
8781
8782         * gtk/gtkcolorsel.c (adjustment_changed): make this function
8783         static
8784         (hex_changed): make it static
8785         (hsv_changed): make it static
8786         (opacity_entry_changed): make it static
8787
8788         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
8789         (toggle_segment_check_func): rename with _gtk
8790
8791         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
8792         (_widget_segment_new): rename
8793         (_widget_segment_add): rename
8794         (_widget_segment_remove): rename
8795         (_widget_segment_ref): rename
8796         (_widget_segment_unref): rename
8797
8798         * gtk/gtktextmark.c (_mark_segment_new): Rename
8799         _gtk_mark_segment_new   
8800
8801 2000-10-26  Havoc Pennington  <hp@redhat.com>
8802
8803         * gtk/gtkmarshal.list: add new marshallers used by the text widget
8804         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
8805         types
8806
8807         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
8808         marshaller types
8809
8810         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
8811         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
8812         license on these files.
8813
8814         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
8815         work.
8816
8817         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
8818         runtime random number different for each tree, instead of 
8819         a constant I made up.
8820
8821 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
8822
8823         * gtk/Makefile.am: buncha cleanups, kludged build sources
8824         dependencies with a Makefile: oldest-source-stamp dependancy
8825         for the moment. automake is really fighting us here, with
8826         intentionally not allowing user-defined rules or dependancies
8827         prior to it's -include $(DEP_FILES) statement. sucks rocks!
8828
8829         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
8830         to public headers. tehy have a comment stating that they are
8831         "semi-public" aren't included by gtk.h and if enums popup there,
8832         they can be /*< skip >*/-ed.
8833
8834         * gtk/gtktextlayout.h: 
8835         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
8836         added LGPL... <SIGH>
8837
8838 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
8839
8840         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
8841         GtkTreeIter.  Added iterators everywhere.
8842
8843         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
8844
8845         * gtk/gtktreeviewselection.c: Changed to use the iterators.
8846
8847         * gtk/gtktreestore.c: Changed to use the iterators.
8848
8849         * gtk/gtkliststore.c: Commented out the code.  Will convert to
8850         iterators tomorrow.
8851
8852         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
8853         iterators tomorrow.
8854
8855         * gtk/treestoretest.c: Changed to use iterators.
8856
8857         * demos/testgtk/main.c: Moved to use the new iterator system.
8858
8859 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
8860
8861         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
8862         localization misbehaviour.
8863
8864         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
8865         a useless type without copy/free.
8866
8867         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
8868         of GTK_TYPE_CTREE_NODE.
8869
8870 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
8871
8872         * gtk/gtksignal.c:
8873         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
8874         applicable.
8875
8876         * gtk/gtk-boxed.defs (GtkSelectionData): specify
8877         gtk_selection_data_copy and gtk_selection_data_free
8878         do GtkSelectionData work as params in signals.
8879
8880 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
8881
8882         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
8883         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
8884         couldn't they at least give it a non-standard name?
8885         
8886         * gtk/gtktextlayout.c: arg! yet another implementation of
8887         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
8888
8889         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
8890         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
8891         home. now i know this _is_ a conspiracy.
8892
8893         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
8894         ::state-changed.
8895
8896         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
8897         (gtk_accel_group_create_add): marshaller signature fixups.
8898
8899         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
8900         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
8901
8902         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
8903         anymore.
8904
8905 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
8906
8907         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
8908         due to the signal system changes, it wouldn't build currently. to
8909         be fixed soon.
8910
8911         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
8912
8913         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
8914         so it needs gtk_marshal_VOID__ENUM() instead of
8915         gtk_marshal_NONE__UINT().
8916
8917         * gdk/gdk*.c: adapted type registration functions.
8918
8919         * gtk/gtkbindings.c:
8920         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
8921         gone.
8922
8923         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
8924
8925         * gtk/gtkobject.c:
8926         (gtk_object_destroy):
8927         (gtk_object_shutdown): fixed recursion guards. basically we have to
8928         catch the case where any of GObject.shutdown() or gtk_object_destroy()
8929         is called during ::destroy, and avoid recursion there.
8930
8931         * gtk/gtktypeutils.c:
8932         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
8933         boxed_copy/boxed_free. this needs a more general solution based on a
8934         publically installed code-generator utility.
8935
8936         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
8937         glib's gobject has support for that now.
8938         define GtkSignalMarshaller in terms of GSignalCMarshaller.
8939
8940 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
8941
8942         * gtk/gtksignal.[hc]:
8943         * gtk/gtkmarshal.[hc]:
8944         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
8945         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
8946         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
8947         care of that.
8948
8949         * *.c: marshaller name fixups.
8950
8951         * gtk/gtkmarshal.list: added a comment briefing the format.
8952
8953 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
8954
8955         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
8956         compatibility macros here now. more specifically, most of
8957         the API is preserved (yes, _most_, nonwithstanding the
8958         following exceptions listed, the API is stil lHUGE ;)
8959         things that got removed completely:
8960         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
8961         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
8962         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
8963         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
8964         gtk_signal_remove_emission_hook().
8965         non-functional functions variants:
8966         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
8967         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
8968         not supported anymore.
8969         (gtk_signal_compat_matched): new internal function to aid
8970         implementation of the compatibility macros, it  provides
8971         functionality to block/unblock/disconnect handlers based
8972         on func/data.
8973
8974         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
8975
8976         * *.c: adaptions to new type registration API signatures.
8977
8978 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
8979
8980         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
8981
8982 2000-10-25  Robert Brady  <robert@suse.co.uk>
8983
8984         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
8985         gdk_property_delete): If window == NULL, assume the root window.
8986         (restoring the behaviour that was in 1.2).
8987         
8988         * gtk/testtext.c (save_buffer): Allow creation of new files when
8989         saving.
8990
8991         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
8992         calls to read().
8993
8994 2000-10-25  Tor Lillqvist  <tml@iki.fi>
8995
8996         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
8997
8998         * gdk/win32/gdkdrawable-win32.c
8999         * gdk/win32/gdkimage-win32.c
9000         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
9001         X11 backend.
9002
9003         * gdk/win32/gdkcc-win32.c
9004         * gdk/win32/gdkcolor-win32.c
9005         * gdk/win32/gdkfont-win32.c
9006         * gdk/win32/gdkinput-win32.c
9007         * gdk/win32/gdkmain-win32.c
9008         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
9009
9010 2000-10-24  Havoc Pennington  <hp@redhat.com>
9011
9012         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
9013         it a static function
9014
9015         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
9016         redraw text when a tag is applied to it.
9017
9018         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
9019         (gtk_text_tag_affects_nonsize_appearance): private functions to
9020         see if a tag requires various kinds of redraw/layout to be queued
9021         up.
9022
9023         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
9024
9025         * gtk/testtext.c (fill_example_buffer): Put the cursor 
9026         at the start of the buffer, so search works by default
9027
9028         * gtk/gtktextiter.c (lines_match): init match_start always
9029
9030         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
9031         function, get iter at a line + a byte index
9032
9033         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
9034         to set byte position within a line
9035         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
9036
9037 2000-10-23  Havoc Pennington  <hp@redhat.com>
9038
9039         * gtk/testtext.c: Re-enable the "find" dialog
9040
9041         * gtk/testgtk.c: Add test for gdk_drawable_get_image
9042         
9043         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
9044         the arguments to gdk_draw_drawable were in the wrong order
9045         (gdk_window_paint_init_bg): This function was ignoring the
9046         init_region, instead of clipping to it, so the entire backing
9047         pixmap was cleared on every begin_paint()
9048         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
9049         was in here again, the loop kept using the same GtkWindowPaint
9050         over and over.
9051         (gdk_window_begin_paint_region): Fix a bug where we had two
9052         x_offset instead of x_offset and y_offset
9053
9054         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
9055         before we get the image.
9056         (gdk_draw_drawable): get the composite before we draw the drawable.
9057         (gdk_drawable_real_get_composite_drawable): default
9058         get_composite_drawable implementation that returns the drawable 
9059         itself
9060
9061         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
9062         get_composite_drawable virtual function
9063
9064         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
9065         list-walking bug
9066
9067         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
9068         make this work if the source drawable is a GdkDrawableImplX11
9069         instead of a public drawable type. This is really broken; the
9070         problem is that GdkDrawable needs a virtual method get_xid(), but
9071         of course that doesn't work in practice. Enter RTTI.
9072
9073         Also, improve mismatched depth message.
9074
9075         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
9076         GdkPixmap
9077
9078         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
9079         install _gdk_x11_get_image as our implementation of get_image
9080         
9081         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
9082         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
9083
9084         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
9085         gdk_drawable_get_image
9086
9087         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
9088
9089         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
9090         get_image
9091
9092         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
9093         trailing semicolon after for loop
9094
9095 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
9096
9097         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
9098         where font_desc for widget's context lagged widget's font_desc by
9099         one step.
9100
9101 2000-10-22  Tor Lillqvist  <tml@iki.fi>
9102
9103         * gdk/win32/gdkgc-win32.c
9104         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
9105
9106         * gtk/makefile.mingw.in
9107         * gtk/gtk.def: Updates.
9108
9109         * gtk/testgtk.c: sleep() is called _sleep in MS's C
9110         library.
9111
9112         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
9113
9114         * gtk/makefile.msc: Remove
9115
9116         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
9117
9118         * gtk/Makefile.am: Add it.
9119
9120         * configure.in: Generate it.
9121
9122         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
9123         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
9124         something even if not implemented, to satisfy picky MSVC.
9125
9126         Patches by Hans Breuer:
9127         
9128         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
9129         SetBkMode() and SetTextAlign() before calling
9130         pango_win32_render().
9131
9132         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
9133         Set hcliprgn to NULL after destroying it.
9134         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
9135
9136         * gdk/win32/gdkgeometry-win32.c
9137         (_gdk_windowing_window_queue_antiexpose): More effective
9138         implementation.
9139
9140         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
9141         depth as default, not the visual's.
9142
9143         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
9144         against empty title.
9145
9146         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
9147         IMAGE_PRIVATE_DATA.
9148
9149         * gdk/win32/gdkimage-win32.c: Use it.
9150
9151 2000-10-22  Robert Brady  <robert@suse.co.uk>
9152
9153         * configure.in: Check for bind_textdomain_codeset
9154
9155         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
9156         present, make use of it.
9157
9158         Add a translatable string "default:LTR" which, if translated
9159         to "default:RTL", will cause the default direction to be
9160         Right-to-Left.
9161
9162         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
9163         direction if marked as flippable.
9164
9165         * gtk/gtkhscale.c: Mark widget as flippable.
9166         
9167 2000-10-04  Havoc Pennington  <hp@redhat.com>
9168
9169         * gtk/testgtk.c (create_buttons): create some stock buttons
9170         with the default accel group
9171         (create_image): test some new GtkImage features
9172         (make_message_dialog): test GtkMessageDialog
9173         (create_modal_window): fix someone's bizzarro indentation
9174
9175         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
9176         GTK_WIN_POS_CENTER_ON_PARENT. 
9177         Add "destroy with parent" setting, which means the window goes
9178         away with its transient parent.
9179         (gtk_window_get_default_accel_group): get the default accel group
9180         for the window.
9181         (gtk_window_set_destroy_with_parent): set/unset destroy with
9182         parent flag
9183         (gtk_window_read_rcfiles): invalidate icon set caches
9184         after reloading rcfiles 
9185
9186         * gtk/gtkenums.h (GtkWindowPosition): add
9187         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
9188         on its parent window when the dialog is mapped for the first time.
9189
9190         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
9191         a simple message dialog class
9192         
9193         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
9194         handler to emit response signal, and maybe later it would
9195         honor a hide_on_delete flag - though that isn't there yet.
9196         Set border width on the vbox to 2, so we get some padding.      
9197         Use a button box for the action area.
9198         (gtk_dialog_key_press): synthesize a delete event if Esc
9199         is pressed and the GtkWidget key press handler didn't 
9200         handle the escape key.
9201         (gtk_dialog_new_with_buttons): new function creates a dialog
9202         with some default buttons in it.
9203         (gtk_dialog_add_action_widget): add an activatable widget
9204         as a button in the dialog - you can also add a non-activatable
9205         widget by accessing the action area directly.
9206         (gtk_dialog_add_button): add a simple button - stock ID or 
9207         label - to the action area
9208         (gtk_dialog_response): emit response signal
9209         (gtk_dialog_run): block waiting for the dialog, return 
9210         the response. Override normal delete_event behavior, so that 
9211         delete_event does nothing inside gtk_dialog_run().
9212
9213         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
9214         emitted when an action widget is clicked or the dialog gets
9215         delete_event
9216
9217         * gtk/gtk.h: add gtkmessagedialog.h
9218
9219         * gtk/Makefile.am: add gtkmessagedialog.[hc]
9220
9221 2000-10-18  Havoc Pennington  <hp@redhat.com>
9222
9223         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
9224         where any number of empty lines would get skipped
9225
9226         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
9227         edge.
9228
9229         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
9230         warning about invalid iterators (explain more thoroughly)
9231         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
9232
9233         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
9234         big
9235
9236         * demos/*.c: Add error handling
9237
9238         * gtk/gtktextbuffer.c: don't modify const iterators
9239
9240         * gtk/gdk-pixbuf-loader.c: Add full error handling here
9241
9242         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
9243         on file load
9244
9245         * gtk/gtkiconfactory.c: Update to reflect addition of error
9246         handling to gdk-pixbuf loaders
9247
9248 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
9249
9250         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
9251         move to new modularized testgtk.
9252
9253 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
9254
9255         * gtk/gtktreeview.c: Draw the arrows correctly.
9256
9257         * gtk/gtktreemodel.c: Added user docs.
9258
9259         * gtk/gtk.h: remove gtktreedatalist.h.
9260
9261         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
9262         parent when generating my type.
9263
9264         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
9265         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
9266
9267 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
9268
9269         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
9270         GtkTreeModel from object to interface.
9271
9272 2000-10-16  Havoc Pennington  <hp@redhat.com>
9273
9274         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
9275         compilation
9276
9277 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
9278
9279         * gtk/gtktreeselection.c: Add API documentation to all public
9280         functions.
9281
9282         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
9283         functions.
9284
9285 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
9286
9287         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
9288         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
9289         docs to all public functions.
9290
9291         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
9292         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
9293         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
9294         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
9295         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
9296         issue.
9297
9298 2000-10-14  Robert Brady  <robert@suse.co.uk>
9299
9300         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
9301
9302 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
9303
9304         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
9305         values other then G_TYPE_STRING.
9306         * gtk/gtktreeselection.c: Minor commenting updates.
9307         * gtk/gtktreeview.c: Format updates.
9308
9309 2000-10-09  Tor Lillqvist  <tml@iki.fi>
9310
9311         * README.win32: Update.
9312
9313         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
9314         lines that had been deleted by mistake (?).
9315
9316         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
9317         also the case fg==white and bg==black (but still not randomly
9318         coloured cursors). Thanks to Wolfgang Sourdeau.
9319
9320         * gdk/win32/*.c: Silence gcc -Wall.
9321
9322         * gtk/gtk.def: Add missing entry points.
9323
9324         Fixes by Hans Breuer:
9325
9326         * gdk/makefile.msc
9327         * gdk/win32/makefile.msc: Update.
9328
9329         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
9330         some MSVC thing, presumably), cause breakpoint on failures. Add
9331         GDK_NOR case. Call g_log_set_always_fatal.
9332
9333         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
9334         should be pased by reference.
9335         
9336         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
9337         
9338         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
9339
9340         * gdk/win32/gdkevents-win32.c
9341         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
9342
9343         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
9344         implementation object.
9345
9346         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
9347         not just windows.
9348         
9349         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
9350         Use the wrapper object.
9351         
9352 2000-10-06  Havoc Pennington  <hp@redhat.com>
9353
9354         * Makefile.am (SRC_SUBDIRS): contrib subdir
9355
9356         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
9357         so it can be used in Xlib version
9358
9359         * demos/testpixbuf.c (update_timeout): error checking from 1.0
9360         tree
9361
9362         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
9363         change from 1.0 tree that returns first frame of animation
9364         if the loaded file is an animation.
9365
9366         * contrib: add new directory to hold stuff that comes with GTK+
9367         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
9368         
9369         * configure.in: add contrib/*
9370
9371 2000-10-05  Havoc Pennington  <hp@redhat.com>
9372
9373         * demos/testpixbuf-save.c: add pixbuf save test
9374
9375         * demos/Makefile.am: add testpixbuf-save.c
9376
9377 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
9378
9379         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
9380         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
9381         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
9382         * gtk/gtktreeselection.[ch]: Replaced
9383         "node_selected"/"node_unselected" signal with "selection_changed"
9384         signal.
9385
9386 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
9387
9388         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
9389         tree widget.
9390
9391 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
9392
9393         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
9394         drawing.
9395
9396 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
9397
9398         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
9399         Move list pointer forwards before removing item from
9400         list. (Crash reported by Salmaso Raffaele)
9401
9402         * gdk/gdkwindow.h: Remove spurious trailing ,
9403
9404         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
9405         dependencies on uninstalled libraries, sorry folks.
9406
9407 2000-10-04  Havoc Pennington  <hp@redhat.com>
9408
9409         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
9410         gtk/gtkiconfactory.c: Fix copyrights    
9411
9412         * demos/testpixbuf.c: add inline pixbuf test
9413         
9414 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
9415
9416         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
9417         Add gdk_window_iconify.
9418
9419         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
9420         (gdk_window_set_geometry_hints): Add win_gravity
9421         to geometry structure.
9422
9423         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
9424         Implement _NET_WM_PING.
9425
9426         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
9427         Set _NET_WM_PID on the client leader.
9428
9429         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
9430         Handle UTF-8 better.
9431
9432         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
9433         UTF-8 better, set _NET_WM_NAME as well. Only set
9434         icon name if it hasn't previously been explicitely 
9435         set.
9436
9437 2000-10-03  Havoc Pennington  <hp@redhat.com>
9438
9439         * gtk/testtextbuffer.c: clean up trailing whitespace,
9440         add extensive tests for tag toggle iteration.
9441         
9442         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
9443         distance
9444
9445         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
9446         optimize case where the tag root is on level 1
9447         (gtk_text_line_previous_could_contain_tag): attempt to implement
9448         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
9449         functionality
9450
9451         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
9452         Implement this, though not very efficiently.
9453
9454         * gtk/gtktextiterprivate.h: reformat
9455
9456         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
9457         iterator
9458
9459         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
9460         this to properly revalidate the iterators.
9461
9462         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
9463         properly at the end of the line (and therefore on empty lines)
9464
9465         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
9466         maybe we should return a value...
9467
9468 2000-10-03  Tor Lillqvist  <tml@iki.fi>
9469
9470         * config.h.win32: Guard definition of alloca(). glib.h now handles
9471         that.
9472
9473         * gdk/gdk.def
9474         * gtk/gtk.def: Add new entry points.
9475
9476         Changes just to make GTK+ build without errors on Win32. No hope
9477         of it working in its current state, though...:
9478         
9479         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
9480         some functions from the X11 backend, just to make GTK+ build.
9481
9482         * gdk/makefile.mingw.in
9483         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
9484         number. Add new object files.
9485
9486         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
9487         GetMessageTime to get timestamp (where on X11 uses
9488         gdk_x11_get_server_time()).
9489
9490 2000-10-02  Havoc Pennington  <hp@pobox.com>
9491
9492         * gtk/gtktextview.c: text_window_* weren't static and should have
9493         been.
9494         Start work on child widgets; not yet complete, syncing to 
9495         office computer.
9496
9497         * gtk/gtktextchild.h: change this to contain a public interface,
9498         starting work on child interfaces.
9499         * gtk/gtktextchildprivate.h: move private interfaces here
9500
9501         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
9502
9503         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
9504         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
9505         gtk/gtktextmark.c: copyright notices
9506
9507         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
9508         internal functions      
9509
9510         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
9511         internal function
9512
9513         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
9514         Reformatting    
9515
9516 2000-09-30  Havoc Pennington  <hp@pobox.com>
9517
9518         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
9519         NULL start/end pointers
9520
9521         * gtk/gtktextbuffer.c: Write some docs
9522         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
9523         NULL, so you can just check whether there's a selection.        
9524
9525         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
9526         cleanup_line or segments_changed ourselves, it gets done 
9527         in unlink_segment
9528
9529         * gtk/gtktextmark.h:
9530         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
9531         
9532         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
9533
9534         * gtk/gtktextmark.c: delete some more old Tk cruft
9535
9536         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
9537         mark before removing it, so we can emit MARK_DELETED with a valid
9538         pointer.
9539         (gtk_text_buffer_mark_set): hold ref across signal emission
9540
9541         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
9542         whining about attempts to delete special marks
9543
9544         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
9545         underscore, since it's internal.
9546
9547         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
9548         now implemented in terms of iterators in gtktextiter.h
9549
9550         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
9551         New function, destructively sets contents of buffer. Also 
9552         a convenient way to clear the buffer by setting text to ""
9553
9554         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
9555         multiline string literal
9556
9557         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
9558         text changes.
9559
9560         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
9561         is not dereferenceable
9562         (gtk_text_iter_forward_lines): fix return value
9563
9564 2000-09-29  Havoc Pennington  <hp@redhat.com>
9565
9566         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
9567
9568         * gtk/gtktextview.c: Implement drag thresholding; change functions 
9569         that set border window size to have nicer name
9570         (gtk_text_view_mark_set_handler):  Fix this to have the 
9571         right signature.
9572
9573         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
9574
9575         * gtk/testtext.c: Update with API changes, put line numbers on 
9576         both sides.
9577         
9578         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
9579         with this
9580
9581         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
9582         pixbuf; delete a big block of #if 0 Tk code
9583
9584         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
9585         insert_pixmap with insert_pixbuf
9586
9587 2000-09-29  Martin Baulig  <baulig@suse.de>
9588
9589         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
9590         confusion with the GdkPixbuf of the GNOME 1.x platform.
9591
9592 2000-09-29  Havoc Pennington  <hp@pobox.com>
9593
9594         * gtk/gtktextview.c: Implement the side windows.
9595
9596         * gtk/testtext.c: Implement simple line numbering in the 
9597         left side window; seems to make scrolling sloooow. Oops.
9598         Also, cursor blink is for some reason causing redraws
9599         of the line numbers. Should investigate...
9600
9601 2000-09-28  Havoc Pennington  <hp@redhat.com>
9602
9603         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
9604         scrolling child windows, and draw focus rectangle properly.
9605         
9606         (gtk_text_view_buffer_to_window_coords):
9607         Coordinate transformation to deal with all these freaking windows
9608         and offsets
9609         (gtk_text_view_window_to_buffer_coords): transform the other way
9610
9611         * gtk/testtext.c (create_buffer): Update to match Pango API change
9612
9613         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
9614         anonymous tags
9615         (foreach_unref): don't emit remove signal from finalize, just
9616         set tag's parent to NULL
9617
9618 2000-09-26  Havoc Pennington  <hp@redhat.com>
9619
9620         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
9621         Fix some warnings       
9622
9623 2000-09-26  Havoc Pennington  <hp@redhat.com>
9624
9625         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
9626         headers into the private header list
9627
9628         * Makefile.am (pkgconfig_DATA): install pkg-config files
9629
9630         * configure.in: add pkg-config files
9631
9632         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
9633
9634         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
9635         outstanding icon caches on theme change.
9636
9637         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
9638         important types:
9639
9640         (GtkIconSource): Specification for creating a pixbuf 
9641         appropriate for a direction/state/size triplet from 
9642         a source pixbuf or filename
9643
9644         (GtkIconSet): List of GtkIconSource objects that are used to
9645         create the "same" icon (e.g. an OK button icon), and cache for
9646         rendered icons
9647
9648         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
9649         up the icon set for a given stock ID.  GTK maintains a stack of
9650         GtkIconFactory to search, and applications or libraries can add
9651         additional icon factories on top of the stack
9652         
9653         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
9654         the set of GtkIconSource specified for a given stock ID into 
9655         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
9656         RcStyle, under the specified stock ID.
9657
9658         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
9659         render_icon used to derive a GdkPixbuf from a GtkIconSource.
9660         This allows people to theme how prelight, insensitive, etc. are
9661         done.
9662
9663         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
9664         icon factories for a style, and return the resulting 
9665         icon set if any.
9666
9667         (gtk_style_render_icon): Render an icon using the render_icon 
9668         method in the GtkStyleClass.
9669
9670         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
9671         Use the style for a given widget to look up a stock ID, get the
9672         icon set, and render an icon using the render_icon method 
9673         of the style
9674
9675         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
9676         (contains information about a stock item), the built-in stock item
9677         IDs, and functions to add/lookup stock items.
9678
9679         * gtk/stock-icons/*: Stock icons that come with GTK
9680
9681         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
9682         a button based on a GtkStockItem
9683         (gtk_button_new_accel): Takes a uline string and accel group, and
9684         installs the accelerator.
9685
9686         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
9687         image-display widget.
9688
9689 2000-09-25  Havoc Pennington  <hp@redhat.com>
9690
9691         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
9692
9693         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
9694         Fix a bug when removing node data, we didn't properly 
9695         re-splice the linked list after removing the data.
9696
9697         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
9698         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
9699
9700         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
9701
9702         * gtk/gtktextlayout.c (set_para_values): Set tab array 
9703         for the layout from the GtkTextTag.
9704
9705         * gtk/gtktexttypes.h: delete tab and search cruft, 
9706         remove g_convert() in favor of GLib version
9707
9708         * gtk/gtktexttypes.c: remove tab implementation from here,
9709         move to Pango
9710
9711         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
9712         tab stuff using new PangoTabArray from Pango
9713
9714         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
9715         unused border_width stuff
9716
9717 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
9718
9719         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
9720         glib) and now useless utf_to_latin1() latin1_to_utf()
9721
9722         * gtk/gtktextview.[ch]: Change ::move_insert and
9723         ::delete_text action signals to ::move and ::delete;
9724         create the signals with the right enumeration type,
9725         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
9726         C-v bindings, change Home, End to move to beginning/end
9727         of line, Add C-Home C-End to move to beginning/end
9728         of buffer. Change ::cut_text to ::cut_clipboard, etc;
9729         combine ::scroll_text into ::move; use new GtkSelectionData
9730         functions to simplify DND text handling.
9731         
9732         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
9733         deletion enumerations here, rename enumeration values to 
9734         be consistently plural.
9735
9736         * gtk/gtktextbuffer.c: Use new clipboard interfaces
9737         for cut/copy/paste and primary selection.
9738
9739         * gtk/gtktextbuffer.[ch]: Remove excess time and
9740         'interactive' arguments from cut/copy/paste;
9741         rename cut to cut_clipboard, etc; remove
9742         gtk_text_buffer_get_clipboard_contents().
9743
9744         * gtk/gtktextlayout.[ch]: Add 
9745         gtk_text_layout_move_iter_to_line_end() to move the iter to 
9746         line ends.
9747
9748         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
9749         Functions to set or get a UTF-8 string on the selection
9750         data.
9751
9752         * gtk/gtkclipboard.[ch]: New, simplified selection handling
9753         interfaces.
9754
9755         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
9756         created widgets - one of these is useless if we don't.
9757
9758         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
9759         a public function clear all targets registered for the
9760         widget.
9761
9762         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
9763         Never call gtk_widget_realize() - that was just asking
9764         for bizarre side-effects.
9765
9766         * gtk/gtkselection.c (gtk_selection_owner_set): Call
9767         gdk_selection_owner_set even if the widget is the
9768         same so that we reliably update the timestamp on
9769         the server.
9770
9771         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
9772         gdk_x11_get_server_time() function.
9773         
9774         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
9775         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
9776         Add some tricky filtering on serial numbers for
9777         selection clear events to fix up long-standard
9778         race condition FIXME's in gtkselection.c.
9779
9780         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
9781         routines to convert from utf8 to compound text or
9782         STRING and from a text property to UTF-8.
9783
9784         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
9785         a convenience function gdk_get_current_event_time().
9786
9787         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
9788         and free selection_data->data properly
9789
9790 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
9791
9792         * gtk/gtkthemes.c: Remove some unecessary includes.
9793
9794 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
9795
9796         * gtk/gtktextdisplay.c
9797         * gtk/gtktextlayout.c
9798         * gtk/gtktexttag.c
9799         * gtk/gtktexttag.h
9800         * gtk/testtext.c: Change the overstrike property to strikethrough,
9801         to closer match pango.
9802
9803 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
9804
9805         * gtk/gtktextview.c: Fix up visibility so that focus,
9806         cursor_visible and blink interact properly.  Reenable cursor blink
9807         which had been roughly disabled. Make blink and focus
9808         properly per-view.
9809
9810         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
9811         Add a flag for whether to display insertion cursor and
9812         a function to set the flag.
9813
9814         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
9815         get_line_y() to get_line_yrange(), to be a bit more generally
9816         useful.
9817
9818 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
9819
9820         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
9821           do stop_navigating_submenu, to clear last timeout properly.
9822           Also in gtk_menu_motion_notify move ignore_enter above
9823           the conditional to make it always happen as suggested by Owen
9824
9825 2000-09-07  Tor Lillqvist  <tml@iki.fi>
9826
9827         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
9828
9829         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
9830         w32api headers.
9831
9832         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
9833         declarations.
9834
9835         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
9836         (gdk_win32_get_colormap): A line had been deleted by mistake.
9837
9838         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
9839         (gdk_event_translate): Handle more virtual keycodes to be able to
9840         generate GDK events for Control-comma, Control-period, etc.
9841
9842         * gtk/gtk.def: Add some missing entry points.
9843
9844 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
9845
9846         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
9847         Doc comment fixing. (Mostly non-matching parameter names.)
9848
9849         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
9850         comments a little to avoid looking like a doc comment.
9851
9852         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
9853         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
9854         conversions be changed to GError?)
9855
9856         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
9857         Move private #defines into .c file.
9858
9859         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
9860         order of argument addition, remove duplicates.
9861
9862         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
9863         parent class is FrameClass, not BinClass.
9864
9865         * gtk/gtk.h: Add gtkinvisible, which was missing.
9866         (It's occasionalyl useful for client apps, if seldom.)
9867
9868         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
9869         #define.
9870
9871 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
9872
9873         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
9874         coordinates when creating window, instead of GDK-space
9875         coordinates. (Avoid BadValue on too large windows.)
9876
9877 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9878
9879         * configure.in (use_mmx_asm): Remove conftest* after use along the
9880         lines of AC_TRY_COMPILE.        
9881         
9882         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
9883         of g_dirname, which is deprecated.
9884         (gtk_rc_parse_any): Removed calls to
9885         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
9886
9887         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
9888         Removed calls to g_hash_table_{freeze,thaw}, as they are
9889         deprecated now.
9890
9891         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
9892         instead of g_basename.
9893         
9894 2000-09-04 Elliot Lee <sopwith@redhat.com>
9895         
9896         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
9897         ANSI warning.
9898
9899 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
9900
9901         * gtk/gtkwidget.h:  Add some documenting comments about 
9902           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
9903           just as owen said on irc.
9904
9905         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
9906           set HAS_DEFAULT.  Only set it if there isn't another window
9907           holding it (a focus window which RECEIVES_DEFAULT) and only unset
9908           it if the widget is not the focused window with RECEIVES_DEFAULT.
9909           This fixes weird double default bugs in dialogs which has things
9910           call gtk_window_set_default at times.
9911
9912 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
9913
9914         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
9915         Nils Barth and David Santiago to improve submenu
9916         navigation. The patch does this by creating a triangular
9917         region from the point where the pointer leaves the
9918         menu to the submenu.  While the pointer is in
9919         that region and a timeout has not expired, events 
9920         that would cause the active submenu to change are
9921         ignored.
9922
9923 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
9924
9925         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
9926         moving a toplevel window immediately after sizing it would
9927         result in it being sized back to the old size since 
9928         impl->width, impl->height aren't updated until we hear
9929         back from the server. There is still a (longstanding) bug
9930         here that gdk_window_get_size() will give the wrong size
9931         until we do hear back.
9932
9933 2000-08-31  Havoc Pennington  <hp@redhat.com>
9934
9935         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
9936         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
9937         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
9938         Rename GtkTextStyleValues to GtkTextAttributes
9939
9940 2000-08-31  Havoc Pennington  <hp@pobox.com>
9941
9942         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
9943         for rapid testing whether an iterator is the end iterator
9944         (gtk_text_btree_new): init end line cache
9945         (gtk_text_line_is_last): use fast cached line to 
9946         see if we're the last line.
9947         (get_last_line): use cached line here too, should 
9948         speed up some random unrelated code.
9949         
9950 2000-08-30  Havoc Pennington  <hp@pobox.com>
9951
9952         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
9953         signals.
9954
9955         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
9956         delete_text signals. This allows the signals to be used for
9957         implementing undo.
9958
9959         * gtk/gtktextbuffer.c: Change signal handler signatures; 
9960         provide "interactive" argument when emitting insert_text or
9961         delete_text signal.
9962         
9963 2000-08-30  Havoc Pennington  <hp@pobox.com>
9964
9965         * gtk/gtktextbuffer.c: Docs
9966
9967 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
9968
9969         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
9970         from switch statements, since Tor removed the enumeration
9971         value.
9972         
9973         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9974         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
9975
9976 2000-08-29 Elliot Lee <sopwith@redhat.com>
9977         * */*.h: Use G_GNUC_CONST.
9978
9979 2000-08-27  Havoc Pennington  <hp@pobox.com>
9980
9981         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
9982         minor indentation fixes, inserted some FIXME about stuff I
9983         realized was broken while documenting it.
9984         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
9985         GTK convention  
9986
9987 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
9988
9989         * gtk/testgtk.c (create_styles): Fix double free of
9990         font desc.
9991
9992 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9993
9994         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
9995         
9996         * gtk/testgtk.c (create_styles): Add a test for modifying
9997         the style through gtk_widget_modify_*.
9998
9999         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
10000         a function to get the current modifier style.
10001
10002         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
10003         of the passed in GtkRcStyle instead of ref'ing it.
10004
10005         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
10006
10007 2000-08-20  Tor Lillqvist  <tml@iki.fi>
10008
10009         * gdk/gdkimage.h
10010         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
10011         shared memory image+pixmap GdkImage type, or
10012         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
10013         I am dropping that.
10014
10015         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
10016         actually call gtk_init_abi_check(), passing also
10017         sizeof(GtkWindow). Ditto for gtk_init_check(). 
10018
10019         * gtk/gtk.def
10020         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
10021         New functions, used to check that the GTK+-using code has been
10022         compiled using the correct compiler and switches. In particular,
10023         with gcc one has to use the -fnative-struct switch as GTK+ is
10024         compiled with that.
10025
10026 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
10027
10028         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
10029         ->prev fields when merging lists. (Found simultaneously
10030         by Pawel Salek and Jakub Jelinek)
10031
10032 2000-08-12  Tor Lillqvist  <tml@iki.fi>
10033
10034         * gdk/gdk.def
10035         * gtk/gtk.def: Add missing entries.
10036
10037         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
10038         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
10039
10040         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
10041         function. Dummy implementation at this point.
10042
10043         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
10044         rules. Undefine GTK_COMPILATION when compiling the test programs.
10045         
10046         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
10047
10048 2000-08-11  Tor Lillqvist  <tml@iki.fi>
10049
10050         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
10051         to convert back and forth from UTF-8 and the "system" (or "current
10052         locale") charset when necessary. Indentation/spacing cleanup.
10053
10054 2000-08-10  Havoc Pennington  <hp@redhat.com>
10055
10056         * Makefile.am (snapshot): Change the format of the snapshot
10057         version to match glib
10058
10059         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
10060         from EXTRA_DIST since it doesn't seem to exist
10061
10062 2000-08-10  Tor Lillqvist  <tml@iki.fi>
10063
10064         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
10065         version of the directory name (not the UTF-8 one) when building
10066         the path name to stat().
10067
10068 2000-08-03  Elliot Lee  <sopwith@redhat.com>
10069
10070         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
10071         PANGO_ATTR_SHAPE set.
10072
10073 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
10074
10075         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
10076         Peter Osterlund to simplify the code while keeping the
10077         functionality the same.
10078
10079 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
10080
10081         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
10082         is_viewable() test further inside the function, since removing the 
10083         window from the redraw list without clearing ->update_area
10084         was also very broken.
10085
10086 2000-08-02  Tor Lillqvist  <tml@iki.fi>
10087
10088         * configure.in: Check for <unistd.h>.
10089
10090 2000-08-01  Martin Baulig  <baulig@suse.de>
10091
10092         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
10093         to display the message that this is a development version of GTK+.
10094
10095 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
10096
10097         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
10098         was depending on widget->allocation instead of the width of text_area,
10099         which was incorrect for subclasses like GtkSpinButton.
10100
10101         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
10102         with width == 1 tests that should be width == -1.
10103
10104 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
10105
10106         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
10107         (broken, Elliot, every single window blank on X) custom code with call
10108         to gdk_window_is_viewable() which a) prevents code duplicate and
10109         b) works. 
10110
10111 2000-07-31  Elliot Lee  <sopwith@redhat.com>
10112
10113         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
10114         to get the GDK_PARENT_ROOT() macro to work.
10115         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
10116         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
10117         of, windows that aren't shown.
10118         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
10119         pointer grab stuff.
10120
10121 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
10122
10123         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
10124           s/gtk_main_iteration/g_main_iteration/
10125
10126           Did this already in change:
10127                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
10128           don't know how it got reverted.
10129
10130 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
10131
10132         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
10133         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
10134
10135         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
10136         not gdk_pixbuf.
10137
10138 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
10139
10140         * configure.in,po/{sp,sr}.po: Added Serbian files
10141
10142 2000-07-30  Tor Lillqvist  <tml@iki.fi>
10143
10144         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
10145
10146         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
10147         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
10148         GIOChannel implementation.
10149
10150         * gdk/win32/gdkinput.c
10151         * gdk/win32/gdkpango-win32.c: Update license name here, too.
10152
10153         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
10154         definition to match prototype.
10155
10156         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
10157
10158 2000-07-27  Elliot Lee  <sopwith@redhat.com>
10159
10160         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
10161         function, to allow handling image formats that cannot be detected
10162         by looking at content alone.
10163
10164 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
10165
10166         * docs/tutorial/*.gif *.jpg *.eps
10167           Update these to the same look-n-feel.
10168           Why does including images in DocBook suck so badly?
10169
10170 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
10171
10172         * gtk/gtktable.c: applied patch from Phil Thompson
10173         <phil@river-bank.demon.co.uk> that enables space settings for
10174         the last row/columns as well.
10175
10176 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
10177
10178         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
10179         updates the license headers to the GNU Lesser General Public License,
10180         as well as updating the copyright year to 2000.
10181
10182 2000-07-26  Robert Brady  <rwb197@zepler.org>
10183
10184         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
10185           and po/Makefile, was installing and looking for them under gtk20
10186           and gtk2 respectively.
10187
10188 2000-07-25  Havoc Pennington  <hp@redhat.com>
10189
10190         * gtk/testtext.c: Comment out some stuff that depends on the rest
10191         of my patches.
10192
10193 2000-07-25  Havoc Pennington  <hp@redhat.com>
10194
10195         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
10196         buffer
10197
10198 2000-07-25  Havoc Pennington  <hp@redhat.com>
10199
10200         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
10201         widget changes.
10202
10203         * gtk/gtktextview.h: To be consistent with usage of "line"
10204         throughout the API to mean "newline-terminated thingy", change
10205         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
10206         to MOVEMENT_LINE.
10207
10208         (GtkTextView): Add flags for default editability, and whether to
10209         show the cursor. Add functions to get/set that. Add 
10210
10211         (gtk_text_view_get_iter_location): new function
10212
10213         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
10214         gtktextlayout.h
10215         (g_convert): Add g_convert temporarily, will go in glib in a bit
10216         
10217         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
10218         GtkTextTagTableForeach instead of brokenly using GHFunc.
10219         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
10220
10221         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
10222         moved to public header.
10223
10224         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
10225         "invisible", since "elide" was a bad name.
10226         (gtk_text_tag_get_priority): Added
10227
10228         (GtkTextStyleValues): put this in public header, along with
10229         functions to use it.
10230
10231         * gtk/gtktextmarkprivate.h: Include more headers, since we no
10232         longer include gtktextbtree.h.
10233
10234         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
10235         gtk_text_mark_deleted
10236
10237         * gtk/gtktextlayout.h: Don't include the "really private" headers,
10238         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
10239         to make this possible. Now we only need to install
10240         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
10241         (However the Makefile.am isn't changed yet because of the
10242         logistics of merging gtk-hp-patches piecemeal)
10243
10244         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
10245         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
10246         gtk_text_iter_get_line is now used in the public API for a
10247         different purpose.
10248
10249         * gtk/gtktextiter.h: Clean up function names to be more
10250         consistent. Always call char offset "offset" and byte index
10251         "index". A "line" is always a line number. 
10252
10253         (gtk_text_iter_is_last): new function, more efficient than 
10254         the existing way to check
10255         (gtk_text_iter_is_first): new function, also more efficient
10256
10257         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
10258
10259         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
10260         gtk_text_iter_forward_char, etc.
10261
10262         (gtk_text_iter_forward_to_tag_toggle): Renamed from
10263         forward_find_tag_toggle, since this isn't a linear search
10264
10265         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
10266
10267         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
10268         New functions, search for a buffer substring.
10269
10270         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
10271         interactive and default editable (since we need to store that info
10272         until we receive the selection data).
10273
10274         Remove all the _at_char and at_line etc. versions of functions;
10275         only have iterator versions.
10276
10277         Add _interactive() versions of functions, that consider the
10278         editability of text. (FIXME add interactive flag to the 
10279         insert/delete signals per Darin's suggestion)
10280
10281         (gtk_text_buffer_get_tag_table): new function, demand-creates the
10282         tag table if necessary
10283
10284         Remove declaration of gtk_text_buffer_get_iter_from_string
10285
10286         (_gtk_text_buffer_get_btree): private/internal function, added.
10287         
10288
10289         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
10290         (gtk_text_line_is_last): new function
10291
10292 2000-07-25  Havoc Pennington  <hp@redhat.com>
10293
10294         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
10295         using GtkProgressBar. See Changes-2.0.txt for details.
10296
10297         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
10298         "pulse_step" which are the equivalent of
10299         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
10300         Implement new API.
10301         
10302         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
10303         (use_text_format) to mark whether text set on the progress bar is
10304         a format string. Deprecate entire GtkProgress interface.
10305
10306         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
10307         (gtk_progress_build_string): make this a no-op if use_text_format
10308         is FALSE
10309
10310         * docs/Changes-2.0.txt: Describe progress bar changes.
10311
10312 2000-07-25  Tor Lillqvist  <tml@iki.fi>
10313
10314         * Makefile.am: Include the build directory.
10315
10316         * configure.in: Generate build/Makefile, build/win32/Makefile,
10317         gdk/, gdk/win32/, and gtk/makefile.mingw.
10318
10319         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
10320         Add GETTEXT_PACKAGE.
10321         
10322         * gdk/gdk.def
10323         * gtk/gtk.def: Updates.
10324
10325         * gdk/gdkfont.h
10326         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
10327         need them any longer.
10328
10329         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
10330
10331         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
10332         PANGOWIN32_LIBS and gdk_pixbuf.
10333
10334         * gdk/win32: Compiles, but no doubt doesn't work at all.
10335
10336         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
10337
10338         * gdk/win32/gdkinput.c: New file, temporarily.
10339         
10340         * gdk/win32/gdkinput-win32.h: New file
10341
10342         * gdk/win32/gdkinputprivate.h: Remove.
10343
10344         * gdk/win32/gdkpango-win32.c: New file.
10345
10346         * gtk/makefile.mingw.in: New file
10347
10348         * gtk/makefile.cygwin: Removed
10349         
10350         * gtk/Makefile.am: Update accordingly.
10351
10352         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
10353         made externally visible.
10354
10355         * gtk/gtkmain.c: Use it.
10356         
10357         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
10358         is enough.
10359
10360         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
10361
10362 2000-07-24 Elliot Lee <sopwith@redhat.com>
10363         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
10364         individual backends already.
10365         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
10366         again. Yes, there really is a good reason for this, if you are using the gdkregion
10367         internals, and if you're not, why do you care?
10368         * gdk/gdkwindow.c: Fix inverted condition
10369         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
10370         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
10371         * gtk/gtkrange.c: Redraw trough when moving.
10372         * gtk/gtktypeutils.c: Fix warning by adding const cast.
10373         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
10374
10375 2000-07-23  Tor Lillqvist  <tml@iki.fi>
10376
10377         * configure.in: Check for mkstemp and sigsetjmp. Output
10378         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
10379
10380         More work on GDK for Win32. Still in an intermediate state.
10381
10382         * gdk/makefile.cygwin
10383         * gdk/win32/makefile.cygwin: Removed.
10384         
10385         * gdk/makefile.mingw.in
10386         * gdk/win32/makefile.mingw.in: New files.
10387
10388         * gdk/Makefile.am
10389         * gdk/win32/Makefile.am: Generate and distribute them.
10390
10391         * gdk/win32/gdkwindow-win32.h
10392         * gdk/win32/gdkdrawable-win32.h
10393         * gdk/win32/gdkpixmap-win32.h: New files.
10394
10395         * gdk/win32/gdkcolor-win32.c
10396         * gdk/win32/gdkcursor-win32.c
10397         * gdk/win32/gdkdrawable-win32.c
10398         * gdk/win32/gdkgc-win32.c
10399         * gdk/win32/gdkimage-win32.c
10400         * gdk/win32/gdkprivate-win32.h
10401         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
10402         Rename fields and variables called xcursor, xid, etc (these names
10403         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
10404
10405 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
10406
10407         * gtk/gtkentry.[ch]: Fix some problems with vertical
10408         alignment.
10409
10410         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
10411         char/byte confusion.
10412
10413 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
10414
10415         * gtk/gtktextview.c (changed_handler): Fix bug where
10416         redraw wasn't being done properly when height of
10417         dirty region changed.
10418
10419         * demos/Makefile.am: Remove various references to
10420         -lgmodule
10421
10422 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
10423
10424         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
10425         PangoAttrShape to reserve space for pixmaps, add 
10426         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
10427         in the display functions.
10428         
10429         * gtk/testgtk.c (create_layout): Set some more exotic
10430         scrolled window options
10431
10432         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
10433         Add function to set the shadow type of a window, to allow
10434         putting a shadow around widgets such as GtkLayout or GnomeCanvas
10435         which don't draw their own frame.
10436
10437 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
10438
10439         * docs/tutorial/package-db-tutorial.sh: New file for
10440           packaging DocBook format tutorial
10441
10442 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
10443
10444         * docs/tutorial/gtk-tut.sgml: Minor updates
10445
10446         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
10447
10448 2000-07-19  Tor Lillqvist  <tml@iki.fi>
10449
10450         * gtk/gtksignal.c: Fix C++ comment.
10451
10452         * gtk/gtkimmulticontext.c
10453         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
10454         don't return value from void functions.
10455
10456         * gtk/gtk.def: Add gtk_rc_style_unref.
10457
10458 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10459
10460         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
10461         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
10462         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
10463         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
10464         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
10465         gtk/gtktypeutils.h: Include files outside of the extern "C"
10466         block. Makes some C++ compiler happy. Reported by Denis Vakatov
10467         <vakatov@peony.nlm.nih.gov>.
10468
10469 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
10470
10471         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
10472           Completes first pass. Hurrah!
10473
10474 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
10475
10476         * docs/tutorial/gtk-tut.sgml: More clean ups.
10477
10478 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
10479
10480         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
10481         paint the background of the text area which was accidentally
10482         removed at some point.
10483
10484         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
10485           
10486          - Move most of the functionality from the theme vtable
10487            into GtkRcStyleClass and GtkStyleClass. The moved
10488            vtable functions were changed a bit in the move to
10489            work better in their new home.
10490
10491          - Get rid of the engine and engine_data fields from
10492            GtkRcStyle and GtkStyle; instead the theme
10493            engine derives theme-specific subclasses of GtkRcStyle
10494            and GtkStyle
10495
10496          - Add extra dlsym() found entry point to themes,
10497            theme_create_rc_style().
10498
10499         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
10500         in gtk_style_real_copy.
10501
10502         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
10503         to register a type associated with an engine. (The engine
10504         won't be unloaded as there is an instance of the type.)
10505
10506
10507 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
10508
10509         * docs/tutorial/gtk-tut.sgml: Clean ups.
10510
10511 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
10512
10513         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
10514           of cleaning up to do.
10515
10516 2000-07-15  Tor Lillqvist  <tml@iki.fi>
10517
10518         * gdk/testgdk.c: New file, quick hack to test backends for
10519         pixel-by-pixel correctness of the most simple graphic operations.
10520
10521 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
10522
10523         * Really release 1.3.1
10524         
10525         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
10526         include structure.
10527
10528 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
10529
10530         * Released 1.3.1
10531
10532 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
10533
10534         * gtk/gtktextlayout.c: use FALSE for size_only most
10535         of the time when calling gtk_text_layout_get_line_display()
10536         to avoid causing double reshapes when a redraw follows
10537         immediately after.
10538
10539 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
10540
10541         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
10542         appropriate region and gdk_window_process_updates() so trough
10543         updating doesn't lag behind the window being scrolled.
10544
10545         * gdk/gdkgc.c: Make parent_class pointer static.
10546          
10547 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
10548
10549         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
10550         include <string.h>.
10551          
10552         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
10553         cut-and-paste error in computing memory offset for 4 channels.
10554
10555 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
10556
10557         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
10558         gtk_rc_append_default_pixmap_path(), since it wasn't
10559         adding an interesting path and we don't have a meaningful
10560         default for this value.
10561
10562 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
10563
10564         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
10565         gtk-config to gtk-config-2.0 move gtk_.m4 to
10566         gtk-2.0.m4
10567
10568         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
10569         gdk/Makefile.am demos/Makefile.am: Change 
10570         library names to libgtk-1.3.la, etc, so that we
10571         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
10572
10573         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
10574         gdk/Makefile.am gdk/x11/Makfile.am
10575         Move include files into /usr/include/gtk-2.0, 
10576         /usr/lib/gtk-2.0/include/
10577          
10578         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
10579         gtk/gtkintl.h: Change package for gettext from 
10580         gtk+ to gtk20. Put hack in autogen.sh to modify
10581         po/Makefile.in.in after gettextize to make this
10582         possible.
10583
10584         * gtk+.spec: Some updates, not tested.
10585
10586         * gdk-pixbuf/Makefile.am: Move loaders into
10587         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
10588
10589         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
10590         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
10591         to THEMENAME/gtk-2.0/. Move engine directory  to
10592         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
10593         
10594 2000-07-12  Tor Lillqvist  <tml@iki.fi>
10595
10596         Win32 changes, still doesn't build though.
10597
10598         * gdk/makefile.cygwin
10599         * gdk/win32/makefile.cygwin
10600         * gtk/makefile.cygwin: Updates.
10601
10602         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
10603         default values for fg and bg pixel as X11 does (0 and 1), not
10604         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
10605         Use 0 for pen width by default (treated as 1 anyway later, but for
10606         apps that might check the value in the GdkGC).
10607         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
10608         interface to gdk_gc_predraw and _postdraw.
10609
10610         * gdk/win32/gdkwin32.h
10611         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
10612
10613         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
10614         extraneous semicolon.
10615
10616         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
10617
10618         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
10619         not the Win32 bitspixel value.
10620
10621         * gdk/win32/gdkcc-win32.c:
10622         * gdk/win32/gdkcolor-win32.c 
10623         * gdk/win32/gdkprivate-win32.h
10624         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
10625         GDK object structure.
10626
10627 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
10628
10629         * docs/tutorial/gtk_tut_12.es.sgml (name): 
10630         * docs/tutorial/gtk_tut_it.sgml (name): 
10631         * docs/tutorial/gtk_tut_fr.sgml (name): 
10632         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
10633         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
10634
10635 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
10636
10637         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
10638           small changes.
10639
10640 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
10641
10642         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
10643         a bug here, never been here and never fixed anything ;(
10644         (don't segfault if tree->root_tree is NULL, which happens prior
10645         to widget realization, but puke instead).
10646
10647 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
10648
10649         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
10650         add the necessary tokens.
10651
10652         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
10653         (gtk_rc_style_to_style): copy thicknesses.
10654         (gtk_rc_init_style): apply thicknesses.
10655         (gtk_rc_parse_style): parse xthickness and ythickness.
10656
10657         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
10658
10659         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
10660         (gdk_window_new): 
10661         (_gdk_windowing_window_init): 
10662         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
10663         (gdk_pixmap_create_from_data): 
10664         (gdk_bitmap_create_from_data): 
10665         (gdk_pixmap_new): 
10666         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
10667         (gdk_image_new): 
10668         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
10669         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
10670         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
10671         (gdk_colormap_get_system): 
10672         (gdk_colormap_new): 
10673         * gdk/gdkwindow.c (gdk_window_init): 
10674         * gtk/gtkstyle.c (gtk_style_new):
10675         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
10676         * gdk/gdkpixmap.c (gdk_pixmap_init): 
10677         * gtk/gtkrc.c (gtk_rc_style_new):
10678         use g_object_new() instead of g_type_create_instance() which
10679         is a private function for fundamental type implementations.
10680
10681 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
10682
10683         * configure.in: Add check for db2html
10684
10685 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
10686
10687         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
10688         hack to set glib_debug_objects based on gtk_debug_flags.
10689
10690 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
10691
10692         * INSTALL.in: Update the Prerequisites section.
10693
10694         * Makefile.am demos/Makefile.am docs/Makefile.am
10695         docs/tutorial/Makefile.am gdk/x11/Makefile.am
10696         gdk/linux-fb/Makefile.am: Dist fixes
10697
10698 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
10699
10700         * NEWS: 10,000 foot view of 1.3.1 changes.
10701
10702 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
10703
10704         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
10705         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
10706         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
10707         gdk/x11/gdkmain-x11.c: 
10708
10709         Patch from George Lebl to add a GdkGrabStatus enumeration to use
10710         as a return value of gdk_*_grab(). Previously, we just
10711         returned the X11 values directly.
10712
10713 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
10714
10715         * gdk/x11/Makefile.am: Patch from George Lebl to 
10716         install all the headers in the right place.
10717
10718 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
10719
10720         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
10721           initial conversion to DocBook.
10722
10723 2000-07-04  Tor Lillqvist  <tml@iki.fi>
10724
10725         * README.win32: Improve a bit.
10726
10727         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
10728         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
10729         Alt+0nnn on the numpad (used to enter characters by numeric code
10730         from current DOS or ANSI codepage) working correctly, as in other
10731         Windows apps.
10732
10733         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
10734         same argument validity tests as in X11 version.
10735         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
10736
10737         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
10738         definitions in case missing from headers.
10739
10740         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
10741         destroy the window-specific cursor.
10742         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
10743         calling GetModuleHandle(NULL).
10744         (gdk_window_set_cursor): Reworked to always copy the passed cursor
10745         with CopyCursor before setting it as the window-specific
10746         cursor. It is OK for the caller to destroy the GdkCursor (and thus
10747         also its Windows cursor) after calling this function. Destroy any
10748         previous window-specific cursor.
10749
10750 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
10751
10752         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
10753         font charset is iso8859-1, not iso-8859-1.
10754
10755 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
10756
10757         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
10758         Use g_get_charset() instead of g_get_codeset().
10759
10760         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
10761         Comment out some strdup'ing functions to keep timj
10762         happy until we finish fighting this out.
10763
10764 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
10765
10766         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
10767         <= width or height.
10768
10769         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
10770         from 1.2 for parent/child states.
10771
10772         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
10773         of typos.
10774
10775         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
10776         event structures, replace with a generic axes field. Replace 
10777         deviceid/sourec with GdkDevice *device.
10778
10779         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
10780         to extract particular axis use value from event. (Also
10781         can be used for normal X/Y.)
10782
10783         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
10784         allow for arbitrary number of axes, namespace everything
10785         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
10786         everywhere.
10787
10788         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
10789         Get rid of the gdk_input_vtable setup if favor of simply
10790         defining the functions in gdkinput-none/gxi/xfree.c in
10791         a similar fashion to the way that the port structure is 
10792         done.
10793
10794         * gtk/gtkdnd.c: Fix fields of synthesized button press event
10795         for new event structures. 
10796
10797         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
10798         new device interfaces.
10799
10800 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
10801
10802         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
10803         set the initial text.
10804
10805         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
10806         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
10807         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
10808         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
10809
10810         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
10811         pango_layout_set_font_description to simplify.
10812
10813 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
10814
10815         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
10816         pango_layout_set_font_description to simplify.
10817
10818 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
10819
10820         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
10821         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
10822         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
10823
10824         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
10825         PANGO_PIXELS() macro.
10826
10827 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
10828
10829         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
10830         that returns a PangoContext owned by the widget and updated to
10831         match future changes in the widget. Also, make 
10832         gtk_widget_create_pango_layout() use this context. If we ever
10833         add a ::changed signal to PangoContext, this will make things
10834         much more convenient. 
10835
10836         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
10837         in the appropriate places instead of destroying the layouts and
10838         creating new ones.
10839
10840         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
10841         in a few strategic places.
10842
10843 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
10844
10845         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
10846         gtk_widget_size_request() on reparented child, if one. Otherwise,
10847         queue_resize() on the child never results in it getting size-requested
10848         at all.
10849
10850         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
10851         in option menus, so that (with luck) people won't copy it into
10852         their apps in the future.
10853
10854         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
10855         to gtk_option_menu_calc_size. This isn't perfect, but should fix
10856         a lot of problems with changing the size of the menu's menu
10857         items after adding it to the option menu.
10858
10859         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
10860
10861         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
10862         the text direction for a widget changes.
10863
10864         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
10865         ::direction_changed to get rid of various hacks.
10866
10867 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
10868
10869         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
10870         name.
10871
10872 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
10873
10874         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
10875         flag to the structure. Do not call XFreePixmap on pixmaps created
10876         by gdk_pixmap_foreign_new().
10877
10878 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
10879
10880         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
10881         value using GdkRGB functionality given GdkColormap and GdkColor.
10882         (name not final, waiting for inspiration.)
10883         
10884         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
10885         set the foreground/background of a GC using the GC's colormap
10886         and GdkRGB. (name not final, waiting for inspiration.)
10887
10888         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
10889         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
10890
10891         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
10892         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
10893         purely a function of the corresponding colormap. Make
10894         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
10895
10896         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
10897         gdk_pixbuf_*create_from_xpm_* in terms of
10898         gdk_pixbuf_new_from_xpm_data(), move into platform independent
10899         code.
10900
10901         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
10902         advantage of the new draw_rgb_32_image_dithalign.
10903
10904         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
10905
10906         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
10907         on each created GC.
10908
10909         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
10910
10911         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
10912         which we initialize from the drawable when the GC is created,
10913         if the drawable has a colormap.
10914
10915         * gdk/x11/gdkgc-x11.c: include string.h for memset.
10916
10917         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
10918
10919         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
10920
10921 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
10922
10923         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
10924         actually returning expose events, make sure to set
10925         the count field properly.
10926
10927         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
10928         accidentally reintroced bug which always cleared
10929         the graphics_exposures value. 
10930
10931 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
10932
10933         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
10934
10935 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
10936
10937         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
10938
10939 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
10940
10941         * docs/faq/gtk-faq.sgml: Start of Section 6.
10942
10943 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
10944
10945         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
10946         
10947         (Fixes problem with drawing childless frames. Pointed out
10948         by and a first patch from Anders)
10949         
10950         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
10951         compute a child_allocation, even if we don't have a child.
10952
10953         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
10954         Always chain to the parent's impl, even if we don't have a child.
10955
10956 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10957
10958         * gdk/gdkrgb.c: If possible, create only a single shm segment and
10959         use multiple parts of it instead of creating a bunch of separate
10960         segments, since the maximum number of segments per system is not
10961         large. (This might be worth backporting to GTK+-1.2.x if we make a
10962         new release )
10963
10964         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
10965         structure in preparation for per-colormap GdkRGB.
10966
10967         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
10968         to False when we get EINVAL from shmget so that the caller of
10969         gdk_image_new can retry with a smaller segment size.
10970
10971 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
10972
10973         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
10974
10975 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
10976
10977         * configure.in: make the current version number 1.3.1 (binary age 0,
10978         interface age 0).
10979         
10980         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
10981         gtkcompat.h is all we want.
10982
10983         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
10984         GLib primitive types. fixed g_type_register_fundamental() argument
10985         ordering.
10986
10987         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
10988         compiles.
10989
10990         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
10991         object code cleanup, comment trigraph fixes, etc...
10992
10993 2000-06-23  Havoc Pennington  <hp@redhat.com>
10994
10995         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
10996         instead of making up a bogus name for first_para_mark
10997
10998         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
10999         0 as a context ID
11000
11001 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
11002
11003         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
11004
11005 2000-06-21  Havoc Pennington  <hp@pobox.com>
11006
11007         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
11008         we didn't check window->bg_pixmap != GDK_NO_BG.
11009
11010         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
11011         gdk-pixbuf
11012
11013 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
11014
11015         * docs/faq/gtk-faq.sgm: Move file to here.
11016           TODO: Update Makfile.am 
11017
11018 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
11019
11020         * docs/gtk-faq.sgm: Add Section 2
11021
11022 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
11023
11024         * docs/gtk-faq.sgm: New file. Start of DocBook
11025           version of the FAQ.
11026
11027 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
11028
11029         * configure.in (GDK_PIXBUF_MAJOR): Define version
11030         numbers for GDK_PIXBUF_*, as they get substituted
11031         into a header file. Need to consider versioning
11032         for gdk-pixbuf more carefully later.
11033
11034 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
11035
11036         Work with srcdir != builddir.   
11037         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
11038         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
11039         * demos/testpixbuf.c: Likewise.
11040         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
11041         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
11042         <gdk/x11/gdkx.h>.
11043         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
11044         "gdk-pixbuf.h".
11045         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
11046
11047 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
11048
11049         * TODO.xml: Change 1.4 version numbers to 2.0.
11050
11051 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
11052
11053         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
11054         fixups to GTK+ standard.
11055
11056 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
11057
11058         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
11059         gdk-pixbuf.
11060
11061         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
11062         fixups for GObject.
11063
11064         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
11065         gdk-pixbuf with GDK dependencies moved into GDK.
11066         
11067         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
11068         move gdk-pixbuf-loader here until GObject has signals.
11069
11070         * demos/: New directory of demos. Move demos from
11071         gdk-pixbuf here.
11072
11073         * demos/pixbuf-init.c: Small bit of code to check for
11074         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
11075         set GDK_PIXBUF_MODULEDIR appropriately.
11076
11077         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
11078         define which no longer makes sense.
11079
11080 2000-06-21  Havoc Pennington  <hp@redhat.com>
11081
11082         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
11083         gtk_get_default_language
11084
11085         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
11086         new function to get the default language
11087
11088         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
11089         s/gtk_text_view_style_values/gtk_text_style_values/
11090
11091         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
11092         Add a "language" field to tags.
11093
11094         (gtk_text_tag_set_arg): Fix bug in setting
11095         "bg_full_height_set" tag.
11096
11097 2000-06-21  Havoc Pennington  <hp@redhat.com>
11098
11099         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
11100         in the interfaces
11101
11102         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
11103         stuff instead when possible.
11104
11105         * gtk/gtktexttypes.h: Delete some unused constants
11106
11107         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
11108         testtextbuffer.c: use glib instead of custom unicode routines
11109
11110 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
11111
11112         * docs/es/: Removed mistakenly added generated sgml
11113
11114         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
11115         Remove outdated info files.
11116
11117         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
11118         Moved tutorial files into subdir
11119
11120         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
11121         subdir.
11122
11123         * docs/man/gtk_button.pod: Remove. (contents will be
11124         integrated into gtk-reference button page.)
11125
11126         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
11127         docs/faq/Makefile.am: Adjust for new organization
11128
11129 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
11130
11131         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
11132         not $(MKINSTALLDIRS)
11133
11134 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
11135
11136         * gtk/testgtk.c (create_text): Finish the job Elliot started
11137         of removing font setting test for text widget. (Since text widget
11138         and GdkFont are not deprecated, and cause portability problems.)
11139
11140 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
11141
11142         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
11143         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
11144         Remove use of libunicode in favor of new GLib functions.
11145
11146         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
11147         nano-x, framebuffer. The X11 include is just a hack until we get
11148         the necessary functions in gdkcolor.h, so there is no reason to
11149         add other includes of platforms.
11150
11151         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
11152         window bigger than the screen change.
11153
11154         * gtk/testgtk.c: Revert some random changes from Elliot
11155         that had no particular point and were causing testgtkrc
11156         not to function correctly.
11157         
11158         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
11159         because GdkSegment and GdkRegionBox have the same fields,
11160         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
11161         results in clearer code.
11162
11163         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
11164         gdk_input_translate_coordinates): Fix missed GdkObjectification
11165
11166 2000-06-18  Elliot Lee  <sopwith@redhat.com>
11167
11168         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
11169         * gtk/gtk{plug,socket}.h: Missed commits from previous.
11170
11171 2000-06-20  Havoc Pennington  <hp@redhat.com>
11172
11173         * modules/linux-fb/Makefile.am: Make this compile
11174         without framebuffer enabled
11175
11176         * gdk/linux-fb/Makefile.am: Add conditional to not build
11177         framebuffer unless specified in configure
11178
11179         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
11180         the size of the target instead of source if -1 was passed for
11181         width/height
11182
11183         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
11184         width/height confusion.
11185
11186 2000-06-19  Havoc Pennington  <hp@redhat.com>
11187
11188         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
11189         GDK_DRAWABLE_XID. In the future, we probably want to make it
11190         faster with G_DISABLE_CHECKS turned on.
11191
11192 2000-06-14  Havoc Pennington  <hp@redhat.com>
11193
11194         * gdk/Makefile.am: add gdkpixmap.c
11195
11196         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
11197         s/gdk_image_init/_gdk_windowing_image_init
11198
11199         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
11200         ref/unref
11201
11202         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
11203
11204         * gdk/gdkcompat.h: remove GdkWindowType compat, since
11205         GdkWindowType is now non-deprecated; 
11206         change gdk_window_get_type() compat to be
11207         gdk_window_get_window_type().
11208
11209         * gdk/gdkdnd.h: make GdkDragContext a GObject.
11210
11211         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
11212         virtual GObject. Make all functions call into the vtable.
11213         Move gdk_image_put() guts in here. Remove GdkDrawableType
11214         and gdk_drawable_get_type(), these are now GdkWindow-specific.
11215         draw_image, get_depth, get_size, set_colormap, get_colormap,
11216         get_visual added to the vtable.
11217         
11218         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
11219         GObject. Virtualize everything. 
11220         (gdk_gc_new_with_values): remove check for destroyed window,
11221         because now GdkWindow::create_gc will check this.
11222         (gdk_gc_set_values): New function to set GC values, this 
11223         was already implemented but wasn't in the header
11224
11225         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
11226
11227         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
11228         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
11229         remove _gdk_window_class; add _gdk_window_impl_get_type() and
11230         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
11231         _gdk_windowing_window_init, rename gdk_image_init to
11232         _gdk_windowing_image_init.
11233         
11234         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
11235         (gdk_draw_layout): Remove check for destroyed window, 
11236         because all the drawable methods already check it.
11237         
11238         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
11239         Add gdkpixmap.c which contains implementation of GdkDrawable
11240         virtual table (by chaining to a platform-specific implementation
11241         object).
11242         
11243         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
11244         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
11245         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
11246         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
11247         GdkColormapPrivate. 
11248
11249         * gdk/gdktypes.h: #include <glib-object.h>
11250
11251         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
11252         Move most functionality to platform-specific implementation
11253         object. GdkWindow itself now handles the backing store, then
11254         chains to the platform-specific implementation.
11255         (gdk_window_get_window_type): return GdkWindowType of the window.
11256         (gdk_window_peek_children): New routine, returns the children of 
11257         a GdkWindow
11258         (gdk_window_get_children): Was in X11-specific code and did 
11259         XQueryTree. Changed to simply return a copy of window->children; 
11260         so it can go in cross-platform code.
11261         
11262         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
11263
11264         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
11265         GdkColormap; just changed to use the new private data instead
11266         of casting to GdkColormapPrivate.
11267
11268         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
11269         gdk_cursor_new().
11270
11271         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
11272         (private data member in the GObject). 
11273         (xdnd_manager_source_filter): Function had broken 
11274         error handling, fix it (use gdk_error_trap_push).
11275
11276         * gdk/x11/gdkdrawable-x11.c: This file now implements
11277         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
11278         base class is purely for the convenience of the X port,
11279         and not part of the interface to cross-platform GDK.
11280
11281         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
11282         
11283         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
11284         specific to X, and returned by the create_gc virtual method
11285         of GdkDrawableImplX11. 
11286         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
11287         rather than gchar, this was also changed in the GdkGC vtable.
11288         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
11289         mask is 0, return immediately, instead of checking every flag.
11290         This is faster, and keeps us from segfaulting if values is NULL
11291         and the mask contains some nonzero flags.
11292
11293         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
11294         GdkWindow.
11295
11296         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
11297         GdkWindowPrivate is gone.
11298
11299         * gdk/x11/gdkim-x11.c: rename things that got renamed.
11300
11301         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
11302         remove the image_put stuff that got transferred to GdkDrawable.
11303         
11304         * gdk/x11/gdkinput.c: renamings
11305
11306         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
11307
11308         * gdk/x11/gdkpixmap-x11.c: GObject conversion
11309
11310         * gdk/x11/gdkprivate-x11.h: indentation fixes
11311
11312         * gdk/x11/gdkproperty-x11.c: renamings
11313
11314         * gdk/x11/gdkselection-x11.c: renamings
11315
11316         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
11317         implements the platform-specific "impl" object.
11318         Moved gdk_window_get_children to gdk/gdkwindow.c
11319
11320         * gdk/x11/gdkx.h: Remove all the private structs and private datas
11321         that no longer exist. Add declaration of GdkGCX11 object here.
11322         Fix all the macros to still work. 
11323
11324         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
11325         GdkDragContext from the boxed types since they are now GObjects.
11326
11327         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
11328         moved xthickness/ythickness into the instance. GtkStyleClass
11329         functions are now in the standard vtable for GtkStyle, so you have
11330         to create a GObject subclass to write a theme engine.
11331         (gtk_style_copy): fixed a leaked PangoFontDescription
11332         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
11333         can be the standard GObject function.
11334         
11335         * Throughout GTK:
11336         s/style->klass->[xy]thickness/style->[xy]thickness
11337         s/pango_layout_unref/g_object_unref/
11338
11339         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
11340         
11341         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
11342         accessing GDK internals.
11343
11344         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
11345         accessing GDK internals.
11346
11347 2000-06-18  Elliot Lee  <sopwith@redhat.com>
11348
11349         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
11350
11351         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
11352         problem by calculating event position relative to the trough
11353         rather than the slider.
11354         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
11355
11356         * gdk/gdkgc.h: Add GDK_NOR.
11357
11358         * configure.in, Makefile.am: Add modules top level dir
11359         * configure.in: Only use pangox library if building x11 target.
11360         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
11361
11362 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
11363
11364         * gtk/gtkcolorsel.c: Change private class member to be named
11365         private_data throughout the file.
11366
11367         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
11368         private_data to avoid clashing with keyword.
11369
11370 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
11371
11372         * gdk/gdkdnd.h: Add comment to remove warning.
11373
11374 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
11375
11376         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
11377         Byelorussian language; changed the Makefile and file names 
11378         to reflect that.
11379
11380 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
11381
11382         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
11383         rather than gdk_window_hide; this makes things work
11384         correctly if the window is programmatically hidden while
11385         iconified.
11386
11387 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
11388
11389         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
11390         cut and paste typo where wrong pixmap was being
11391         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
11392
11393 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
11394
11395         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
11396         Add helper function to compute format / bytes 
11397         relationship. Use in a couple places to fix up
11398         errors which assume 8 * format.
11399
11400         * gtk/gtkselection.c (gtk_selection_request): Use 32
11401         rather than 8 * sizeof (GdkAtom), to work correctly
11402         on Alpha.
11403
11404 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
11405
11406         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
11407         libgtk.la
11408         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
11409         versions
11410
11411         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
11412         checking macros return NULL since the function has a return value.
11413
11414 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
11415
11416         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
11417         GTK+ from building at all.
11418
11419         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
11420
11421 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
11422
11423         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
11424         gtk/Makefile.am: make it possible to configure gtk for different
11425         targets on the same platform. The library name is now 
11426         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
11427         flag. Only the x11 target compiles right now.
11428         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
11429         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
11430         * gdk/nanox/gdk*generic*: delete generic region code.
11431         * gdk/linux-fb/gdk*generic*: delete generic region code.
11432         * README.nanox: update information.
11433         
11434 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
11435
11436         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
11437         prepend not append. (Pointed out by Brett Hall.)
11438
11439 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
11440
11441         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
11442
11443 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
11444
11445         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
11446         need this later, and this makes sure that the atexit for
11447         glib gets called after that for GDK, so atexits are
11448         properly ordered for object leak checking.
11449
11450         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
11451
11452         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
11453         pango_x_shutdown_display()
11454
11455         * gtk/simple.c (main): Close window on destroy.
11456
11457 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
11458
11459         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
11460         to treat initial creation different from setting with 
11461         regards to the graphics-exposures parameter, so add a parameter
11462         indicating whether this is initial or not.
11463
11464 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
11465
11466         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
11467         to sort of work by adding an extra return_exposes arg
11468         to gdk_event_translate() - it might be better to simply
11469         deprecate the function altogether and force people to rewrite
11470         without it. gdk_window_scroll() handles most of it, and where
11471         gdk_window_scroll() doesn't work, simply redrawing more does.
11472
11473         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
11474         assertion.
11475
11476         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
11477
11478         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
11479         bunch of pretty much useless /* Print debugging info */ comments 
11480         which had drifted away from the code they were commenting.
11481
11482 2000-06-02  Havoc Pennington  <hp@pobox.com>
11483
11484         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
11485         is in working order.
11486         
11487         * gtk/testtext.c: Change to reflect anonymous mark API
11488
11489         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
11490
11491         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
11492         field, which was unused.
11493
11494         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
11495         saves some typing.
11496
11497         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
11498
11499         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
11500         flag on the insertion point and selection bound
11501
11502         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
11503         make mark-manipulation functions take a GtkTextMark* instead of a
11504         mark name.
11505         
11506         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
11507         GtkTextMarkBody; will be used to detect attempts to delete
11508         the permanent marks (insert and selection bound)
11509
11510         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
11511
11512 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
11513
11514         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
11515         flag to on.
11516
11517         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
11518         Honor DOUBLE_BUFFRED_FLAG
11519
11520         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
11521         function to set the DOUBLE_BUFFERED flag.
11522
11523         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
11524         or not exposes done on the widget should be double-buffered.
11525
11526         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
11527         to be what would be expected. (Fixes problem with a
11528         g_return_if_fail() validating a TextDirection enumeration)
11529
11530 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
11531
11532         * gtk/gtkwidget.c: Remove all references to 
11533         offscreen flag which was no longer used.
11534
11535         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
11536
11537         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
11538         for non-null label_widget->parent.
11539
11540         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
11541         which no longer was used.
11542
11543         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
11544
11545         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
11546         for null arguments.
11547
11548         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
11549         check for destroyed windows.
11550
11551 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
11552
11553         * gtk/gtkimmulticontext.c: Add a finalize method and unref
11554         the slave context there.
11555
11556         * gtk/gtkinvisible.[ch]: Make reference counting behavior
11557         identical to GtkWindow.
11558
11559 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
11560
11561         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
11562         pangox to here, so we can write them independent of rendering
11563         system, using GDK primitives.
11564
11565         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
11566         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
11567         since we have a rendering-system independent implementation in
11568         terms of draw_glyphs().
11569         
11570         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
11571         function to render a single line.
11572
11573         * gdk/x11/gdkpango.c: Move the guts of this file mostly
11574         into ../gdkpango.c, which simplifies things, since we
11575         don't have to deal with raw X gc's.
11576
11577 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
11578
11579         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
11580         get the logical attributes for a given GtkTextLine.
11581
11582 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
11583
11584         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
11585         g_locale_get_codeset() to g_get_codeset() change.
11586
11587 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
11588
11589         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
11590         descriptions.
11591
11592         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
11593         the entry.
11594
11595         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
11596         redoing (vastly simplifying) for Pango. Still needs quite
11597         a bit of work. (Size selection is currently poor. List of 
11598         predefined sizes is not a good idea, since all of these
11599         sizes won't necessarily be distinct.)
11600
11601 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
11602
11603         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
11604         CODESET results for LANG=C.
11605
11606 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
11607
11608         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
11609         which takes a stringized pango font description;
11610         ignore the older 'font' and 'fontset' declarations.
11611
11612         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
11613         field with a GdkFont derived via gdk_font_from_description(),
11614         for compatibility. (Should we just remove it entirely?
11615         Probably too much compatibility breakage, but people
11616         should be migrating to the new Pango stuff as quickly
11617         as possible.)
11618
11619 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
11620
11621         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
11622
11623 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
11624
11625         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
11626         redoing; there are some bugs in size allocation right
11627         now, the semi-existant distinction between header / day
11628         fonts was removed, but, with Pango, could actually
11629         be made functional in a nice way.
11630         
11631         * gtk/testcalender: Move calender from examples into this
11632         directory as a test program. (We really need to restrcture
11633         testgtk into a whole directory full of tests for every
11634         widget or functionality group, separated into multiple .c
11635         files.)
11636
11637 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
11638
11639         * gtk/testgtk.c (file_exists): Fix stupid typo that
11640         was keeping RC file from being loaded.
11641
11642         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
11643         RC file font code.
11644
11645 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
11646
11647         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
11648         Add function to load a GdkFont from a PangoFontDescription.
11649
11650 2000-05-29  Tor Lillqvist  <tml@iki.fi>
11651
11652         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
11653         variable should be of type GdkEventPrivate.
11654
11655 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
11656
11657         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
11658         to have any widget for the label, use a GtkLabel widget
11659         to display the text. (Based partially on a patch from
11660         Anders Carlson.)
11661
11662         (Quite a bit of code reorganization - strip 90% of the
11663         guts out of gtkaspectframe and add a single virtual
11664         func to GtkFrameClass - compute_child_allocation.)
11665
11666 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
11667
11668         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
11669         (Removed clist->row_center_offset field because caching
11670         it wasn't saving time or code, added private function
11671         _gtk_clist_create_cell_layout()).
11672
11673 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
11674
11675         * gtk/gtkaccellabel.c: Pangoized.
11676
11677         * gtk/[hv]ruler.c: Pangoized
11678
11679 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
11680
11681         * gtk/gtkfilesel.c (gtk_file_selection_init):
11682         Use gtk_clist_set_column_auto_resize() to remove need
11683         need for manual column width computations.
11684
11685 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
11686
11687         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
11688         ensuring Pango correctness, and considerably simplifying the
11689         code.
11690         
11691         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
11692
11693         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
11694         getting of numbers of lines.
11695
11696         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
11697         to the actual requested width of the lable, not to the wrap
11698         width we set.
11699
11700         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
11701
11702         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
11703           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
11704
11705         * gtk/gtktextview.c: Fix structure inheritance.
11706
11707         * gtk/gtkprogressbar.c: Pangoize.
11708
11709 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
11710
11711         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
11712         in a function.
11713
11714         * gtk/gtktextlayout.c (find_display_line_above): Fixed
11715         bug with computing line tops.
11716
11717         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
11718
11719 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11720
11721         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
11722         and y_offset coordinates to do what we need now. (The offset between
11723         buffer and layout coordinates has been reintroduced, but is a 
11724         bit different than before.)
11725
11726         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
11727         handle the adjustments ourselves, and scroll as necessary using
11728         the new gdk_window_scroll().
11729         
11730         The advantage of this is that when we are incrementally revalidating,
11731         we are essentially rearranging things around the visible portion
11732         of the screen. With the old setup, the visible portion of the
11733         screen was moved around in the layout, so scrolling and redrawing
11734         to track that caused jumping of the display. Since we now
11735         control the scrolling ourselves, we can suppress this and
11736         only redraw when things actually change.
11737
11738 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
11739
11740         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
11741         the region not just redisplay it after-all, since we store the
11742         cursors in the LineDisplay. (Ugly interactions here between
11743         GtkLayout and GtkTextBTree here.)
11744         
11745         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
11746
11747 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
11748
11749         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
11750         Added function to scroll contents of a window while keeping the
11751         window constant. Works by XCopyArea or guffaw-scrolling depending
11752         on the details of how the window is set up. (guffaw-scrolling
11753         still needs to be filled in.)
11754
11755 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
11756
11757         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
11758         move the debugging that was tied to a global variable
11759         to that.
11760
11761         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
11762
11763         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
11764         validated flag, in line data instead of setting height/width to
11765         -1. This allows us to perform operations with partially invalid
11766         buffer (using the old size for invalid lines) and thus to do
11767         incremental vaidation. Keep height/width aggregates up to date
11768         when deleting text and rebalancing the tree.
11769
11770         * gtk/gtktextbtree.[ch]: Add functions validate a line
11771         (gtk_text_btree_validate_line), and to validate up
11772         to a number of pixels (gtk_text_btree_validate).
11773
11774         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
11775         that indicates that something is changed and a revalidation
11776         pass is needed. Change ::need_repaint to ::changed, and
11777         make it take old and new yranges instead of a rectangle.
11778
11779         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
11780         the line_data_destroy() function from 
11781         gtk_text_btree_add_view() to a virtual function in 
11782         GtkTextLayout
11783
11784         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
11785         since we are handling partial repaints in a different fashion
11786         now.
11787
11788         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
11789         of the selection instead of queueing a repaint on the
11790         entire widget.
11791
11792         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
11793         get_selection_bounds() down to btree, make the function
11794         in buffer a wrapper around the btree function.
11795
11796         * gtk/gtktextlayout.[ch]: Add functions to check if the
11797         layout is valid and to recompute either a range of pixels
11798         aroudn a line or a certain total number of pixels.
11799
11800         * gtk/gtktextlayout.[ch]: Cache a single line display;
11801         now that we only redraw the needed portions, the hit rate
11802         for this cache is quite high.
11803         
11804         * gtk/gtktextview.[ch]: Keep track of the first paragraph
11805         on the screen so that when re-laying-out the buffer, we can
11806         keep the same place. This requires connecting to ::value_changed
11807         on the adjustments
11808
11809         * gtk/gtktextview.[ch]: Add idle functions to revalidate
11810         the buffer after we receive an ::invalidated signal.
11811         
11812 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
11813
11814         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
11815         to max of allocation and layout size, not just to the
11816         layout size.
11817
11818         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
11819         Invalidate window so it gets redrawn properly.
11820
11821         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
11822         to mean the entire window.
11823
11824         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
11825         into public header.
11826
11827 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
11828
11829         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
11830         to get the name of a mark.
11831
11832         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
11833         to find the paragraph from a y position.
11834
11835 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
11836
11837         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
11838         nodes have width/height >= 0, not > 0.
11839
11840 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
11841
11842         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
11843         Add a size_only flag, so when we only need the size, we don't create
11844         useless appearance attributes.
11845
11846         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
11847         duplicate setting of font description.
11848
11849         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
11850
11851 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11852
11853         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11854         EXTRA_DIST. It does not work well when the file that
11855         everything depends on is not in the tarball.
11856
11857 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11858
11859         * gtk/testgtk.c: Some hacks and fixes so that it basically
11860         works when not sitting in the GTK+ build tree.
11861
11862 2000-05-03  Havoc Pennington  <hp@redhat.com>
11863
11864         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
11865         Properly determine the ordering of the tag root and the current
11866         line within the tree. Previous algorithm only worked if the tag
11867         root's immediate parent was the common root of both the current
11868         line and the tag root.
11869
11870 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
11871
11872         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
11873         alignment.
11874
11875         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
11876         the widget text directional dynamically.
11877
11878         * gtk/gtktextview.[ch]: Added functions to get and set default
11879         wrap mode.
11880
11881 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
11882
11883         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
11884         in cursor location computation.
11885
11886 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
11887
11888         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
11889         vadjusment values properly when layout gets smaller.
11890
11891         * gtk/gtktextview.c (need_repaint_handler): Areas being
11892         passed in are far completely inaccurate, and sometimes
11893         too small, so, for now, just queue a redraw on the
11894         whole visible region.
11895
11896 2000-04-25  Havoc Pennington  <hp@redhat.com>
11897
11898         * gtk/gtktextbtree.c (summary_destroy): new function to 
11899         destroy tag summary nodes
11900         (gtk_text_line_next_could_contain_tag): this function was 
11901         totally broken if the line passed in wasn't below the tag
11902         root. Fix it.
11903         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
11904         "wildcard" case, we have to do a linear scan. Blah.
11905         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
11906         we have to do the linear scan
11907         (tag_removed_cb): When a tag is removed from the tag table, 
11908         remove the GtkTextTagInfo node from the btree.
11909         (gtk_text_btree_spew): Implement the spew function, for 
11910         our debugging pleasure.
11911
11912 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
11913
11914         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
11915         a problem with referring to the wrong buffer.
11916
11917         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
11918
11919         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
11920         font description to gtk_style_new() - otherwise things
11921         don't work without a .gtkrc file.
11922
11923         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
11924         tags table if we create it ourself, too.
11925
11926         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
11927         it was conflicting with XKB modifiers.
11928
11929         * gtk/gtktextview.[ch]: Add simple support for 
11930         GtkIMContext.
11931
11932 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
11933
11934         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
11935         with deletion from last commit.
11936
11937 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
11938
11939         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
11940         in the context from the current locale.
11941         
11942         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
11943         context, not hardcoded value.
11944
11945         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
11946         not logical.
11947
11948 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11949
11950         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
11951         attributes - that doesn't handle partial-glyph selection
11952         properly. Instead use new pango_layout_line_get_x_ranges()
11953         functionality to draw the selection.
11954
11955         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
11956         now properly handles out-of-range coordinates.
11957
11958         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
11959
11960         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
11961         public.
11962
11963         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
11964         for paragraphs opposite to the base direction of the widget.
11965
11966         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
11967
11968         * gtk/gtktextlayout.c: Don't split segments on marks, since that
11969         causes Arabic words to reshape as you cursor through.
11970
11971         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
11972         cursor position when moving vertically with the arrow keys and
11973         scrolling with page-up/page-down. (Arrow keys save only the X,
11974         scrolling saves both X and Y.)
11975
11976         This means you can line-up / line-down or page-up / page-down
11977         without losing your place, and also that moving vertically
11978         with the cursor keys keeps the same X position, not the same
11979         character count:
11980
11981         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
11982         arrow keys move by display lines, not paragraphs.
11983
11984 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11985
11986         * gtk/gtklayout.c: Make sure that the bin window is at least
11987         as big as the allocation. (Should we also make sure that the
11988         bin window is big enough to completely cover widget->window?)
11989
11990         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
11991         function to get the onscreen rectangle.
11992
11993         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
11994         for offsets in window coordinates.
11995
11996 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
11997
11998         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
11999         confusion.
12000
12001         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
12002         from the widget direction.
12003
12004         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
12005         Add a "direction" attribute.
12006
12007         * gtk/gtktextview.c: global s/tkxt/text_view/.
12008
12009         * gtk/testtext.c: Added long block of text in Arabic, to test out
12010         the direction attributes. (Some problems with the shaping system
12011         for arabic become obvious - like the fact the cursor splits words
12012         into unjoined pieces.)
12013
12014 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
12015
12016         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
12017
12018         * gtk/gtktextlayout.c: Fix up alignment.
12019
12020         * gtk/testtext.c: Add some tests for centering, wrapping.
12021
12022 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
12023
12024         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12025         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
12026         If we wrote GTK+-specific layout-render function this could just replace
12027         the draw_layout() operation in the vtable.
12028
12029         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
12030         pango_layout_get_cursor_pos() and use that function.
12031
12032         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
12033         is a non-static symbol.
12034
12035         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
12036         with gtk_text_btree_find_line_by_y()
12037
12038         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
12039         renderer that handles GtkTextAppearance attributes.
12040
12041         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
12042
12043           - Move the values in the style that don't affect geometry into a
12044             GtkTextAppearance structure.
12045           - Change underline to take a PangoUnderline and "font" a string
12046             representation of a font description
12047           - Add a "font_desc" attribute which takes a FontDescription structure.
12048
12049         * gtk/gtktextlayout.[ch]:
12050
12051           - Get rid of the display-line list per each line. Instead, we
12052             generate, on demand, a GtkTextLineDisplay structure which]
12053             contains a PangoLayout * and other necesary information
12054             (offsets, cursor locations) for displaying a paragraph.
12055           - Get rid of the code to wrap lines, create display chunks,
12056             etc. Instead, we just go through a paragraph and convert
12057             it into the necessary inputs to a PangoLayout.
12058           - Implement a new attribute type, GtkTextAttrAppearance. This
12059             holds a GtkTextAppearance, and is used to pass colors, 
12060             stipple, etc, through from the layout to the display without
12061             having to use lots and lots of individual attributes.
12062           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
12063             in terms of PangoLayout functions.
12064         
12065         * gtk/gtktextview.c: 
12066          
12067           - Handle passing the necessary PangoContext to the layout
12068           - Some fixups in painting to deal with the automatic backing store
12069             and offsetting of GTK+-1.4
12070           - Add a style_set handler so that the default style reacts
12071             properly to theme changes.
12072         
12073         * gtk/gtktext?*.[ch]: Random code-style fixes.
12074
12075         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
12076
12077 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
12078
12079         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
12080         in original form preparatory to Pango-ization and gdkimcontext-ization.
12081
12082 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
12083
12084         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
12085         so that we can derive from gtkimcontext in language bindings properly.
12086
12087 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
12088
12089         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
12090         Add a compose table including (almost) all the compose combinations
12091         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
12092         data in the XIM implementation.
12093
12094         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
12095         Moved functions to convert keyvalues from and to unicode here from
12096         the win32 port and made them public.
12097
12098 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12099
12100         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
12101
12102 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
12103
12104         * gtk/gtkimcontext.[ch]: Base class for new input context system
12105
12106         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
12107         the real input context implementation to be loaded from modules
12108         and switched on the fly.
12109
12110         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
12111         context that just does direct keysymbol => unicode translation.
12112
12113         * gtk/gtkentry.[ch]: Start switching editing over to using
12114         GtkInputContext. (No handling of preedit yet.)
12115
12116 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
12117
12118         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
12119         many substitutions. (klass should not be subsituted.)
12120
12121 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
12122
12123         * configure.in: Add checks for Pango
12124
12125         * configure.in docs/Makefile.am: Add test for sgml2html
12126         and allow 'make dist' without building html, but print out
12127         warnings in that case. (For making snapshots)
12128
12129         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
12130         Add Pango libraries and C flags
12131
12132         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12133         Add function (gdk_draw_layout) to draw a pango layout.
12134
12135         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
12136         for getting Pango contexts for GDK.
12137
12138         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
12139
12140         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
12141         editing.
12142
12143         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
12144         keysym => unicode translations. More languages can be added
12145         here, but real input-method support is needed.
12146
12147         * docs/Changes-1.4.txt: Added note about entry behavior.
12148         
12149         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
12150         to set the reading direction for a widget and the global direction.
12151         Add test which allows toggling the global direction. Two private
12152         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
12153
12154         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
12155           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
12156
12157         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
12158
12159         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
12160         underlining now handled by Pango.
12161
12162         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
12163         to RCStyle and Style. (Having both this and the old font name and GdkFont 
12164         is temporary.)
12165
12166         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
12167         convenience functions for creating contexts and layouts for widgets.
12168
12169         * gtk/testgtk.c: Enhance label tests with multilingual labels.
12170
12171 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
12172
12173         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
12174         titles to be active, even if they aren't visible.
12175         (gtk_clist_column_titles_passive):  Ditto.
12176
12177 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
12178
12179         * gtkmenu.c:
12180         * gtkmenu.h:
12181         * gtktypeutils.h: Spelling/grammar fixes in comments.
12182
12183 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
12184
12185         * gdk/nanox/*.h: add missing header files.
12186
12187 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
12188
12189         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
12190         send_event to TRUE.
12191         (gtk_drawing_area_size): queue a resize.
12192
12193 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
12194
12195         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
12196         the handlers, also invalidate them. bug nailed down by Karl Nelson
12197         <kenelson@ece.ucdavis.edu>.
12198
12199 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
12200
12201         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
12202         "(nil)" foundries, patch from Grigorios Magklis.
12203
12204         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
12205         on non-available fonts, based on a patch by Grigorios Magklis
12206         <maglis@cs.rochester.edu>.
12207
12208 2000-05-18  Elliot Lee  <sopwith@redhat.com>
12209
12210         * gdk/x11/gdkregion-generic.c: If a region does not have any
12211         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
12212         instead of GDK_OVERLAP_RECTANGLE_IN.
12213
12214 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
12215
12216         * gtk/gtklayout.c (gtk_layout_map): Remove references to
12217         OFFSCREEN, as it is no longer necessary.
12218
12219 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
12220
12221         * gtk/gtkcolorsel.c: Patch from David Santiago
12222         <mrcooger@cyberverse.com> to change things so that the 
12223         indicator of the active palette entry is done independently,
12224         not via the focus, since it should always be visible.
12225
12226 2000-05-17  Tor Lillqvist  <tml@iki.fi>
12227
12228         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
12229         refcount leaks as in the X11 backend.
12230
12231         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
12232         cosmetics.
12233
12234         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
12235         backend. Add _gdk_windowing_window_destroy().
12236
12237         * gtk/gtkcolorsel.c: Include correct backend-specific header.
12238         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
12239         either, but these probably do exist on nanox?)
12240         
12241         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
12242         which isn't necessarily defined by <math.h>.
12243
12244         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
12245         ancestry past GtkObject.
12246
12247         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
12248         from DLL on Win32.
12249
12250         * gtk/gtk.def: Update corresponding to recent changes.
12251
12252         * gtk/makefile.{cygwin,msc}: Updates.
12253
12254 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
12255
12256         * docs/Changes-1.4.txt: A bit of editing.
12257
12258         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
12259         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
12260         to clear the update area for the window, and clear it
12261         when hiding a window.
12262
12263         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
12264         if window destroyed.
12265
12266         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
12267
12268         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
12269         gdk_window_destroy() to the generic code, since there was a lot of 
12270         window-system-independent logic it in. Add a function:
12271         
12272          _gdk_window_destroy() 
12273
12274         to the internal API to destroy a window without unreferencing it.
12275         Add a function:
12276
12277          _gdk_windowing_window_destroy()
12278
12279         That does the windowing-system-dependent part of destroying 
12280         the window.
12281
12282 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
12283
12284         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
12285
12286 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
12287
12288         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
12289         Make gtk_widget_shape_combine_mask() keep a reference count on
12290         the pixmap since it keeps it around.
12291
12292 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
12293
12294         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
12295         leak.
12296
12297         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
12298         leak with event filters.
12299
12300 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
12301
12302         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
12303         signal handlers with the right data arguments. (Fixes
12304         some warnings when a widget was repeatedly set as a drag
12305         destination.)
12306
12307         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
12308         window so we can avoid avoid setting the DND properties on the
12309         toplevel window repeatedly.
12310
12311 2000-05-13  Tor Lillqvist  <tml@iki.fi>
12312
12313         * gdk/win32/gdkwin32.h: Define more message types missing from
12314         mingw headers.
12315
12316         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
12317         call gdk_window_destroy_notify(). It was never called. This
12318         probably meant that the GdkWindow was never freed. Thanks Owen for
12319         noticing (!).
12320
12321         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
12322         window as destroyed before calling DestroyWindow(). DestroyWindow()
12323         causes a call to the window procedure (gdk_WindowProc), which
12324         calls gdk_event_translate(), which calls
12325         gdk_window_destroy_notify(), which gets confused unless the window
12326         is set as destroyed.
12327
12328         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
12329         this function to indicate it's win32 only. Put inside #ifdef
12330         G_ENABLE_DEBUG.
12331
12332         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
12333         debugging function. (gdk_event_translate:) Add a default branch
12334         that uses the above function to print debug messages with all
12335         Windows messages symbolically.
12336
12337         * gdk/win32/gdkprivate-win32.h: Declare it, and
12338         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
12339
12340 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
12341
12342         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
12343         public header file.
12344
12345 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
12346
12347         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
12348
12349         * gtk/gtktext.c: made the adjustments no-construct args, simply
12350         provide default adjustments.
12351         (gtk_text_destroy): release adjustments.
12352
12353         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
12354         adjustment argument non-construct.
12355
12356         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
12357         instead of in finalize.
12358         (gtk_progress_get_text_from_value): 
12359         (gtk_progress_get_current_text): 
12360         (gtk_progress_set_value): 
12361         (gtk_progress_get_percentage_from_value): 
12362         (gtk_progress_get_current_percentage): 
12363         (gtk_progress_set_percentage): 
12364         (gtk_progress_configure): ensure an adjustment is present.
12365
12366 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
12367
12368         * gtk/gtkcolorsel.[hc]:
12369         * gtk/gtkcolorseldialog.[hc]:
12370         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
12371         their parent implementation, use bit fields for boolean values, don't
12372         create unused widgets, usage of glib types, braces go on their own
12373         lines, function argument alignment, #include directives etc. etc. etc..
12374
12375         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
12376
12377 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
12378
12379         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
12380
12381         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
12382         of NULL.
12383
12384         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
12385         to freed data.
12386         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
12387
12388         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
12389         to NULL when the toplevel is getting destroyed.
12390         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
12391         (gtk_menu_destroy): 
12392         (gtk_menu_init): store the information of whether we have to
12393         readd the initial child ref_count during destruction in a new
12394         GtkMenu field needs_destruction_ref_count.
12395
12396         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
12397         here, those reading: learn from my mistake! ;)
12398         in order for set_?adjustment to support a default adjustemnt if
12399         invoked with an adjustment pointer of NULL, the code read (pseudo):
12400         if (v->adjustment) unref (v->adjustment);
12401         if (!adjustment) adjustment = adjustment_new ();
12402         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
12403         now imagine the first unref to actually free the old adjustment and
12404         adjustment_new() creating a new adjustment from the very same memory
12405         portion. here, the latter comparision will unintendedly fail, and
12406         all hell breaks loose.
12407         (gtk_viewport_set_hadjustment):
12408         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
12409         after unreferencing it.
12410
12411         * gtk/gtkcontainer.[hc]: removed toplevel registration
12412         functions: gtk_container_register_toplevel(),
12413         gtk_container_unregister_toplevel() and
12414         gtk_container_get_toplevels() which had wrong semantics
12415         anyways: it didn't reference and copy the list.
12416
12417         * gtk/gtkwindow.c: we take over the container toplevel registration
12418         bussiness now. windows are registered across multiple destructions,
12419         untill they are finalized. the initial implicit reference count
12420         users are holding on windows is removed with the first destruction
12421         though.
12422         (gtk_window_init): ref & sink and set has_user_ref_count, got
12423         rid of gtk_container_register_toplevel() call. add window to
12424         toplevel_list.
12425         (gtk_window_destroy): unref the window if has_user_ref_count
12426         is still set, got rid of call to
12427         gtk_container_unregister_toplevel().
12428         (gtk_window_finalize): remove window from toplevel list.
12429         (gtk_window_list_toplevels): new function to return a newly
12430         created list with referenced toplevels.
12431         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
12432
12433         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
12434         adjustment a non-construct arg.
12435         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
12436         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
12437         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
12438
12439         * gtk/gtkrange.c: added some realized checks.
12440         (gtk_range_destroy): get rid of the h/v adjustments in the
12441         destroy handler instead of finalize. remove timer.
12442         (gtk_range_get_adjustment): demand create adjustment.
12443
12444         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
12445         we simply create them on demand now and get rid of them in
12446         the destroy handler.
12447         (gtk_viewport_destroy): get rid of the h/v adjustments in the
12448         destroy handler instead of finalize.
12449         (gtk_viewport_get_hadjustment): 
12450         (gtk_viewport_get_vadjustment): 
12451         (gtk_viewport_size_allocate): demand create h/v adjustment
12452         if required.
12453
12454         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
12455         gtk_widget_real_destroy () functionality.
12456         (gtk_widget_real_destroy): reinitialize with a new style, instead
12457         of setting widget->style to NULL.
12458
12459 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
12460
12461         * gtk/gtkcalendar.c:
12462         * gtk/gtkbutton.c: ported _get_type() implementation over to
12463         GType, either to preserve memchunks allocation facilities,
12464         or because Gtk+ 1.0 GtkTypeInfo was still being used.
12465
12466         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
12467         over. prepare for ::destroy to be emitted multiple times.
12468         removed reference tracer magic. chain into GObjectClass.shutdown()
12469         to emit ::destroy signal.
12470
12471         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
12472         fundamental.
12473
12474         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
12475         cludge.
12476
12477         * gtk/gtksocket.c:
12478         * gtk/gtkplug.c:
12479         * gtk/gtklayout.c:
12480         * gtk/gtklabel.c:
12481         * gtk/gtkargcollector.c:
12482         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
12483         not being a fundamental anymore, and to work with the new
12484         type system (nuked fundamental type varargs clutter).
12485
12486         * gtk/*.c: install finalize handlers in the GObjectClass
12487         part of the class structure.
12488         changed direct GTK_OBJECT()->klass accesses to
12489         GTK_*_GET_CLASS().
12490         changed direct object_class->type accesses to GTK_CLASS_TYPE().
12491
12492         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
12493         GType. made most of the GTK_*() type macros and Gtk* typedefs
12494         simple wrappers around macros and types provided by GType.
12495         most notably, a significant portion of the old API vanished:
12496         GTK_TYPE_MAKE(),
12497         GTK_TYPE_SEQNO(),
12498         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
12499         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
12500         GTK_TYPE_ARGS,
12501         GTK_TYPE_CALLBACK,
12502         GTK_TYPE_C_CALLBACK,
12503         GTK_TYPE_FOREIGN,
12504         GtkTypeQuery,
12505         gtk_type_query(),
12506         gtk_type_set_varargs_type(),
12507         gtk_type_get_varargs_type(),
12508         gtk_type_check_object_cast(),
12509         gtk_type_check_class_cast(),
12510         gtk_type_describe_tree(),
12511         gtk_type_describe_heritage(),
12512         gtk_type_free(),
12513         gtk_type_children_types(),
12514         gtk_type_set_chunk_alloc(),
12515         gtk_type_register_enum(),
12516         gtk_type_register_flags(),
12517         gtk_type_parent_class().
12518         replacements, where available are described in ../docs/Changes-1.4.txt.
12519         implemented compatibility functions for the remaining API.
12520
12521         * configure.in: depend on glib 1.3.1, use gobject module.
12522
12523 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
12524
12525         * TODO.xml: Various updates to current status.
12526
12527 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
12528
12529         * gtk.m4: Print out version when test succeeds.
12530
12531 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
12532
12533         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
12534         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
12535         
12536         (Original triangle color selector from Simon Budig
12537         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
12538         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
12539         Santiago <mrcooger@cyberverse.com>)
12540
12541         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
12542         out into a separate widget.
12543
12544         * gtk/testgtk.c: Add some checkbuttons for toggling palette
12545         and opacity controls.
12546
12547 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
12548
12549         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
12550         snuck in prematurely.
12551
12552 2000-05-07  Tor Lillqvist  <tml@iki.fi>
12553
12554         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
12555         had deleted a ! operator by mistake, which caused
12556         GDK_SELECTION_CLEAR events never to be generated, which caused
12557         only the first copy to the clipboard from an gtkeditable to
12558         actually cause a copy to the Windows clipboard.
12559
12560 2000-05-06  Tor Lillqvist  <tml@iki.fi>
12561
12562         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
12563         compilation, too. Current mingw gcc distributions include the
12564         necessary headers. Also the necessary IIDs are now in mingw
12565         headers/libraries, and own definitions unnecessary.
12566
12567         More hacking on OLE2 DND, still doesn't work though, and thus
12568         ifdeffed out.
12569
12570         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
12571         here, too.
12572
12573 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
12574
12575         * gdk/nanox/*: nano-X port work in progress.
12576         * gdk/simple.c: simple test for Gdk.
12577         * README.nanox: notes about the port: read this first!
12578         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
12579         with nano-X.
12580
12581 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
12582
12583         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
12584         gdk_window_clear() into common code, implement in terms of
12585         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
12586         not redirected to the backing rectangle.
12587
12588 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
12589
12590         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
12591         EXTRA_DIST. It does not work well when the file that
12592         everything depends on is not in the tarball.
12593
12594 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
12595
12596         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
12597         with recursion where process_updates() is called from
12598         an expose handler. (GtkTextView is highly broken in
12599         doing this, but it should work, so it is a nice test
12600         case.)
12601
12602 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12603
12604         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
12605         handle the case where updates are queued during processing of
12606         updates.
12607
12608 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
12609
12610         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
12611         window is on gdk_display - use that instead of segfaulting.
12612
12613 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
12614
12615         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
12616         broken and require an empty arg, give it to them.
12617
12618 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
12619
12620         * gtk/gtklabel.h: indentation fixes.
12621
12622 2000-05-02  Tor Lillqvist  <tml@iki.fi>
12623
12624         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
12625         draw too narrow or too low arcs, they seem to fail, at least with
12626         some display drivers.
12627
12628         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
12629
12630         Large changes to the Win32 backend, partially made necessary by
12631         the changes to the backend-independent internal
12632         structures. Attempts to implement similar backing store stuff as
12633         on X11. The current (CVS) version of the Win32 backend is *not* as
12634         stable as it was before the no-flicker branch was merged. A
12635         zipfile with that version is available from
12636         http://www.gimp.org/win32/. That should be use by "production"
12637         code until this CVS version is usable. (But note, the Win32
12638         backend has never been claimed to be "production quality".)
12639
12640         * README.win32: Add the above comment about versions.
12641
12642         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
12643
12644         * gdk/gdk.def: Update.
12645
12646         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
12647         presumably be replaced by some more better mechanism as 1.4 gets
12648         closer to release shape.
12649
12650         * gdk/makefile.{cygwin,msc}: Update.
12651
12652         * gdk/win32/*.c: Correct inclusions of the backend-specific and
12653         internal headers. Change code according to changes in these. Use
12654         gdk_drawable_*, not gdk_window_* where necessary.
12655
12656         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
12657         our old DND.
12658
12659         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
12660         to interpret single characters as UTF-8. Thanks to Hans Breuer.
12661         Use correct function name in warning messages.
12662
12663         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
12664         GSourceFuncs gdk_event_prepare and gdk_event_check.
12665         (gdk_event_get_graphics_expose): Do implement, use
12666         PeekMessage. Thanks to Hans Breuer.
12667         (event_mask_string): Debugging function to print an GdkEventMask.
12668         (gdk_pointer_grab): Use it.
12669
12670         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
12671         (old) book I used claimed was Hangul actually is CJK Unified
12672         Ideographs Extension A. Also, Hangul Syllables were missing.
12673         Improve logging.
12674
12675         * gdk/win32/gdkgc-win32.c: Largish changes.
12676
12677         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
12678         g_win32_getlocale() from GLib, and not setlocale() to get current
12679         locale name.
12680
12681         * gdk/win32/gdkprivate-win32.h
12682         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
12683         gdkwin32.h, similarily as in the X11 backend.
12684
12685         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
12686         assignment was used instead of equals in if test. Thanks to Hans
12687         Breuer.
12688
12689         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
12690         the X11 version.
12691
12692         * gdk/win32/makefile.{cygwin,msc}
12693         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
12694         path to the Win32 headers that works also with the mingw compiler.
12695
12696         * gtk/gtkstyle.c: Include <string.h>.
12697
12698 2000-04-26  Havoc Pennington  <hp@redhat.com>
12699
12700         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
12701         replacing the broken gtk_label_get ()
12702
12703 2000-04-15  Havoc Pennington  <hp@pobox.com>
12704
12705         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
12706         this keeps scanner scripts from getting confused.
12707
12708         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
12709         data, rather than void
12710
12711 2000-04-15  Tor Lillqvist  <tml@iki.fi>
12712
12713         * gtk/gtkclist.c (gtk_clist_motion)
12714         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
12715         with is_hint FALSE, get x and y from the event. They used to be
12716         used uninitialised. The Win32 backend never sends motion events
12717         marked as hints. This for instance fixes the annoying file and
12718         font selector behaviour in the Win32 version.
12719
12720 2000-04-14  Tor Lillqvist  <tml@iki.fi>
12721
12722         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
12723         gtk_private_n_signals variables, they are used by some software,
12724         sigh.
12725
12726         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
12727         installation directory from the Registry, where the installer
12728         should have put it.
12729
12730 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
12731
12732         * gdk/x11/Makefile.am: Fix problem with installation directory for
12733         gdkx.h
12734
12735         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
12736         <mrcooger@cyberverse.com> so that when selecting menus with the
12737         mouse, the first item will not be selected, but when selecting
12738         with an accelerator, or navigating left-right on a menubar with
12739         the menus popped up, the first item will be selected.
12740
12741 2000-04-05  Dan Damian  <dand@dnttm.ro>
12742
12743         * configure.in: Added "ro" to ALL_LINGUAS.
12744
12745 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
12746
12747         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
12748         indentation.
12749
12750         * Makefile.am (EXTRA_DIST): Fix typo.
12751
12752         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
12753         to catch gdkconfig.h
12754
12755         * gtk/gtkitemfactory.c: Added FIXME.
12756
12757 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
12758
12759         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
12760         s/return_if_fail/return_val_if_fail/g and add a return value.
12761
12762 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
12763
12764         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
12765         merge slipup.
12766
12767         * gdk/gdkinput.h: Fix missing line from merge.
12768
12769 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
12770
12771         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
12772         instead of gdkprivate.h.
12773
12774 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
12775
12776         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
12777         parent class to correctly be GtkDialogClass.
12778
12779 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
12780
12781         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
12782         toplevel windows and their immediate children by their parents,
12783         since the size of toplevel windows is out of our immediate
12784         control and we don't get any real benefit from trying to track
12785         this size for clipping.
12786
12787         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
12788         for input_only windows.
12789
12790         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
12791         to fix some hacks and make sure that we don't try to set the
12792         background of input only windows.
12793
12794 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
12795
12796         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
12797         the _really_ internal stuff, and leave gdkprivate.h for the fake private
12798         stuff that we've traditionally exposed.
12799
12800         * gdk/**.c: Use gdkinternals.h where appropriate.
12801
12802         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
12803         not include gdkprivate-x11.h, move all stuff of conceivable public
12804         interest into gdkx.h; keep all really private stuff in
12805         uninstalled header gdkprivate-x11.h.
12806
12807         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
12808         image->image_put on windows through a new function _gdk_window_draw_image()
12809         to allow us to do backing store for images. (Sort of ugly)
12810
12811         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
12812         contexts locally so that we can offset them properly when drawing 
12813         onto backing pixmaps.
12814
12815         * gdk/gdkinput.h: Reindented
12816
12817         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
12818         pixmap or color for the window, so we can properly initialize
12819         our double-buffer pixmaps, and also so that we temporarily set
12820         a background of None while scrolling.
12821
12822         * gdk/gdkregion.h: Revise region boolean operators to have an
12823         interface that is actually convenient - switch from creating new
12824         regions on every op, to "methods" that modify existing regions
12825         (A = A OP B). 3 argument forms which allow dest == src, would also
12826         be possible, but the current interfaces seem to map nicely
12827         onto what needs to be done. (There is quite a lot of region
12828         code in GDK now.)
12829
12830         * gdk/gdkregion.h: Add constructor from rectangle and a copy
12831         operator.
12832
12833         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
12834         gdkpoly-generic.h: Copy region code from Xlib, switch it over
12835         to 32 bit coordinates, modify it to be mostly GTK+ style
12836         and to have interfaces that match gdkregion.h.
12837
12838         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
12839         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
12840         create a backing pixmap and redirect all drawing to
12841         that backing pixmap until a matching gdk_window_end_paint().
12842
12843         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
12844         Create a special drawable class for GtkWindow's that 
12845         redirects the drawing to the backing pixmap as necessary
12846         and then calls the real operations in _gdk_windowing_window_class.
12847
12848         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
12849         Store invalid region for each window. Generate expose events for invalid
12850         region in an idle. This replaces both the expose compression
12851         and the redrawing queuing in GTK+. It is both more efficient and
12852         simpler than either one individually and far more so then the
12853         combination.
12854
12855         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
12856         Emulate 32 bit coordinates for windows with 16 bit coordinates
12857         by offsetting drawing, guffaw scrolling techniques and
12858         mapping/unmapping child windows as necessary.
12859
12860         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
12861         where, when invalid regions are processed, the region is stored,
12862         and if expose events come in that are detectably duplicate
12863         the processed exposes (by comparison of event serial numbers),
12864         the stored region is subtracted out of those exposes.
12865
12866         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
12867         regions newly exposed when scrolling or resizing windows.
12868         This, combined with forcing processesing of queued invalidated
12869         regions, gives nice flicker-free scrolling.
12870
12871         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
12872         invalidated regions after every scroll.
12873
12874         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
12875         emulation in GDK. Its, for all practical purposes just a
12876         GtkViewport/GtkFixed hybrid now.
12877
12878         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
12879         (16-bit) structures as necessary instead of just casting.
12880
12881         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
12882         in terms of the structures from gdkregion-generic.c, using appropriate
12883         offsets from GDK to X11 coordinates. Cache clip mask and
12884         origin and ts origin locally and only flush to the server
12885         when drawing, to avoid constantly setting and resetting these
12886         values when offsetting GC's for scrolling and backing pixmaps.
12887
12888         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
12889
12890         * gtk/gtkcontainer.c: Call process_all_updates at end
12891         of resizing to reduce flicker. (Avoids having redraw
12892         lag arbitrarily behind resize under some circumstances)
12893
12894         * gtk/gtkentry.c: Remove old backing store code, and simply take
12895         advantage of the new backing store capabilities of GDK.
12896
12897         * gtk/gtkmain.c: Simple implementation of widget backing
12898         store - simply push a paint while handling each expose.
12899         (Should really be configurable widget for widget.)
12900         
12901         * gtk/gtkwidget.c: Remove all the old complicated redraw
12902         code, and simply invalidate the GDK windows from
12903         gdk_window_queue_clear(), etc. (Sigh, so much carefully
12904         debugged complexity ... gone to the winds.)
12905
12906         Remove all the code for suppressing expose events while
12907         resizes are pending; this isn't needed since the invalid
12908         areas won't be processed until after the resizes are
12909         processed, since they are in a lower priority idle.
12910
12911 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
12912
12913         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
12914         and height of dest rectangle for non-intersecting rectangles.
12915
12916 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
12917
12918         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
12919         for GdkRectangle.
12920
12921 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
12922
12923         * gdk/gdk{events,image,private,types,window}.h
12924          gdk/x11/gdkinputprivate.h: Change all coordinates
12925          from int16 to int. Also, Change width and height from
12926          unsigned to signed to avoid all the stupid C 
12927          signedness bugs.
12928
12929 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
12930
12931         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
12932         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
12933         Add some more detailed checking.
12934
12935         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
12936         New function to retrieve the depth of a drawable.
12937
12938         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
12939         field, reorder fields to save memory. 
12940
12941 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
12942
12943         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
12944         of the background image instead of scaling the background down to
12945         a line.
12946
12947         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
12948         which temporarily set slider to wrong size.
12949
12950         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
12951         queue_clear().
12952
12953 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
12954
12955 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
12956
12957         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
12958
12959 2000-03-17  Tor Lillqvist  <tml@iki.fi>
12960
12961         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
12962         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
12963
12964         * gdk/win32/gdkfont-win32.c
12965         * gdk/win32/gdkproperty-win32.c
12966         * gdk/win32/gdkselection-win32.c
12967         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
12968         now declared such.
12969
12970 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
12971
12972         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
12973
12974 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
12975
12976         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
12977         is called without trapping X errors.
12978
12979 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
12980
12981         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
12982         way into the fontset lists.
12983
12984 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
12985
12986         * gtk/gtkthemes.h: add extern "C" scope.
12987
12988 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
12989
12990         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
12991         to make appends to the list constant. (gtk-guy-990901-0.patch)
12992
12993 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
12994
12995         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
12996         for the typename hash table.
12997
12998 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
12999
13000         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
13001         to make sure we never divide by zero. 
13002         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
13003
13004 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
13005
13006         * gtk/gtkfontsel.c: Apply patch from
13007         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
13008         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
13009
13010         Also, some cleanups in atom handling.
13011
13012 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
13013
13014         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
13015         not GtkWidget.
13016
13017 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
13018
13019         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
13020         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
13021         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
13022         more guint wrap-around bugs before going to bed.
13023
13024 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
13025
13026         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
13027         guint wrap arounds in allocation.width.
13028
13029         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
13030         process untill we fit the allocation given.
13031
13032 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
13033
13034         * gtk/gtkwidget.c:
13035         (gtk_widget_unrealize): guard widget access with ref/unref
13036         around signal emission.
13037         (gtk_widget_hide): same here, but also check its destroyed
13038         state before queueing a resize.
13039
13040 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
13041
13042         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
13043         of gtk_default_insensitive_bg as insensitive base color.
13044
13045         * gtk/gtktext.c (gtk_text_style_set): set the background color according
13046         to the widget's state.
13047         (gtk_text_realize): same here.
13048         (gtk_text_state_changed): same here.
13049         (draw_bg_rect): compare background color against base[] from
13050         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
13051
13052 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
13053
13054         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
13055         grabs are active, unless a delete event is send to the toplevel
13056         of the currently grab holding widget.
13057
13058 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
13059
13060         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
13061         debugging g_print's.
13062
13063 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
13064
13065         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
13066         ever make the scrolled-window requisition ever depend on the 
13067         visibility state of the scrollbars for the AUTOMATIC policy. 
13068         This breaks the GTK+ requisition model, and causes loops.
13069
13070 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
13071
13072         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
13073         the default font to avoid problems with XFree86-4.0 where the
13074         default charset is iso10646-1, not iso8859-1.
13075
13076 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
13077
13078         * acinclude.m4
13079         * config.guess
13080         * config.sub
13081         * ltconfig
13082         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
13083
13084         * gtk/Makefile.am: minor cosmetic consistency tweak
13085
13086 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
13087
13088         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
13089         the activate_time to 0, so that we handle a quick
13090         press/release press/release properly and don't suppress
13091         the second release. (Red Hat bug #7545)
13092
13093 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
13094
13095         * gtk/gtkctree.c (row_delete):
13096         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
13097         bugs with destruction notifier, *always* update internal
13098         structures *before* calling user code.
13099
13100 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
13101
13102         A few more fixes for bug #5487, #2051, #2677.
13103         * gtk/gtkclist.c : 
13104         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
13105         not GDK_BUTTON_PRESS.
13106         (resync_selection): resync only if selection_mode is
13107         GTK_SELECTION_EXTENDED
13108         * gtk/gtkctree.c (resync_selection): same here
13109
13110 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
13111
13112         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
13113         gdk_drag_get_selection() and gtk_menu_detach().
13114
13115         [ From Jeroen Ruigrok/Asmodai ]
13116
13117 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
13118
13119         * gtk/gtknotebook.c (gtk_notebook_size_request): 
13120         page->tab_label can be NULL.
13121
13122 2000-01-25  Havoc Pennington  <hp@pobox.com>
13123         
13124         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
13125         arg is boolean
13126
13127         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
13128
13129         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
13130
13131         * gdk/gdkproperty.c (gdk_property_get): return boolean
13132
13133         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
13134
13135         * gdk/gdkim.c (gdk_im_ready): return boolean
13136
13137         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
13138
13139         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
13140         glib clash, should fix glib)
13141
13142         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
13143         (gdk_get_show_events): return gboolean, and canonicalize 
13144         to TRUE/FALSE
13145
13146         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
13147         colormap is private
13148         (gdk_colors_alloc): gboolean whether to be contiguous
13149         (gdk_color_equal): return gboolean since we are a predicate
13150         and not a qsort() (this looks semi-wrong due to glib breakage,
13151         IMO glib should be fixed)
13152         
13153         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
13154         (gdk_get_use_xshm): return gboolean
13155         (gdk_pointer_is_grabbed): return gboolean
13156
13157         * gdk/gdk.h: Change prototypes to match all the above changes,
13158         and re-run egtk-format-protos as required.
13159
13160 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
13161
13162         * gtk/gtkctree.c (resync_selection): 
13163         * gtk/gtkclist.c (resync_selection):
13164
13165         Return immediately if clist->drag_pos < 0. This is a workaround
13166         for the corrupt state that the clist gets into when a
13167         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
13168
13169         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
13170         
13171         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
13172         variable from recent commit.
13173
13174 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
13175
13176         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
13177
13178 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
13179
13180         * gtk/Makefile.am: prefix all autogenerated source that get build in
13181         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
13182         in builddir. since we subsequently cd into srcdir for autogeneration,
13183         the paths have to be stripped from the target file names, thusly we
13184         use $(@F) as target names now.
13185         put a comment about configure.in's --disable-rebuilds option,
13186         which can be used for non-writable source directories, for development
13187         setups though, srcdir has to be *writable*.
13188
13189 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
13190
13191         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
13192           Finish the job of allowing event to be NULL.
13193           (Fixes bug #4283, reported by Chris Blizzard)
13194
13195         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
13196           things so that the cursor appears on screen, properly
13197           take into account INNER_BORDER.
13198           (Fixes bug #4754, reported by Antonio Campos)
13199
13200 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
13201
13202         * gtk/gtknotebook.c (gtk_notebook_map): Don't
13203           show the tab_label unless it itself is visible.
13204
13205           gtk/gtknotebook.c (gtk_notebook_size_request):
13206           Do a better job of making sure that the visibility
13207           of the tab label corresponds to whether it should
13208           be mapped or not.
13209
13210 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
13211
13212         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
13213           Use the requisition, not the allocation, since the
13214           allocation has not necessarily been computed yet.
13215           (Pointed out by Eugene Osintsev)
13216
13217 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
13218
13219         * gtk/gtkstyle.c (gtk_style_new): Dont' set
13220           style/base[GTK_STATE_INSENSITIVE] both to
13221           gtk_default_insensitive_bg!
13222           (Bug #2187, reported by Jonathan Blandford)
13223
13224         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
13225           Add Alt_L, Alt_R to list of invalid accelerators.
13226           (Bug #3736, reported by Vlad Harchev)
13227
13228 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
13229
13230         * gtk/gtkfilesel.c (open_ref_dir): Fix several
13231         bugs which occured after an attempt to open 
13232         invalid home directory left cmpl_state->reference_dir == NULL.
13233
13234          - completion on files in home directory didn't work
13235          - completion on an empty string caused  segfault
13236
13237          (Bug #3678, reported by Steve Ratcliffe)
13238
13239         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
13240         cut and paste error that was causing scales to
13241         be incorrectly positioned.
13242         (Bug #2956,
13243          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
13244
13245 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
13246
13247         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
13248         when checking for dcgettext, if we've found we needed
13249         it for dgettext.
13250 +
13251 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
13252
13253         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13254         queue_clear on NO_WINDOW widgets during a reparent,
13255         since at that point the window and widget heirarchies
13256         are out of sync. This stops crashing in some cases
13257         (the scrolled window reparent test, for instance), and
13258         _probably_ won't cause drawing errors.
13259
13260         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
13261         test do what it was supposed to do and be robust against
13262         window closings, etc. (Bug #2443)
13263
13264 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
13265
13266         * gtk/gtkentry.c: Fix return values on mouse events.
13267         (Bug #2686, Sky <seb_sky@yahoo.com>)
13268
13269         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
13270         (pointed out by George Lebl)
13271
13272         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
13273         (From Ettore Perazzoli  <ettore@helixcode.com>)
13274  
13275 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
13276
13277         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
13278         clicks between rows or outside calender area correctly.
13279         (Patch from Damon Chaplin)
13280
13281         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
13282         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
13283           Call destroy function when overwriting existing data. 
13284           (Pointed out by Damon Chaplin)
13285
13286 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
13287
13288         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
13289           which was causing problems on various systems with Xmu.
13290           This hasn't been needed for a very long time.
13291           (Fixes #1185 3167)
13292
13293 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
13294
13295         * gdk/gdki18n.h: Include <ctype.h> when defining
13296           gdk_isw* in terms of is* as a fallback.
13297           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
13298
13299 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
13300
13301         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
13302           realize the widget when it is size allocated!
13303           (old, old bug)
13304
13305         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
13306           Removed unused call to gdk_window_get_size() that
13307           showed up when the above was fixed.
13308
13309 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
13310
13311         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
13312           fix up widget->window when the widget is a
13313           NO_WINDOW container widget.
13314
13315 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
13316
13317         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
13318           to account for the fact that feof() does _not_ 
13319           return TRUE on errors, and thus avoid infinite loops
13320           when trying to use gdk_pixmap_create_from_xpm()
13321           on unreadable values.
13322
13323 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
13324
13325         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
13326
13327 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
13328
13329         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
13330           gdk_gc_set_dashes to take gint8 instead of gchar to
13331           make it clearer that it is _not_ a NULL terminated string.
13332
13333         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
13334           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
13335           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
13336           arguments.
13337
13338 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
13339
13340         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
13341         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
13342         background size relative to our allocation, guard against small
13343         allocations, we may have not yet been size allocated.
13344
13345 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
13346
13347         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
13348         not just version == 3. We implement all 3 + most of 4 - 
13349         (we don't support matching text/plain;charset=iso-8859-1
13350         to a dest that expects text/plain). We'll still advertise
13351         3 to be safe, but any client implementing version >= 3
13352         must interoperate with 3.
13353         
13354 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13355
13356         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
13357         background and gc members, add a warning in gtk_tooltips_set_color()
13358         indicating that this function is deprecated.
13359
13360 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
13361
13362         * docs/gtkfaq.sgml: FAQ Update:
13363           - Minor cleanups (Emmanuel, me)
13364           - New questions:
13365                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
13366                 How can I retrieve the text from a GtkMenuItem? (timj)
13367                 How do I validate/limit/filter the input to a GtkEntry? (me)
13368                 Memory does not seem to be released when I free the list
13369                         nodes I've allocated (timj)
13370
13371 2000-03-07  Tor Lillqvist  <tml@iki.fi>
13372
13373         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
13374         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
13375         for which it is no use to call GetLastError onWin9x.
13376         (gdk_other_api_failed) New function, for general error
13377         reporting without calling GetLastError.
13378         (gdk_win32_api_failed) OTOH, this function always calls
13379         GetLastError. (gdk_win32_last_error_string) Remove this function,
13380         GLib has the equivalent now.
13381
13382         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
13383         call them with function name, file name and line number in the
13384         arguments.
13385
13386         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
13387         functions.
13388         
13389         * gtk/gtk.def: Add some missing entry points.
13390
13391         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
13392         gtk_paned_set_gutter_size, which don't exist any longer, as void.
13393         
13394         Fixes by Hans Breuer:
13395
13396         * gdk/makefile.msc: Update for debugging.
13397
13398         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
13399         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
13400         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
13401         in the dash_list.
13402
13403         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
13404         the x11 backend.
13405
13406         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
13407
13408         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
13409
13410 2000-03-04  Tor Lillqvist  <tml@iki.fi>
13411
13412         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
13413         just pixel value of background colour.
13414
13415         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
13416         containing code snippet previously duplicated in a couple of
13417         places.
13418         
13419         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
13420         gdk_colormap_color.
13421
13422         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
13423         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
13424         events for autorepeated Shift, Control and Alt keys. Use
13425         gdk_colormap_color.
13426
13427         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
13428         pointer is inside the window the cursor of which we are setting,
13429         call SetCursor immediately.
13430
13431         * gdk/win32/makefile.cygwin
13432         * gtk/makefile.cygwin: If we don't have the build number stamp
13433         file, use zero.
13434
13435         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
13436         gtk_paned_set_gutter_size as empty.
13437
13438         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
13439         
13440 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
13441
13442         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
13443           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
13444           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
13445           docs/gtk_tut.sgml docs/gtk.texi TODO:
13446
13447           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
13448
13449 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
13450
13451         * gtk/gtkcalendar.c: Implement num_marked_dates,
13452           and don't emit mutiple day_selected signals on
13453           month_prev.
13454
13455 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
13456
13457         * docs/make-todo (lineno): let title and logo be configurable so
13458         that GNOME can use this script too.
13459
13460         * TODO.xml: added logourl and a title
13461
13462 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
13463
13464         * TODO.xml: Added some UI items, and an explanatory
13465         comment at the top of the file.
13466
13467 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
13468
13469         * TODO.xml: some updates, added abunch of new entries.
13470         a note for those fiddeling with this file, when done
13471         with it, invoke:
13472         $ ./docs/make-todo TODO.xml >/dev/null
13473         and correct output errors before comitting changes.
13474
13475 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
13476
13477         * TODO.xml: Added XML-structured TODO file.
13478         * docs/make-todo: python script to turn TODO.xml into
13479           pretty XML output. 
13480
13481 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
13482
13483         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
13484         the function to let it draw the seven dots, instead of the old,
13485         much maligned, method.
13486         (draw_dot): New function to draw a dot.
13487
13488         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
13489         to draw the handle inside the border width as opposed to outside.
13490         Use paint function instead of gdk_draw_point.
13491
13492         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
13493         to draw the handle inside the border width as opposed to outside.
13494         Use paint function instead of gdk_draw_point.
13495
13496         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
13497         Change indenting to be more GTK like.
13498
13499 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
13500
13501         * docs/gtk_tut.sgml: New section on GtkCalendar
13502         * examples/calendar: Update example code
13503
13504 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
13505
13506         * docs/gtkfaq.sgml: FAQ Update
13507
13508 2000-02-19  Anders Carlsson  <andersca@gnu.org>
13509
13510         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
13511         to prevent the scroll event to be propagated upwards.
13512
13513 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
13514
13515         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
13516         OwnerGrabButtonMask from button entries for
13517         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
13518
13519         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
13520         to the event mask (which will result in button/press release
13521         being added to the event mask on Unix) so scrolling works
13522         for layouts in scroll windows.
13523
13524         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
13525
13526         Patch from Anders Carlsson  <andersca@gnu.org> to add
13527         a scroll event.
13528
13529         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
13530         scrolling to the "Test Scrolling" part of testgtk.
13531  
13532         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
13533  
13534         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
13535         it against GDK_SCROLL.
13536  
13537         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
13538         way of mouse wheel scrolling.
13539  
13540         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
13541  
13542         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
13543  
13544         * gtk/gtkmain.c: Removed previous mouse wheel hack.
13545  
13546         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
13547         gdk_event_mask_table.
13548  
13549         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
13550         GdkEventScroll handler.
13551  
13552         * gdk/gdkevents.h: Added GdkEventScroll structure.
13553  
13554 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
13555
13556         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
13557         and Anders Carlsson to change the Paned widgets so that they
13558         can be dragged from anywhere along the length. Also change
13559         the way that this is drawn to make this apparent.
13560
13561         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
13562         from George Lebl to check that option_menu->menu is present
13563         before getting history.
13564
13565 2000-02-14  Tor Lillqvist  <tml@iki.fi>
13566
13567         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
13568         before the assertion for non-NULL segment list.
13569
13570         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
13571         Seems that pattern brushes *must* be 8x8 pixels! At least on my
13572         machine, but it might be display driver dependent. Sigh, so make
13573         sure the stipple is that size. Does Windows suck or what?
13574
13575         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
13576         places.
13577
13578 2000-02-13  Havoc Pennington  <hp@pobox.com>
13579
13580         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
13581         refcount to 1
13582         (gdk_cursor_new): init refcount to 1
13583
13584         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
13585
13586 2000-02-13  Tor Lillqvist  <tml@iki.fi>
13587
13588         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
13589         so that we don't have to do unnecessary settings to the HDC.
13590
13591         * gdk/win32/gdkdrawable-win32.c
13592         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
13593         gdk_gc_predraw.
13594
13595         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
13596         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
13597         GDI paths, call WidenPath to get the outline of the stroken path,
13598         and then fill the outline (with the brush that was built from the
13599         stipple).
13600
13601         * gdk/win32/gdkgc-win32.c: Factor out common code from
13602         _gdk_win32_gc_new and gdk_win32_gc_set_values into
13603         gdk_win32_gc_values_to_win32values. Use correct colour for
13604         SetBkColor() (Until now the code actually used a random colour in
13605         the call to SetBkColor()... but that didn't show up as not many
13606         GDI APIs use the background colour. Pattern (opaque stippled)
13607         brushes do.)
13608
13609         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
13610         gdk_win32_api_failed): New functions for error logging.
13611
13612         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
13613         WIN32_API_FAILED to call them, passing function or file name and
13614         line number.
13615
13616         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
13617
13618         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
13619         GdkColor for foreground and background in GdkGCWin32Data.
13620
13621         * gdk/makefile.cygwin: Link in the resource object separately.
13622
13623         * gdk/win32/rc/gdk.rc
13624         * gtk/gtk.rc (New file)
13625         * gdk/win32/makefile.cygwin
13626         * gtk/makefile.cygwin: Update build number in DLLs automatically,
13627         as in GLib.
13628
13629 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
13630
13631         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
13632         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
13633         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
13634         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
13635         parameters given and cursor->ref_count. coding style fixups.
13636
13637         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
13638         not GtkWidget.
13639         
13640         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
13641         fix up widget macros and add _GET_CLASS() variant.
13642         
13643         * gtk/*.c: some GtkType fixups.
13644
13645 2000-02-09  Tor Lillqvist  <tml@iki.fi>
13646
13647         * gdk/win32/gdkproperty-win32.c
13648         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
13649         were reversed.
13650
13651 2000-02-04  Tor Lillqvist  <tml@iki.fi>
13652
13653         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
13654         g_filename_to_utf8 to convert the font names Windows gives us from
13655         whatever is the default codepage to UTF-8.
13656         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
13657         in the other direction.
13658
13659         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
13660         error in debugging output.
13661
13662 2000-02-02  Tor Lillqvist  <tml@iki.fi>
13663
13664         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
13665         and height parameters to gdk_window_clear_area(). Not minus one.
13666
13667 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
13668
13669         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
13670         checks if the widget passed to gtk_drag_get_data() was not the
13671         dest widget.
13672
13673 2000-02-01  Tor Lillqvist  <tml@iki.fi>
13674
13675         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
13676         g_filename_from_utf8 functions (which were added a moment ago to
13677         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
13678         size buffers.
13679
13680         gtk_file_selection_get_filename returns the filename in the C
13681         runtime encoding. It calls g_filename_from_utf8, but copies the
13682         returned string to a static buffer, which is returned. I think
13683         this is better than returning the result from g_filename_from_utf8
13684         directly, which would mean all apps that use it would have to free
13685         the return value. Or should this function care about this issue at
13686         all? Maybe a new function with clearly defined semantics.
13687
13688         * gtk/gtkfilesel.h: Add comment about
13689         gtk_file_selection_get_filename returning the filename in the C
13690         runtime's encoding.
13691
13692         * README.win32
13693         * gdk/gdk.def
13694         * gdk/makefile.{cygwin,msc}
13695         * gtk/gtk.def: Updates.
13696
13697         * gdk/gdkcursor-win32.c: Initialise refcount.
13698
13699 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
13700
13701         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
13702
13703 2000-01-30  Havoc Pennington  <hp@pobox.com>
13704
13705         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
13706         destroy
13707
13708         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
13709
13710         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
13711         implemented in platform-specific code
13712
13713         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
13714
13715         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
13716         underscore in front
13717
13718         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
13719         put an underscore in front
13720
13721         * gdk/gdkcursor.c: new file, implements
13722         gdk_cursor_ref/gdk_cursor_unref
13723
13724         * gdk/gdkcursor.h: Refcount GdkCursor
13725
13726         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
13727
13728 2000-01-29  Tor Lillqvist  <tml@iki.fi>
13729
13730         * gdk/gdkwindow.h
13731         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
13732
13733 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
13734
13735         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
13736         structures to properly inherit from GtkWidget not GtkBin.
13737
13738 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
13739
13740         * gtk+.spec.in: Added lib/gtk+/include/* to %files
13741         (bug #5178 - Peter Wainright)
13742         
13743         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
13744         so that it will be installed.
13745         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
13746
13747 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
13748
13749         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
13750         for the GtkStyleClass vtable const.
13751
13752         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
13753         take a const string argument like GtkTranslateFunc. This will
13754         require changes in use code.
13755
13756 2000-01-19  Tor Lillqvist  <tml@iki.fi>
13757
13758         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
13759         semantics (to mimic the X11 backend, which just calls XClearArea)
13760         is to check for zero width (and height), and in that case use the
13761         window's width minus x (height minus y). This fixes for instance
13762         some redraw problems with gtkclist, which were easily noticeable
13763         in the gtk file selection widget.
13764
13765         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
13766         windows.
13767
13768 2000-01-13  Tor Lillqvist  <tml@iki.fi>
13769
13770         * configure.in
13771         * gdk/Makefile.am
13772         * gdk/x11/Makefile.am
13773         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
13774         (bug #5177).
13775         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
13776         out later.
13777
13778 2000-01-09  Tor Lillqvist  <tml@iki.fi>
13779
13780         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
13781         WM_MOVE for iconified or invisible windows. This fixes various
13782         problems when minimising windows. Thanks to Bernd Herd.
13783
13784 2000-01-05  Tor Lillqvist  <tml@iki.fi>
13785
13786         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
13787         backend's draw_lines method, not draw_points.
13788
13789 2000-01-02  Tor Lillqvist  <tml@iki.fi>
13790
13791         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
13792         before Owen's reorganisation: Don't have queued_events and
13793         queued_tail statics in this file, but use gdk_queued_events and
13794         gdk_queued_tail. This makes exposure event compression work again.
13795
13796         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
13797         seem to be needed?
13798
13799 1999-12-30  Tor Lillqvist  <tml@iki.fi>
13800
13801         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
13802         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
13803         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
13804         doesn't do anything.
13805
13806         * gdk/gdk.def: Add gdk_xid_table_insert.
13807
13808         * gdk/win32/gdkprivate-win32.h
13809         * gdk/win32/gdkevents-win32.c
13810         * gdk/win32/gdkinput-win32.c
13811         
13812         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
13813         extension_events field in the GdkWindowWin32Data struct. Use only
13814         the extension_events field in GdkWindowPrivate. Previously one was
13815         set, and the other one tested, which broke tablet
13816         functionality. Thanks to Keishi Suenaga for pointing this out.
13817
13818 1999-12-18  Tor Lillqvist  <tml@iki.fi>
13819
13820         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
13821         When handling a single character (text length == 1), don't handle
13822         it as if it was UTF-8.
13823
13824 1999-12-11  Tor Lillqvist  <tml@iki.fi>
13825
13826         * Makefile.am: Distribute README.win32.
13827         
13828         * gdk/Makefile.am
13829         * gdk/win32/Makefile.am: Distribute Win32 files.
13830
13831         * gdk/makefile.msc: New file.
13832
13833         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
13834         after label).
13835
13836         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
13837         gdk_error_code as GDKVAR, as they are referred outside GDK.
13838
13839         * gdk/win32/makefile.msc: Update.
13840
13841         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
13842         tweaks. Check only if at least one of those Unicode subrange bits
13843         we care for is set. If no code page bits are set, guess (wildly)
13844         based on the charset.
13845
13846         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
13847
13848         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
13849         non-NULL.
13850
13851         * gtk/gtkdnd.c
13852         * gtk/gtklayout.c
13853         * gtk/gtkplug.c
13854         * gtk/gtkselection.c
13855         * gtk/gtksocket.c
13856         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
13857         appropriate. There must be a cleaner way to handle this?
13858
13859         * gtk/gtkrc.c: Must include windows.h on Win32.
13860
13861         * gtk/testgtk.c: No need to include gdkx.h.
13862
13863         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
13864
13865 1999-12-07  Tor Lillqvist  <tml@iki.fi>
13866
13867         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
13868         the rbearing is set to the same as the width, but this should be
13869         fixed.
13870
13871 1999-12-06  Tor Lillqvist  <tml@iki.fi>
13872
13873         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
13874         function. If Windows doesn't tell us what Unicode subranges a font
13875         covers, guesstimate based on the codepages it covers. This will
13876         hopefully help those Windows versions or fonts that don't give us
13877         any useful Unicode subrange information with GetTextCharsetInfo.
13878         Call this function in gdk_font_load_internal.
13879
13880         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
13881         minor changes.
13882
13883 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
13884
13885         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
13886         New function, long needed.
13887
13888 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
13889
13890         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
13891         only_if_exists argument of gdk_atom_intern to
13892         bool.
13893
13894 1999-11-25  Tor Lillqvist  <tml@iki.fi>
13895
13896         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
13897         Fix two copy&paste errors.
13898
13899         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
13900         win32 has changed.
13901
13902         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
13903         GdkWin32SingleFont struct.
13904
13905         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
13906         subranges of loaded fonts. Clear font signature first, in case
13907         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
13908         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
13909
13910         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
13911         Unoffset clip region.
13912
13913 1999-11-23  Tor Lillqvist  <tml@iki.fi>
13914
13915         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
13916         event->any.window before calling filter functions.
13917
13918 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
13919
13920         * gtk/gtkgamma.h: Adapt cast macros to standard.
13921
13922 [ Merges from 1.2 ]
13923
13924 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
13925
13926         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
13927         If translation does not include a '/', use entire
13928         translation instead of crashing.
13929
13930 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
13931
13932         * docs/gtk_tut.sgml:
13933         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
13934
13935 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
13936
13937         * gtk/gtkselection.c (gtk_target_list_remove): Use
13938         g_list_remove_link, not g_list_remove.
13939
13940         [ From Geert Bevin <gbevin@thunderstorms.org> ]
13941         
13942 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
13943
13944         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
13945         statement upon unselection (how the heck did that slip in?).
13946
13947 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
13948
13949         * gtk/gtktext.c (gtk_text_freeze): 
13950         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
13951         in frozen state (and aparently crashes). patch provided by Anders
13952         Melchiorsen <and@kampsax.dtu.dk>.
13953
13954 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
13955
13956         * fix insensitive default/focus widget activation,
13957         reported by Matt Goodall <mgg@isotek.co.uk>.
13958
13959         * gtk/gtkwindow.c (gtk_window_key_press_event): 
13960         (gtk_window_activate_default):
13961         (gtk_window_activate_focus):
13962         return handled=FALSE for actiavtion of insensitive default
13963         widgets. return handled=TRUE for activation of insensitive
13964         focus widgets. don't activate in either case.
13965
13966 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
13967
13968         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
13969         and $glib_cflags to match library order and in the
13970         theory that an old version of GLib is more likely to
13971         be in the include directory for X then vice-versa.
13972         (Bug #2776)
13973
13974 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
13975
13976         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
13977         to determine the locale for fontsets, not LC_MESSAGES;
13978         the user may want English messages with a handling
13979         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
13980         will still be broken) (Bug #2891)
13981
13982 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13983
13984         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
13985
13986 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13987
13988         * gtk/gtkrc.ko: Changed the Korean default fontset.
13989
13990 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
13991
13992         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
13993         where when scrolling to the left or top double exposes
13994         were done, causing major slowdowns.
13995
13996 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
13997
13998         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
13999         names to lowercase and alphanumeric, before looking
14000         them up.
14001
14002         * gtk/Makefile.am: Install codeset variant gtkrc files
14003         with normalized names.
14004
14005 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
14006
14007         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
14008         popup menus when the menu is already visible, but its parent
14009         is still hidden, (happens after tornoff window got hidden).
14010
14011 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
14012
14013         * gtk/Makefile.am (install-data-local): Fix
14014         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
14015         deleted, causing error messages on install.
14016
14017 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
14018
14019         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
14020         the handle as well, since we now sometimes ignore
14021         exposes on the handle while resizing.
14022
14023 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
14024
14025         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
14026         extra g_free introduced in one of the last one or two 
14027         commits.
14028
14029 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
14030
14031         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
14032         consistent, put each style that a gtkrc.* file creates
14033         in a unique namespace, remove old files before installing.
14034
14035 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
14036
14037         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
14038         gtk_rc_init is called multiple times. (Yes, people who
14039         do that have bugs in their code.)
14040
14041 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
14042
14043         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
14044         Remove it since it's generated by the Makefile anyway
14045
14046 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
14047
14048         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
14049         device->info.axes for core pointer.
14050
14051 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
14052
14053         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
14054         idle_id, to deal with obsolete, broken C libraries.
14055
14056 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
14057
14058         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
14059         allocation->x/y twice!
14060
14061         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
14062         consistent with gtk_vscale_pos_trough().
14063
14064 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
14065
14066         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
14067         be queueing a resize on a toplevel container between
14068         the time we show it and when we map it. So, we need
14069         to test GTK_WIDGET_VISIBLE() for toplevels, and only
14070         use GTK_WIDGET_DRAWABLE() for child windows.
14071
14072 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
14073
14074         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
14075         (fixes bug #2144)
14076
14077 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
14078
14079         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
14080         container DRAWABLE (instead of VISIBLE), so we don't queue
14081         resizes on non-toplevel containers.
14082
14083 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
14084
14085         * gtk/gtkselection.[ch]: Make the data argument
14086         const guchar *.
14087
14088 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
14089
14090         * gtk/gtkwindow.c: Try to behave sensibly if 
14091         the focus widget is the window itself. (Should
14092         we allow this at all?)
14093
14094 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14095
14096         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
14097         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
14098         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
14099         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
14100         in prototypes and implementations consistent (Tomas Ogren).
14101
14102         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
14103         before the widget is unparented (reported by damon).
14104
14105         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
14106         since we provide unsigned data anyways.
14107
14108 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
14109
14110         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
14111         the call to gtk_tooltips_layout_text() until later.
14112
14113         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
14114         Call gtk_widget_ensure_style() before using the style.
14115
14116 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
14117
14118         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
14119         for old widgets that don't propagate draws to all
14120         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
14121
14122 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
14123
14124         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
14125         for a redraw but just the widget that requested the resize.
14126
14127 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
14128
14129         * gtk/gtkcontainer.c: added new widget level method
14130         gtk_container_set_reallocate_redraws() and a GtkContainer flag
14131         reallocate_redraws : 1 to reflect the setting, exported this through
14132         the argument system as a boolean ::reallocate_redraws.
14133
14134         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
14135         on the widget because the allocation changes, do so as well for
14136         widget->parent if the parent has reallocate_redraws set to TRUE.
14137         with that containers requesting reallocation redraws get automatically
14138         redrawn if their children changed allocation (this unfortunately
14139         affects also other children that didn't change allocation, but we
14140         cannot work around that before 1.3).
14141
14142 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14143
14144         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
14145         _and_ height are >0 (not _or_).
14146
14147         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
14148         instead of gtk_container_queue_resize(), which is a core gtk internal
14149         function (must have been on crack when i queued that).
14150
14151         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
14152         we can check more reliably if we want to discard expose events.
14153         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
14154         flag.
14155         
14156         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
14157         we simply trust these events. for deciding whether to discard exposes,
14158         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
14159         
14160 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
14161
14162         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14163         queues of areas that are completely off screen.
14164
14165         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
14166         logic for handleboxes.
14167
14168         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
14169         check on width/height.
14170
14171 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
14172
14173         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
14174         we are fine with using $@ the way we do (if we actually encounter
14175         brokeness with $@ in VPATH builds because of additional path prefixes,
14176         we need to use $(@F) actually).
14177
14178 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
14179
14180         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
14181         short lived bugs, that would allow language bindings to do surgeries
14182         to our guts.
14183
14184 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
14185
14186         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
14187         where comparison was being done against an uninitialized
14188         value causing intermittant results depending on
14189         compiler flags. Also make it clearer that we aren't
14190         ever initializing the child as 0x0 (though this will
14191         be caught in gtk_widget_size_allocate())
14192
14193 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
14194
14195         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
14196         gtk_window_unset_transient_for() call after we do checks
14197         involving the old transient parent.
14198         [ From Lance Capser <lmc@cyberhighway.net> ]
14199
14200 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
14201
14202         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
14203         an empty file.
14204
14205 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
14206
14207         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
14208         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
14209
14210 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
14211
14212         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
14213         `$@' is valid only in the build dir, not after we've done 
14214         `cd $srcdir'.  Also use `test -f' instead of less portable
14215         `test -e'.
14216
14217 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
14218
14219         * gtk/gtktext.c (correct_cache_insert): Rewrite
14220          for simplicity, and hopefully correctness.
14221          (Fixes bug #1322, which was a segfault when
14222           on some insertions with the properties around
14223           the insertion set up just wrong.)
14224
14225         * gtk/gtktext.c (gtk_text_adjustment): When we receive
14226          a "changed" signal, clamp the new value to the adjustment
14227          bounds to avoid segfaulting if someone tries to change
14228          the adjustment to a bogus value. (Bug #1795)
14229
14230 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14231
14232         * gtk/gtkmain.c: Ignore unexpected destroy notifies
14233         for children, for toplevel windows handle them
14234         like delete_event.
14235
14236         * gtk/gtkplug.c: Add an unrealize handler so that
14237         we unref plug->socket_window when we are done
14238         with it.
14239
14240 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
14241
14242         * gtk/gtktext.c (clear_area): Fix stupid signedness
14243          problem that was causing background to sometimes
14244          be misaligned.
14245
14246 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
14247
14248         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
14249         
14250         * gtk/gtkmenu.c (gtk_menu_position): Make
14251          sure we never position menus with negative x, y,
14252          since gtk_widget_set_uposition() can't handle that.
14253
14254         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
14255          Modify the positioning code a bit so that we always
14256          put the top-left corner onscreen. (This is for
14257          UI reasons, gtk_menu_position() now takes care of
14258          gtk_widet_set_uposition() brokeness.)
14259
14260 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
14261
14262         * gtk/Makefile.am: fixed up things for -jx, x > 1.
14263
14264 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
14265
14266         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
14267           RC style that is passed in. The lack of the ref
14268           before was a bug. If people worked around this
14269           bug, this will introduce a slight memory leak
14270           in their code. The code should typically look like:
14271
14272             rc_style = gtk_rc_style_new ();
14273             [...]
14274             gtk_widget_modify_style (widget, rc_style);
14275             gtk_rc_style_unref (rc_style);
14276
14277         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
14278           the style if it was already set.
14279
14280         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
14281           style if it was set before.
14282
14283 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14284
14285         * gtk/testgtk.c (main): Add a check to see if we
14286           are being run from the correct directory and
14287           to quit nicely if we are not.
14288
14289         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
14290           static.
14291
14292 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
14293
14294         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
14295
14296         * gtk/gtkwindow.c:
14297         queue resizes unconditionally (gtk_widget_queue_resize will figure
14298         what to do if the window is not realized).
14299         (gtk_window_move_resize): only recenter the window
14300         for GTK_WIN_POS_CENTER_ALWAYS.
14301         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
14302         the same way as GTK_WIN_POS_CENTER.
14303
14304 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
14305
14306         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
14307         with (!(info->last_flags & GDK_HINT_POS)) instead of
14308         (!info->last_flags & GDK_HINT_POS).
14309
14310         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
14311         new_height unconditionally, because we use these values even if
14312         !default_size_changed && !hints_changed.
14313         comented the (default_size_changed || hints_changed) case with
14314         respect to resize rejects from the window manager.
14315
14316         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
14317         in the zvt condition hack, since this includes the window hints, set
14318         the hints after the handling_resize case.
14319
14320         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
14321         window is initially shown with to the geometry.
14322
14323 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
14324
14325         * gtk/gtkwindow.c (gtk_window_move_resize):
14326         s/size_changed/default_size_changed/g so i know what's
14327         really going on (frying brain on smaller flame now).
14328
14329 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
14330
14331         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
14332         we have size_changed upon handling_resize. this is a gross
14333         workaround for the broken zvt widget and should be removed in
14334         1.3 again (search for FIXME).
14335         Owen provided an accurate comment for this:
14336
14337         /* We could be here for two reasons
14338          *  1) We coincidentally got a resize while handling
14339          *     another resize.
14340          *  2) Our computation of size_changed was completely
14341          *     screwed up, probably because one of our children
14342          *     is broken. It's probably a zvt widget.
14343          *
14344          * For 1), we could just go ahead and ask for the
14345          * new size right now, but doing that for 2)
14346          * might well be fighting the user (and can even
14347          * trigger a loop). Since we really don't want to
14348          * do that, we requeue a resize in hopes that
14349          * by the time it gets handled, the child has seen
14350          * the light and is willing to go along with the
14351          * new size. (this happens for the zvt widget, since
14352          * the size_allocate() above will have stored the
14353          * requisition corresponding to the new size in the
14354          * zvt widget)
14355          *
14356          * This doesn't buy us anything for 1), but it shouldn't
14357          * hurt us too badly, since it is what would have
14358          * happened if we had gotten the configure event before
14359          * the new size had been set.
14360          */
14361
14362 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
14363
14364         * gtk/gtkrc.c: deal properly with the fact that RC
14365           style lists may include rc styles more than once.
14366
14367         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
14368           unused static function.
14369
14370         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
14371           stack of directories of RC files currently being
14372           parsed and implicitely add them to pixmap path.
14373           
14374           This fixes a bug where the directory would get
14375           appended then overwritten by pixmap_path declarations.
14376
14377           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
14378
14379         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
14380           theme's exit function. (Patch from Peter Wainwright,
14381           bug #1454)
14382
14383         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
14384           Add a destroy() handler to take care of removing
14385           group for menu item. (Fixes bug #1197)
14386
14387         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
14388           in warning message.
14389
14390 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
14391
14392         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
14393         roundtrip to figure window's width and height, since we know that
14394         anyways from widget->allocation.
14395
14396 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
14397
14398         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
14399           the hints after we request the new size.
14400
14401 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
14402
14403         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
14404           GTK_WIDGET_REALIZED() assertion - we can compute the
14405           hints before we are realized.
14406
14407         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
14408           hint changing so that we have a value of hints_changed
14409           when we decide whether to constrain the window size.
14410
14411         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
14412
14413         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
14414         change back to G_MAXINT.
14415
14416 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
14417
14418         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
14419         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
14420         contain uncluttered values.
14421         (gtk_window_compute_hints): simply assert that window is realized
14422         and that geometry_info is valid, since we rely on this anyways.
14423         (gtk_window_constrain_size): major cleanups to the code.
14424         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
14425         for the base size, instead of the minimums. use 32767 as max width
14426         and height (like in gtkwindow.c) instead of G_MAXINT.
14427
14428 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
14429
14430         * cleaned up the GtkContainer.need_resize flag handling mess, we
14431         only need to force resize requests when we were prematurely
14432         realized, or our widget tree was modified when we were temporarily
14433         hidden. handling these cases directly upon showing the window (i.e.
14434         while the GdkWindow is still unmapped) avoids the need to wait for
14435         a configure event response and therefore makes the GUI more snappier
14436         and avoids blank windows during the roundtrip.
14437
14438         * gtk/gtkwidget.c:
14439         (gtk_widget_hide): 
14440         (gtk_widget_show): don't queue resizes on toplevels, they know how
14441         to deal with matters.
14442
14443         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
14444         flag directly for not visible resize containers and spare us unecessary
14445         signal emissions.
14446
14447         * gtk/gtkwindow.c:
14448         (gtk_window_realize): if we need to enforce premature size allocation,
14449         queue a container resize so we are correctly resized later on.
14450         (gtk_window_init):
14451         (gtk_window_size_request):
14452         don't freak around with the ->need_resize flag,
14453         gtk_container_queue_resize() will care about that.
14454         (gtk_window_show):
14455         handle initial resizing issues here, we can handle matters better in
14456         this place, especially since we know that our GdkWindow is still
14457         unmapped.
14458         (gtk_window_move_resize):
14459         don't care about ->need_resize at all.
14460         handle size changes properly that occoured while we waited for a
14461         configure event.
14462
14463 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
14464
14465         * gtk/gtkwidget.c (gtk_widget_set_uposition):
14466         * gtk/gtkwindow.[hc] (gtk_window_reposition):
14467         Move the hint setting code from gtk_widget_set_uposition
14468         to here; set the hints so that we respect any previously
14469         set geometry hints.
14470
14471         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
14472         change the window hints here or move the window here,
14473         let that happen in gtk_window_move_resize().
14474
14475 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
14476
14477         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
14478         to already queued resizes (and therefore redraws) on a widget, check
14479         its anchestry as well.
14480
14481         * gtk/gtkcontainer.c:
14482         (gtk_container_queue_resize): clear resize widgets for resize
14483         containers before aborting prematurely. this is especially important
14484         for toplevels which may need imemdiate processing or their resize
14485         handler to be queued.
14486         (gtk_container_dequeue_resize_handler): added new internal function for
14487         gtkwindow.c.
14488
14489         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
14490         configure event, take possible changes in window position into account
14491         as well.
14492         if we request a new window size, queue up a resize handler that will
14493         last until the configure event response arrives.
14494         combined the ->need_resize case (initial show) with the general size
14495         (hints) changed case and added even more comments.
14496         if !auto_shrink, only revert to the old allocation if the new size
14497         is smaller than the current allocation.
14498
14499 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
14500
14501         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
14502                            gtk_window_set_geometry_hints
14503                            gtk_window_set_default_size):
14504         When hints are set, queue a resize so that the hints will
14505         be eventually reset on the toplevel.
14506
14507         * gtk/gtkwindow.c (gtk_window_show): Use
14508         gtk_window_compute_default_size(). Clear the need_resize flag
14509         on the initail map so that we don't unnecessarily trigger the
14510         resize code.
14511
14512         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
14513         into separate functions. Compare the hints we are setting
14514         with what we set last time so that we can accurately
14515         tell when we need to reset the hints.
14516
14517         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
14518         function to figure out the size from requisition
14519         and default_size.
14520
14521         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
14522         from fvwm to constrain a size to the geometry hints.
14523
14524         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
14525         to compare two sets of geometry hints.
14526
14527         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
14528         from gtk_window_set_hints(), just compute the hints,
14529         don't set them.
14530
14531         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
14532         code from gtk_window_move_resize() to separate function,
14533         rationalize a bit.
14534
14535 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
14536
14537         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
14538         structure into a new private structure.
14539
14540         * gtkrc.c: Split GtkRcStyle into public/private.
14541         In the private part, add a list of pointers to the
14542         RcStyle lists this RcStyle participates in.
14543
14544         * gtkrc.c: When a RcStyle is free, remove all
14545         lists referencing it from the 
14546         realized_style_ht hash, and free those lists.
14547         
14548         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
14549         gtk_rc_init(), since that adds the default styles
14550         to the list of parsed RC files again.
14551
14552         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
14553         
14554 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
14555
14556         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
14557         checks that ensure that a widget's allocation is at least 1 in width
14558         and height. (GNOME note: this doesn't affect old panel code anymore,
14559         because GtkSocket will request width and height of at least 1 since
14560         Fri Jul 23).
14561
14562         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
14563         allocated yet (happens if the user realizes the window prematurely),
14564         size request and allocate it.
14565         (gtk_window_size_allocate): guard against guint underflows.
14566
14567 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
14568
14569         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
14570         in gtk_built_sources, so gtk.defs gets built prior to all other
14571         sources.
14572
14573 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14574
14575         * gtk/Makefile.am:
14576         invoke indent on gtkmarshal.*. 
14577         rewrote source generation rules, use COPYING as oldest source tag for
14578         a piggyback rule to generate all sources from (don't touch it ;).
14579         major cleanups, strip spaces on build rules for GNU Make.
14580
14581         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
14582         source and target files from commandline arguments. don't invoke indent.
14583
14584 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
14585
14586         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
14587         notebook after switch to avoid drawing problems.
14588         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
14589         
14590         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
14591         show them instead. 
14592         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
14593
14594 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
14595
14596         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
14597         notebook after switch to avoid drawing problems.
14598         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
14599         
14600         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
14601         show them instead. 
14602         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
14603
14604 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
14605
14606         * gtk/gtkwindow.c:
14607         we use window->need_resize from configure_event now, to indicate that
14608         the gtkwindow should keep its allocation (e.g. because the user resized
14609         the window through window manager handles). resize_count is now reliably
14610         used to figure whether we got the allocation we requested from the
14611         window manager.
14612         configure events get queued as resizes now, the real stuff (size
14613         computation and allocation) now only goes on in gtk_window_move_resize().
14614         GtkWindow's requisition now contains its *real* requisition (like all
14615         other widgets), *not* taking usize into account.
14616         geometry_info->last_{width|height} is now updated from set_hints() only
14617         so it always contains the last hints we set for the window manager.
14618         made some event handlers return TRUE instead of FALSE.
14619         the overall code should be much more straight forward now, and the
14620         significant code portions are accompanied by comments now.
14621         (gtk_window_set_hints):
14622         removed requisition argument and made it
14623         fetch the requisition through gtk_widget_get_child_requisition.
14624         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
14625         does that now.
14626         (gtk_window_show):
14627         ensure that the widget is realized before calling 
14628         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
14629         ensure that we got properly size requested and allocated before
14630         realization.
14631         (gtk_window_configure_event):
14632         ignore plain window moves, or reallocate the widget tree through the
14633         resize queue otherwise.
14634         (gtk_window_move_resize):
14635         mostly rewrote this function to figure window manager hints more
14636         reliably, coalesce window moves and resizes to reduce configure events
14637         and do actuall size allocations.
14638
14639 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
14640
14641         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
14642         that have a resize pending, because a redraw is already queued for them.
14643
14644         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
14645         hack to clear resize_widgets.
14646
14647         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
14648         for resize containers prior to size allocation. (this is also a bit
14649         ugly, but avoids side effects for stopped emissions and is thus more
14650         reliable).
14651         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
14652
14653         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
14654         function from gtk_tooltips_expose, as we connect to ::expose_event
14655         *and* ::draw now.
14656
14657 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
14658
14659         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
14660         checks.
14661         (gtk_target_list_unref): Likewise.
14662
14663         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
14664
14665 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
14666
14667         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
14668         guard against division by zero. (Fixes bug #1339)
14669
14670 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
14671
14672         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
14673         Prevent the trivial leak of information of allowing
14674         word motion when the entry is not visible.
14675
14676 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
14677
14678         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
14679         modality to error dialog as well as confirmation dialogs.
14680         (Bug #1803, reported by Rosanna Wing Sze Yuen)
14681
14682 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
14683
14684         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
14685         tree->view_lines.
14686         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
14687
14688         * gtk/Makefile.am (install-data-local): Solaris apparently
14689         has various troubles with ln -f; use rm first instead.
14690         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
14691
14692 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
14693
14694         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
14695         use `cp' followed by `rm' (the `rm' was already there).
14696
14697 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14698         
14699         * configure.in: Fix autoconf warnings about cross compilation by
14700         trying to provide sane defaults for AC_TRY_RUN.
14701         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
14702         put them into $(srcdir) when generated. Also add a dependency of
14703         gtksignal.h on gtkmarshal.h for -j builds. 
14704         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
14705
14706 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
14707
14708         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
14709         GDK_THREADS_{LEAVE,ENTER} pair.
14710         (From Paul Fisher <pnfisher@redhat.com>)
14711
14712 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
14713
14714         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
14715         width and height are always >0 (owen).
14716
14717 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
14718
14719         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
14720         change that assured that a widget's allocated with and height are
14721         always >1, since this breaks *buggy* panel code. unfortunately this
14722         back-breaks the gimp's color selector.
14723
14724         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
14725         allocation is always >0 in width and height, before sending the
14726         configure event; this is a *gross* hack to get the gimp back to work.
14727         
14728         * marked both cases with TODO-1.3
14729
14730 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
14731
14732         * gtk/gtktext.c: Don't display wrap indicators when
14733         text is not editable and word wrap is on.
14734
14735 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
14736
14737         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
14738         option menus here as they are not derived from menu shell, assure that
14739         the option menu has a menu we can add items to.
14740
14741 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
14742
14743         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
14744         width/height to (gint) before calculations and check against < 0 to
14745         avoid guint wraparounds.
14746
14747 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
14748
14749         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
14750         width and height is never zero. sanity check both dimensions against
14751         32767 and issue a warning if the allocation is greater than that.
14752
14753 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
14754
14755         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
14756         to g_main_pending() as well.
14757
14758 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
14759
14760         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
14761         call to g_main_iteration() - since that will regrab
14762         GTK+ lock to process events.
14763
14764 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
14765
14766         * gtk/gtkwindow.c
14767         - Regularize with the rest of GTK+ by making widget->requisition
14768           not reflect the set_usize()
14769         - Always recompute geometry hints, then check if they
14770           changed before sending them to the X server. The
14771           previous checks for changes would fail in a number
14772           of circumstances. 
14773
14774 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
14775
14776         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
14777
14778 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
14779
14780         * gtk/gtkdnd.c:
14781         - Code cleanups
14782         - Instantaneously update on modifier key presses
14783         - Allow cancellation of the drag with Escape.
14784
14785 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
14786
14787         * gtk/testgtk.c (create_handle_box): Set the policy
14788         to auto_shrink - otherwise the appearance is rather
14789         strange when flipping between horizontal and vertical.
14790
14791 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
14792
14793         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
14794         (gtk_window_set_default_size): don't change a value if it's < 0.
14795         queue a resize.
14796
14797 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
14798
14799         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
14800
14801 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
14802
14803         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
14804         add an extra "/" when concating "/" + filename.
14805         (From Matt Grossman <mattg@oz.net>)
14806
14807 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
14808
14809         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
14810         for fg_gc if we set it for drawing pixmap.
14811
14812 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
14813
14814         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
14815         
14816         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
14817         already set, call old engine's destroy function and
14818         unref the old engine.
14819
14820 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
14821
14822         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
14823
14824 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
14825
14826         * gtk/gtkaccelgroup.h: mark certain functions as internal.
14827
14828 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
14829
14830         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
14831         expand behaviour changed.
14832
14833         * gtk/gtklabel.c (gtk_label_set_pattern):
14834         (gtk_label_set_justify):
14835         (gtk_label_set_line_wrap):
14836         don't bother invoking queue_clear, the reallocation does
14837         that for us, always free_words so the upcoming resize will
14838         relayout the label's contents.
14839
14840 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
14841
14842         * applied argument implementation patches from Elena Devdariani
14843         <elena@cogent.ca>.
14844
14845         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
14846         ::space_style, ::relief
14847         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
14848         * gtk/gtkpreview.c: ::expand
14849         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
14850         * gtk/gtknotebook.c: ::homogeneous
14851         * gtk/gtklabel.c: ::wrap
14852         * gtk/gtklist.c: ::selection_mode
14853         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
14854         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
14855         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
14856         * gtk/gtkclist.c: ::sort_type
14857         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
14858         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
14859
14860 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
14861
14862         * gtk/gtkstyle.c: Removed ill-thought-out part of last
14863         comment.
14864
14865 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
14866
14867         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
14868         counting right when we have to attach a new style
14869         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
14870
14871         * gtk/gtkstyle.c: Documented the refcounting
14872         peculularities of gtk_style_attach.
14873
14874 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
14875
14876         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
14877         window types.
14878
14879         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
14880         of GTK_TOPLEVEL for creating the window.
14881
14882 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
14883
14884         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
14885         the last argument (reported by Per Winkvist).
14886         
14887 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
14888
14889         Fixes for invisible XOR lines (Frank Loemker
14890         <floemker@TechFak.Uni-Bielefeld.DE>)
14891         
14892         * gtk/gtkclist.c (gtk_clist_realize): Always use
14893         a non-zero pixel for GDK_XOR.
14894
14895         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
14896         Use GDK_INVERT instead of GDK_XOR.
14897
14898 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
14899
14900         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
14901         signals if h/voffsets differ from adjustment values.
14902         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
14903
14904 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
14905
14906         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
14907         ::selection-done emissions up to the topmost menu shell.
14908
14909 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
14910
14911         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
14912         the user data on the window before destroying it.
14913
14914         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
14915         unrealize handler to take care of destroying 
14916         notebook->panel properly. 
14917         (Bug #1198 - Morten Welinder <terra@diku.dk>)
14918
14919         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
14920         of g_new and g_realloc to stop memory leak. (Actually,
14921         we could just use g_realloc(), but I'm not 100% sure
14922         that is portable).
14923         (Bug #1196 - Morten Welinder <terra@diku.dk>)
14924
14925 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14926
14927         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
14928
14929         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14930         for fontsets.
14931
14932         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
14933         with bin/button confusion.
14934
14935 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
14936
14937         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
14938         and show how preselection of radio items is done.
14939
14940 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
14941
14942         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
14943         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
14944         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
14945         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
14946         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
14947         * gtk/gtktable.c (gtk_table_attach): 
14948         * gtk/gtklist.c (gtk_list_insert_items): 
14949         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
14950         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
14951         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
14952         * gtk/gtkbin.c (gtk_bin_add): 
14953         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
14954         * gtk/gtkfixed.c (gtk_fixed_put): 
14955         * gtk/gtklayout.c (gtk_layout_put):
14956         general fixups to container_add logic. always realize child if
14957         child->parent is realized, only map the child and queue a resize
14958         if child and child->parent are both visible.
14959
14960 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
14961
14962         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
14963         instead of gtk_container_foreach to walk and unrealize children, so
14964         composite children get also unrealized.
14965         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
14966         (gtk_widget_map): assert that the widget is visible (basic constrain).
14967         (gtk_widget_real_map): assert that the widget is realized (basic
14968         constrain).
14969
14970 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
14971
14972         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
14973
14974 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
14975
14976         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
14977         file for iso-8859-2 locales.
14978
14979         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
14980
14981 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
14982
14983         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
14984          (Pointed out by andy@rz.uni-karlsruhe.de and others).
14985          Remove some suspicious and useless lines. 
14986
14987 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
14988
14989         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
14990         width,height = 0, 0 to mean - here to edge of window,
14991         instead of -1, -1, since the former is all we support.
14992
14993 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
14994
14995         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
14996         when removing from quit_functions list.
14997
14998 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
14999
15000         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
15001
15002 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
15003
15004         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
15005          When redrawing characters on non-visible entry, use appropriate
15006          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
15007
15008 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
15009
15010         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
15011         from drag coordinates.
15012         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
15013         use drag_dest_cell.
15014
15015         * gtk/gtktree (drag_dest_cell)
15016         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
15017         (Bug #1129)
15018
15019 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
15020
15021         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
15022         translate_* fields.
15023         (gtk_item_factory_finalize): invoke translate_notify independant from
15024         translate_data.
15025         (gtk_item_factory_set_translate_func): likewise.
15026         (gtk_item_factory_destroy): only remove ifactory pointer from those
15027         widgets that belong to us (stupid me).
15028
15029 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
15030
15031         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
15032         rc_style list when lookup succeeeds.
15033
15034 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
15035
15036         * gtk/gtkctree.c (resync_selection): 
15037         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
15038         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
15039         bug.
15040
15041 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
15042
15043         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
15044         Add some missing GDK_THREADS_ENTER()/LEAVE around
15045         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
15046
15047 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
15048
15049         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
15050         rather than emit_by_name.
15051
15052         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
15053         on the widget across multiple signal emissions.
15054         (gtk_editable_delete_text): same here.
15055         (gtk_editable_class_init): set widget_class->activate_signal after
15056         editable_signals[ACTIVATE] has been created.
15057
15058 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
15059
15060         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
15061         position here prematurely -- we might not have the
15062         right ->min_position and ->max_position yet.
15063
15064 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15065
15066         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
15067         Add error traps so if the other end of the connection
15068         dies, we survive.
15069
15070         * gtk/gtkselection.c (gtk_selection_notify): Clean
15071         up properly when selection property retrieval fails.
15072         
15073         * gtk/gtkselection.c (gtk_selection_request): Correctly
15074         reject SelectionRequest notifies where the handler
15075         returns no data.
15076
15077 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15078
15079         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
15080         when we've previously highlighted.
15081
15082         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
15083         emit two "drag_leave" signals for Motif drops.
15084
15085         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
15086         back the correct status messages when dropping from
15087         Motif onto a proxy window that is rejecting the
15088         drop.
15089
15090 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
15091
15092         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
15093         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
15094         to compare two argument values. added gtk_arg_to_valueloc() to set a
15095         variable from an arg through its location (pointer).
15096
15097         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
15098         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
15099         as gfloat*, uchars are collected as guchar*, ints are collected as
15100         gint*, etc...
15101
15102 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
15103
15104         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
15105         Include <string.h> instead of <strings.h>.
15106
15107         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
15108         (actually, a lot more duplicate includes occur if
15109          you trace through the sequence of #include's)
15110         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
15111         
15112 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15113
15114         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15115         gtk-a-higuti-990322-[0-3]
15116
15117         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15118         that was causing -DX_LOCALE not to work.
15119
15120         * gtk/gtkrc.c (gtk_rc_init):
15121         X_LOCALE will never have LC_MESSAGES defined
15122
15123 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
15124
15125         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
15126         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
15127
15128         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
15129         left/right as well (gtk-michael-980726-0.patch.gz).
15130
15131         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
15132         for pointer values, use gchar instead of char. fixed uline allocation
15133         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
15134         chunks instead of G_ALLOC_ONLY.
15135         (gtk_label_size_request): always alter requisition as passed and leave
15136         widget->requisition alone.
15137         (gtk_label_set_text): allow NULL strings.
15138         (gtk_label_new): likewise.
15139
15140 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
15141
15142         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
15143
15144 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
15145
15146         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
15147         *and* mapped (i.e. drawable).
15148         (gtk_bin_expose): only send exposes to drawable children.
15149
15150         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
15151         (gtk_box_expose): only send exposes to drawable children.
15152
15153         * gtk/gtkhscale.c (gtk_hscale_draw): 
15154         * gtk/gtkvscale.c (gtk_vscale_draw):
15155         hm, this is an ugly one. we first compute the size of our trough area
15156         here (window relative) and then check intersection with the draw_area
15157         which is parent relative because we're a NO_WINDOW widget, so we need
15158         to offset the trough area by allocation.x and allocation.y before the
15159         check. (this must not be done for the background area though, since
15160         that's already computed parent relative).
15161
15162 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
15163
15164         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
15165         unrealize title buttons.
15166
15167 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
15168
15169         * gtk/gtkclist.c (gtk_clist_column_title_passive)
15170         (gtk_clist_column_title_active): 
15171         only connect/disconnect to GtkWidgetClass::event to block mouse events.
15172
15173         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
15174         zero initialize event, removed superfluous gdk_window_get_pointer call
15175
15176         * gtk/gtklist.c (gtk_list_vertical_timeout)
15177         (gtk_list_horizontal_timeout): removed superfluous
15178         gdk_window_get_pointer call
15179
15180 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15181
15182         * plugging problems reported by "Bruce Mitchener, Jr."
15183         <bruce@puremagic.com> due to a purify session.
15184
15185         * gtk/gtkstyle.c:
15186         (gtk_style_ref): 
15187         (gtk_style_unref): assert ref_count to be > 0.
15188
15189         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
15190         the requisition.
15191         (gtk_clist_set_shift): likewise.
15192
15193         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
15194         adjustments.
15195
15196         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
15197         event before sending it and set send_event to TRUE (which needs to
15198         be done for *all* synthesized events).
15199         (gtk_list_vertical_timeout): likewise.
15200
15201         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
15202         leaks.
15203
15204         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
15205         to TRUE when synthesizing events.
15206
15207 [ *** end of merges from 1.2 *** ]      
15208         
15209 1999-11-21  Tor Lillqvist  <tml@iki.fi>
15210
15211         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
15212         (or copied from gdkconfig.h.win32 on Win32, sigh).
15213
15214         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
15215
15216         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
15217
15218         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
15219
15220         * gdk/gdkconfig.h.win32: New file.
15221
15222         * gdk/win32/makefile.cygwin: Build just a static archive here.
15223
15224         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
15225         for the DLL from the static archive built above.
15226
15227         * gdk/gdk.def: Moved here from the win32 subdirectory.
15228
15229         * gdk/win32/*: Adapt for the changed private struct organisation.
15230
15231         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
15232
15233 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
15234
15235         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
15236         for wheel mice (buttons 4 and 5).
15237
15238 1999-11-18  Tor Lillqvist  <tml@iki.fi>
15239
15240         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
15241         drawables use just the pixel field in the foreground and
15242         background GdkColor of the GdkGC.
15243
15244         gdk_gc_set_{fore,back}ground() are called in the GIMP with
15245         GdkColors containing uninitialized (red,green,blue) fields, and
15246         just the pixel field filled in, and furthermore in the
15247         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
15248         It thus turns out that we really don't need to have the full
15249         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
15250         it later to have just the pixel values.
15251
15252 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
15253
15254         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
15255
15256 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
15257
15258         * docs/gtkfaq.sgml: threads example from Erik Mouw.
15259         New question on GtkLabel background colors.
15260
15261         * docs/gtk_tut.sgml:
15262           - Correct the example code callback
15263             function definitions.
15264           - Update the gtkdial example code, from Frans van Schaik.
15265           - Update setselection.c to current API.
15266
15267         * examples/Makefile examples/*/*.c: Update to code
15268         listed in tutorial.
15269
15270 1999-11-10  Tor Lillqvist  <tml@iki.fi>
15271
15272         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
15273         subrange table (from the "Developing International Software for
15274         WIndows 95 and Windows NT" book) was missing the Hangul syllable
15275         block... Get the loaded font's charset correctly.
15276
15277         (Note that this, and the other *-win32.c files, still really are
15278         the old ones, the win32 subdirectory is not ready for compilation
15279         yet after the reorg.)
15280
15281 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
15282
15283         * gtk/gtkclist.c: Fix off-by-one bug in parameter
15284         check.
15285
15286 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
15287
15288         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
15289         on results of XQueryDeviceState().
15290
15291 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
15292
15293         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
15294         we need to accesss only ->children. We need an accessor
15295         for the children.
15296
15297         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
15298         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
15299         to get rid of gdkx.h include.
15300         
15301         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
15302         and random references to 'None'.
15303
15304         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
15305         Get rid of unused #include <gdk/gdkx.h>
15306
15307         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
15308         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
15309         gdkconfig.h.
15310
15311 1999-11-08  Tor Lillqvist  <tml@iki.fi>
15312
15313         * gdk/win32/gdkdraw.c
15314         * gdk/win32/gdkfont.c
15315         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
15316         following yesterday's changes. (Unrelated to Owen's reorg.)
15317
15318 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
15319
15320         * gdk/x11/gdkinput-gxi.c: Add missing include,
15321           fix GdkWindowPrivate => GdkDrawablePrivate.
15322
15323         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
15324
15325         * gdk/x11/Makefile.am (xinput_sources): Add missing
15326         backslash to fix building with --with-xinput=none
15327
15328 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
15329
15330         Move all X specific code into the x11/ directory.
15331         Aside from shuffling things around, did the following:
15332
15333        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
15334          gdk_arg_context_* - a simple argument parsing system
15335          in the style of popt.
15336
15337        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
15338          gdk/x11/gdkprivate-x11.h:
15339          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
15340          add ->klass and ->klass_data fields. The klass_data
15341          field points to an auxilliary structure that is
15342          windowing system dependent.
15343
15344        * gdk/gdkfont.c: Make most of the measurement functions
15345          simply wrappers around gdk_text_extents().
15346
15347        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
15348          _gdk_font_strlen() function that hides the weird
15349          behavior in gtk+-1.[02] where a string is interpreted
15350          differently for 8-bit and 16-bit fonts.
15351
15352        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
15353          to store common code for synthesizing double/triple
15354          press events.
15355         
15356        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
15357          Make all the function that modify an existing GC
15358          simply wrappers around gdk_gc_set_values().
15359          
15360        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
15361          for throwing out later.
15362
15363        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
15364          GdkImagePrivate and GdkColormapPrivate to have a
15365          windowing system dependent part (GdkFontPrivateX etc.)
15366          that "derives" from the system-independent part.
15367
15368        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
15369          Got rid of the included-source-files for XInput in
15370          favor of automake conditionals. (Which didn't exist
15371          when XInput support was originally added.)
15372
15373        * gdk/gdkrgb.c: Remove the visual id from the debugging
15374          statements since that is X11 specific; print out
15375          type/depth info instead.
15376          
15377
15378 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
15379
15380         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
15381         loading duplicates of hashed fonts.
15382
15383         * gdk/gdk.c (gdk_keysym_convert_case): rename
15384         gdk_XConvertCase to gdk_keysym_convert_case, allow
15385         results to be NULL in the GTK+ style.
15386
15387         * gdk/gdkcompat.h: Started compatibility header
15388         for renames.
15389
15390 1999-11-07  Tor Lillqvist  <tml@iki.fi>
15391
15392         * gdk/win32/gdkprivate.h: New font private structures, related to
15393         fontsets.
15394
15395         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
15396         gdk_font_list_free(). On X11, will just be wrappers to
15397         XListFonts() and XFreeFontNames(). On Win32, the code previously
15398         in gtkfontsel.c is now here.
15399
15400         New function gdk_font_xlfd_create(). On X11 will get the FONT
15401         property of the font (for GDK_FONT_FONTs), or call
15402         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
15403         builds a XLFD style name from the font information in the LOGFONT
15404         struct(s).
15405
15406         New function gdk_font_xlfd_free(), which correspondingly frees the
15407         string returned by gdk_font_xlfd_create().
15408
15409         Implement fontsets on Win32. Add a function that iterates over a
15410         wide char string and calls a callback function for each substring
15411         of wide chars from the same Unicode subrange (and thus probably
15412         available in the same real font).
15413
15414         Improve the XLFD emulation a bit.
15415
15416         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
15417
15418         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
15419         Beta3, WM_IME_CHAR messages don't seem to contain the composed
15420         multi-byte char as with the Active IMM on Win9x. Oh well, handle
15421         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
15422         ImmGetCompositionStringW() to get the composed Unicode chars.
15423
15424         * gdk/win32/gdkgc.c
15425         * gdk/win32/gdkdraw.c: Changes needed because of the font private
15426         struct changes.
15427
15428         * gdk/win32/gdk.def: Add the new functions.
15429
15430 1999-11-04  Tor Lillqvist  <tml@iki.fi>
15431
15432         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
15433         get the Platform SDK to get <dimm.h>.
15434
15435         * gdk/win32/gdkevents.c: More event handling fixes and
15436         simplification. Never generate motion events with is_hint true. We
15437         used to do that on bogus grounds earlier. Windows sends
15438         WM_MOUSEMOVE messages on button events even if the mouse hasn't
15439         moved, ignore these.
15440
15441         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
15442
15443         * gdk/win32/gdkglobals.c
15444         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
15445         the TrackMouseEvent function, and use it.
15446
15447         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
15448         char before calling WideCharToMultiByte in order to get a string
15449         for the window title.
15450
15451         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
15452
15453         * gdk/win32/gdk.def: Remove obsolete functions.
15454
15455         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
15456         /nodefaultlib and /defaultlib switches.
15457
15458         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
15459
15460 1999-10-31  Tor Lillqvist  <tml@iki.fi>
15461
15462         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
15463         EuroSign).
15464
15465         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
15466         same type as GdkWChar, especially on Win32.
15467
15468         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
15469
15470         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
15471         before passing to Windows GDI for drawing etc. Convert to the
15472         system default codepage before passing to Windows as window
15473         titles.
15474
15475         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
15476         support changing input locale on the fly.
15477
15478         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
15479         on-the-fly changes. Convert incoming characters from the current
15480         codepage to Unicode (and then to a UTF-8 multi-byte string) based
15481         on the current input language. Use keysym<->Unicode mapping tables
15482         and functions borrowed from xterm sources.
15483
15484         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
15485         editions of Win9x, use the ActiveX-based Active IMM (Input Method
15486         Manager) if available. IMEs and the Active IMM are available under
15487         the disguise of Chinese, Korean and Japanese support for IE and
15488         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
15489         support is present in all editions (as long as you install it).
15490
15491         Call DispatchMessage from gdk_events_queue() (and thus
15492         gdk_WindowProc()), instead of duplicating the code in
15493         gdk_WindowProc().
15494
15495         Reworked the grab handling and propagation code, factored out
15496         duplicated code snippets into separate functions. Other cleanups,
15497         too.
15498
15499         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
15500         the <dimm.h> header describing the Active IMM.
15501
15502         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
15503         just do the same as for "single" fonts.
15504
15505         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
15506         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
15507         the new keysyms from gdkkeysyms.h.
15508
15509         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
15510         fontset, so that gtkentry uses wide characters.
15511
15512         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
15513         GTk+'s system directory "gtk+", not "gtk".
15514
15515 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
15516
15517         * docs/gtkfaq.sgml: FAQ update
15518
15519 1999-10-21  Tor Lillqvist  <tml@iki.fi>
15520
15521         * gdk/win32/gdkprivate.h: Add more font private data.
15522
15523         * gdk/win32/gdkfont.c
15524         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
15525         fonts and strings. Now works much better. You still have to
15526         have a correct font selected, though. No fontset emulation yet.
15527
15528 1999-10-19  Tor Lillqvist  <tml@iki.fi>
15529
15530         * gtk/maketypes.awk: Use G_OS_WIN32.
15531
15532         * gtk/gtk.def: Add some missing entry points. Also some non-public
15533         ones, but PyGTK porter claims to need them.
15534
15535         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
15536         built-in type generation.
15537
15538 1999-10-14  Tor Lillqvist  <tml@iki.fi>
15539
15540         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
15541         GDK_FONT_FONT fonts (which is all we have for now, we don't
15542         emulate fontsets). The X11 version uses plain XDrawString in that
15543         case, too. The string passed to gdk_draw_text_wc seems to be in
15544         fact (at least, when used by gtkentry and gtktext) either in a
15545         single-byte charset, or a DBCS. Not Unicode.
15546
15547         This fixes the problem in gtkfontsel, where even if you had
15548         selected a font with a non-Latin1 charset (windows-greek, for
15549         instance), the preview still used Latin-1 glyphs.
15550
15551         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
15552         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
15553         (gdk_font_load): Recognize the demibold etc weights, even if we
15554         don't have the corresponding constants in the headers.
15555         (gdk_font_hash_insert): Use same hash mechanism as in the X11
15556         version. Should save font resources a bit, when we don't have
15557         multiple HFONTs for the same font.
15558
15559         * gdk/win32/gdkprivate.h: Add the names field as in the X11
15560         version.
15561
15562 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
15563
15564         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
15565         X values
15566
15567 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
15568
15569         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
15570         layout support (as mentioned on
15571         http://www.jcinteractive.com/gnome-ui/software/widgets/)
15572
15573 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
15574
15575         * gtk/fnmatch.c
15576         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
15577
15578 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
15579
15580         * configure.in (ALL_LINGUAS): Added Galician (gl)
15581
15582 1999-10-05  Tor Lillqvist  <tml@iki.fi>
15583
15584         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
15585
15586         * gdk/win32/gdkcompat.c: New file, actually provide an
15587         implementation for the deprecated functions. (Just temporarily.)
15588
15589         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
15590
15591         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
15592
15593         * gdk/win32/gdk.def gtk/gtk.def: Updates.
15594
15595 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
15596
15597         * configure.in: Added "uk" to ALL_LINGUAS.
15598         
15599 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
15600
15601         * configure.in: correct checking for BeOS check
15602
15603         * gdk/gdktypes.h
15604         * gtk/fnmatch.c
15605         * gtk/gtkfilesel.c
15606         * gtk/gtkitemfactory.c
15607         * gtk/gtkmain.[ch]
15608         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
15609
15610 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
15611
15612         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
15613         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
15614         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
15615         by Bulgarian). 
15616
15617 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
15618
15619         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
15620         Fix a reference to window_private->destroyed.   
15621
15622         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
15623         (ugly) setting of an internal GdkWindow member to use
15624         a _slightly_ cleaner macro.
15625
15626         * gdk/gdkprivate.h: Split GdkWindowPrivate into
15627         GdkDrawablePrivate and GdkWindowPrivate.
15628         Add extra macros for accessing GDK_DRAWABLE_ components.
15629
15630         * *.[ch]: Massive adjustments for the above, use the
15631         new macros in a lot of places.
15632
15633 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
15634
15635         * gdk/gdktypes.h: Make GdkDrawable the base type,
15636         not GdkWindow.
15637
15638 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
15639
15640         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
15641
15642 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
15643
15644         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
15645
15646 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
15647
15648         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
15649         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
15650
15651         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
15652
15653         * docs/gtk-config.1: Now autogenerated.
15654         * docs/Changes-1.4.txt: started
15655         
15656 1999-10-03  Tor Lillqvist  <tml@iki.fi>
15657
15658         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
15659         to #ifdef also here.
15660
15661         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
15662         Owen did to the X11 backend.
15663
15664         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
15665         ScrollWindowEx when blitting inside a window, it can't be correct
15666         in the general case.
15667
15668         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
15669         WM_GETMINMAXINFO is easier.
15670
15671         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
15672         depth equal to the bitspixel value, not the visual's depth.
15673
15674         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
15675         to 24 even if the bitspixel value is 32.
15676
15677         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
15678         need to check for depth==32 when bpp==32, depth will always be 24.
15679
15680 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
15681
15682         * docs/Changes-1.4.txt: Started
15683         
15684         * gtk/Makefile.am (gdk_headers): Include all the new headers.
15685
15686         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
15687         
15688         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
15689         into C file.
15690         
15691         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
15692         header to gdkinputprivate.h.
15693
15694         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
15695         unused since before 1.2.
15696
15697 1999-09-30  Tor Lillqvist  <tml@iki.fi>
15698
15699         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
15700         expand possible hex escapes in the font family (put there by
15701         logfont_to_xlfd if the font name isn't a legal XLFD font family,
15702         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
15703         On Win32, add hex escapes here, too.
15704
15705 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
15706
15707         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
15708         to #ifdef GDK_WINDOWING_X11.
15709
15710 [ Merges from gtk-1-2 ]
15711
15712 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
15713
15714         * configure.in: fixed "GNU Make" check to pass with new make version
15715         3.77.95.
15716
15717 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
15718
15719         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
15720         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
15721         AM_PATH_GTK() macros don't get confused by the -pre1.
15722
15723 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15724
15725         * configure.in (REBUILD): Change check for perl5
15726           to check explicitely for v >= 5.002. (5.001
15727           does not work with our scripts.)
15728
15729 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
15730
15731         * configure.in: evaluate $PERL for the perl version check. added
15732         --disable-rebuilds to give the user an option to completely disable
15733         any source autogeneration rules.
15734
15735 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
15736
15737         * configure.in: evaluate $ac_make when checking for GNU Make.
15738
15739 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15740
15741         * docs/Makefile.am: added generation.txt.
15742
15743         * Makefile.am: require automake 1.4, build README from README.in and
15744         INSTALL from INSTALL.in in dist-hook.
15745         
15746         * README.in:
15747         * INSTALL.in: new files to autogenerate README and INSTALL from.
15748
15749         * configure.in: figure whether we have GNU Make
15750
15751         * docs/generation.txt: minor additions/corrections.
15752
15753 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
15754
15755         * docs/gtkfaq.sgml: FAQ Update
15756
15757 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15758         
15759         * configure.in: Fix autoconf warnings about cross compilation by
15760         trying to provide sane defaults for AC_TRY_RUN.
15761
15762 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
15763
15764         * ltconfig
15765         * ltmain.sh: upgrade to libtool 1.3.3
15766
15767 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
15768
15769         * INSTALL: Indicate that the --with-glib= configure
15770         time flag is unsupported.
15771
15772 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
15773
15774         * docs/generation.txt: Added a file that gives
15775         documenation about the autogeneration process for
15776         various autogenerated files.
15777         
15778 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
15779
15780         * configure.in (LIBS): Look for libgmodule in the
15781         right location.
15782
15783 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
15784
15785         * docs/gtk_tut.sgml: Removed references to
15786         code examples in my directory on gtk.org as
15787         they should all be in the tutorial now.
15788
15789         * docs/gtk_tut.sgml: Added sources for dial-test
15790         and scribble-xinput programs that were previously
15791         missing.
15792
15793 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
15794
15795         * TODO: Added entry about menu keyboard navigation, removed
15796         some finished items.
15797
15798 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
15799
15800         * acinclude.m4: Standardize on func_dgettext
15801         not func_gettext, so that the checks for dgettext
15802         actually are paid attention to.
15803
15804 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
15805
15806         * configure.in (LIBS): Add $INTLLIBS into $LIBS
15807         directly, rather than repeating the checks for
15808         gettext.
15809
15810         * INSTALL: Added information about gettext and
15811         NLS support.
15812
15813         * acinclude.m4 (LIBM): Check for dgettext, not
15814         just gettext. This should hopefully fix things wrt
15815         systems with old versions of GNU gettext installed.
15816
15817 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
15818
15819         * configure.in (LIBS): Look for libgmodule in the
15820         right location.
15821
15822 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
15823
15824         * autogen.sh: add --enable-maintainer-mode
15825
15826         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
15827
15828 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
15829
15830         * docs/gtk-config.1.in:
15831           docs/Makefile.am:
15832           configure.in: gtk-config is now generated.
15833
15834         * docs/gtk-config.1: Removed, now generated.
15835
15836 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
15837
15838         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
15839         handle CreateNotify itself, still put out a debuging message for
15840         --gdk-debug=events. made the ReparentNotify debugging message more
15841         verbose.
15842         wrap xcoords translation for ConfigureEvents into an error trap,
15843         a destroy event may already be pending, and in that case, the
15844         actuall coordinate values are not at all critical.
15845
15846 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
15847
15848         * gdk/gdkcc.c: Stop leaking the color_hash all over
15849         the place. Simplify and improve the logic.
15850
15851 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
15852
15853         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
15854         for prototypes and function implementations consistent (reported
15855         by Tomas Ogren).
15856
15857 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
15858
15859         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
15860         send_event set in debugging output.
15861         (gdk_compress_exposures): default initialize the event so we don't
15862         operate on bogus values (namely send_event).
15863
15864 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15865
15866         * gdk/gdkwindow.c: When we receive an unexpected
15867         destroy notify on one of our windows, don't just
15868         warn about it, also mark our windows as destroyed.
15869
15870 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
15871
15872         * gdk/gdkfont.c (gdk_font_hash_insert): Add
15873           name => font and name => fontset hashes. The 
15874           name => fontset hash is a _big_ win since we
15875           weren't previously caching fontsets at all and loading
15876           fontsets is expensive. The name => font hash
15877           is less of a win, but it does save us from doing
15878           repeated XQueryFont calls on the same font.
15879
15880         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
15881           list so we can remove font/fontset from hash.
15882
15883 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15884
15885         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
15886           and slightly confusing test. [ XInternAtom (,,TRUE)
15887           will never return None ].
15888
15889 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
15890
15891         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
15892           gdk/gdkwindow.c (gdk_window_set_hints):
15893
15894         Don't omit setting the properties if flags == 0 -
15895         there may be an existing set of properties there
15896         already. (Very old bug. Would it be better to
15897         delete the property instead?)
15898
15899         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
15900           spelling error in comment.
15901
15902 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
15903
15904         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
15905           to avoid stomping over gdk_error_warnings.
15906
15907         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
15908           as (bits_per_pixel + 7) / 8. This gives the same
15909           result as before for multiples of 8, but actually
15910           a "reasonable" value for 1bit or 4bit displays.
15911
15912 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15913
15914         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
15915         GNU Make.
15916
15917 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15918
15919         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
15920         discarding configure events.
15921
15922 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15923
15924         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
15925         refcount is greater than zero.
15926
15927         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
15928
15929         * gdk/gdkfont.c (gdk_font_unref): Likewise.
15930
15931         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
15932
15933         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
15934
15935 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15936
15937         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
15938         that format 32 => sizeof(item) == 4. It really is
15939         sizeof(long).
15940
15941 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
15942
15943         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
15944         core dump at all on X IO errors, only core dump
15945         if --enable-debug for X errors.
15946
15947 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
15948
15949         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
15950         unknown window:" message. disabled ConfigureNotify discarding code,
15951         because it led to events being processed out of order.
15952
15953 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
15954
15955         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
15956
15957         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
15958         we export this function, supress error warnings and don't reset the
15959         error code in the first half of this function.
15960
15961         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
15962         code (instead of just -1) so gdk_error_trap_pop() reveals something
15963         actually informative about the error that happened.
15964
15965         * gdk/*.c:
15966         don't rely on gdk_error_code being -1 if an error occoured, but just
15967         gdk_error_code != 0.
15968
15969 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
15970
15971         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
15972         pointer *before* invoking the filter function, so we at least don't
15973         crash if a filter is removed that is currently executed. window filters
15974         *really* need to be made truely reentrant at some point.
15975
15976 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
15977
15978         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
15979         PropertyNotify debug messages.
15980
15981 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
15982         
15983         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
15984         
15985         * gdk/gdkim.c: Fix cut-and-paste errors for 
15986         x/y and PreeditAttributes/StatusAttributes.
15987
15988 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15989
15990         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
15991         G_MAXINT to 2^16 to alleviate overflow problems in
15992         various window managers.
15993
15994 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15995
15996         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15997         for fontsets.
15998
15999 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
16000
16001         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
16002         Initialize size_hints.x and size_hints.y because kwm
16003         brokenly pays attention to them.
16004         (Bug #1181 -  Lars Heete <hel@admin.de>)
16005
16006 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
16007
16008         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
16009         return value of gdk_list_visuals(). 
16010         (Bug #1193 - Morten Welinder <terra@diku.dk>)
16011
16012 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
16013
16014         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
16015         XSetIMValues to (void *) when comparing to NULL, to workaround
16016         the problem of some compilers barfing since older X headers don't
16017         have the prototype for it.
16018
16019 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
16020
16021         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
16022         for pseudocolor where colormap->colors was double
16023         allocated.
16024
16025         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
16026         color value in the hash table with the pixel filled
16027         in so when we do later hash table lookups, the color
16028         value is correct.
16029         
16030 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
16031
16032         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
16033         making the call
16034
16035 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
16036
16037         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
16038         pointed out by Morten Welinder <terra@diku.dk>.
16039
16040 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16041
16042         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16043           default filter from the list
16044
16045 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16046
16047         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16048           default filter from the list
16049
16050 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
16051
16052         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
16053
16054         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
16055         g_strdup_printf instead of calcing the length separately
16056
16057 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
16058
16059         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
16060         that we don't do in many other places. (Fixing duplicate 
16061         #include of config.h)
16062
16063         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
16064         Otherwise, #ifndef XINPUT_NONE check in the latter
16065         doesn't work. (Bug #546)
16066
16067 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
16068
16069         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
16070         "None" case insensitive.
16071
16072 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16073
16074         * gdk/gdkselection.c: 
16075         Add error traps so if the other end of the connection
16076         dies, we survive.
16077
16078 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16079
16080         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
16081         dest_xid field into two fields - one for the window
16082         to send in messages, one to indicate the last looked
16083         up window for caching purposes. This is needed, so
16084         that Leave messages get the correct window.
16085
16086 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
16087
16088         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
16089         Fix warning created by people mucking around
16090         with the gsource API.
16091
16092         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
16093         Change mapping between GIOCondition and GdkInputCondition
16094         to match the way the Linux kernel does it. This should
16095         fix problems where closed pipes were no longer signalling
16096         GDK_INPUT_READ on systems with a native poll().
16097
16098 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
16099
16100         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
16101         explicitly for the string "None" - it is in the XPM
16102         spec and some servers treat unknown colors in odd ways
16103         (like asking the user!)
16104
16105 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16106
16107         * gdk/gdkevents.c: made "->" into a "." of previous change so
16108         it compiles
16109
16110 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
16111
16112         * gdk/gdkevents.c (gdk_compress_exposures): Set the
16113         window field of the event structure before calling
16114         user filters.
16115
16116 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16117
16118         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
16119         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
16120
16121 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
16122
16123         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
16124         intermediate text property - prevents major memory
16125         leak when gdk_use_mb.
16126         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
16127
16128 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16129
16130         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16131         gtk-a-higuti-990322-[0-3]
16132
16133         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
16134         sizeof(wchar_t) != sizeof (GdkWChar)
16135
16136         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16137         that was causing -DX_LOCALE not to work.
16138
16139         * gtk/gtkrc.c (gtk_rc_init):
16140         X_LOCALE will never have LC_MESSAGES defined
16141
16142         * gdk/gdk.c (gdk_init_check):
16143         Remove --xim-preedit and --xim-status from argv properly.
16144
16145         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
16146         that the client window is present on the X server
16147         before we pass it to the input method.
16148
16149 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
16150
16151         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
16152         if --display is specified on the command line, than
16153         the drag window will not be created on that display.
16154         
16155 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
16156
16157         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
16158         lookups with only_if_exists == TRUE were inserting
16159         bogus values into the atom cache.
16160
16161 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16162
16163         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
16164         then reset it to NULL.
16165
16166         * gdk/gdkcolor.c:
16167         (gdk_colors_free): 
16168         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
16169         key for g_hash_table_remove() in both functions, this prevents us
16170         from accessing possibly uninitialized portions of a GdkColor structure
16171         where we are only interested in its pixel value.
16172
16173 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16174
16175         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16176         font hash table, if we have a GdkFontPrivate entry for this font
16177         already, simply increment its reference count, provided by Olaf Dietsche
16178         <olaf.dietsche+list.gtk@netcologne.de>.
16179
16180 1999-09-21  Tor Lillqvist  <tml@iki.fi>
16181
16182         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
16183         just to be sure.
16184
16185         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
16186         unused variables, leftovers from the X11 version.
16187
16188         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
16189
16190         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
16191         downcase fields on X11.
16192
16193 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16194         
16195         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
16196         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
16197
16198 1999-09-17  Tor Lillqvist  <tml@iki.fi>
16199
16200         * gdk/win32/gdk.def: Add gdk_threads_mutex.
16201
16202         * gtk/makefile.msc: Correct path to libintl.
16203
16204         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
16205         use of gint vs. int, and gint vs. gboolean in headers and
16206         definitions. Use GtkType for the *_get_type functions. Note that
16207         these changes preserve binary compatibility.
16208
16209         * gdk/gdk.c
16210         * gdk/win32/gdk.c
16211         * gdk/gdk.h: Fix inconsistencies: gint vs int.
16212
16213         * gtk/gtkmain.c
16214         * gtk/gtkclist.c
16215         * gtk/gtkmenufactory.c
16216         * gtk/gtknotebook.c
16217         * gtk/gtkwidget.c: Fix inconsistencies, also gint
16218         vs. gboolean.
16219
16220         * gtk/gtkcolorsel.[ch]
16221         * gtk/gtkcombo.[ch]
16222         * gtk/gtkdrawingarea.[ch]
16223         * gtk/gtkgamma.[ch]
16224         * gtk/gtkhandlebox.[ch]
16225         * gtk/gtkhpaned.[ch]
16226         * gtk/gtkhruler.[ch]
16227         * gtk/gtkplug.[ch]
16228         * gtk/gtkpreview.[ch]
16229         * gtk/gtkruler.[ch]
16230         * gtk/gtksocket.[ch]
16231         * gtk/gtkstatusbar.[ch]
16232         * gtk/gtktoolbar.[ch]
16233         * gtk/gtkvbbox.[ch]
16234         * gtk/gtkvpaned.[ch]
16235         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
16236         functions.
16237
16238         * gtk/gtkgamma.h: Fix bug, missing () in call of
16239         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
16240
16241 1999-09-14  Tor Lillqvist  <tml@iki.fi>
16242
16243         * gdk/gdkcolor.c (gdk_colormap_new)
16244         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
16245         colormap->colors was allocated twice.
16246
16247         * gdk/win32/gdk.c: Remove some unused stuff.
16248
16249         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
16250         colormap.
16251
16252         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
16253         * gtk/gtklabel.h (gtk_label_get_type)
16254         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
16255         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
16256         in a couple of places, not guint.
16257
16258 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
16259
16260         * configure.in,po/et.po: added Estonian language file
16261
16262 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
16263
16264         * configure.in,po/da.po: added Danish file
16265
16266 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
16267
16268         * docs/gtkfaq.sgml: Minor FAQ Update
16269
16270 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
16271
16272         * docs/gtkfaq.sgml: FAQ update
16273
16274 1999-08-27  Tor Lillqvist  <tml@iki.fi>
16275
16276         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
16277         way to get window contents continually refreshed while resizing. I
16278         didn't like the effects myself, so it's not on by default.
16279
16280         * gdk/win32/gdkprivate.h: New flag variable
16281         gdk_event_func_from_window_proc, FALSE by default.
16282
16283         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
16284         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
16285         are passed --gdk-event-func-from-window-proc.
16286
16287         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
16288         and we have am event_func, call it instead of enqueing the event.
16289
16290 1999-08-23  Tor Lillqvist  <tml@iki.fi>
16291
16292         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
16293         Kelley: Set expose_count in GdkEventExposes correctly.
16294
16295         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
16296         MULTIPLE_WINDOW_CLASSES).
16297
16298         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
16299         for bug in NT, apparently NT *does* draw the end pixel, too, in
16300         LineTo with a one-pixel pen, so we don't have to do it ourselves.
16301
16302 1999-08-21  Tor Lillqvist  <tml@iki.fi>
16303
16304         Improvements by Hans Breuer: 
16305
16306         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
16307
16308         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
16309         CS_?REDRAW flags as they cause lots of (late) redraws when "show
16310         window contents while dragging" is turned on. Allocate at least
16311         one unique class for every GdkWindowType. If support for single
16312         window-specific icons is ever needed (eg. Dialog specific), every
16313         such window should get its own class.
16314
16315 1999-08-19  Tor Lillqvist  <tml@iki.fi>
16316
16317         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
16318         error that caused crashes.
16319
16320 1999-08-17  Tor Lillqvist  <tml@iki.fi>
16321
16322         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
16323         window, use ScrollWindowEx, and call UpdateWindow. This prevents
16324         bugs when for instance part of the window was outside the
16325         display. Thanks to Philippe Colantoni for finding and fixing this.
16326
16327 1999-08-16  Tor Lillqvist  <tml@iki.fi>
16328
16329         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
16330         endpoint calculations which were totally wrong. (A little RTFMing
16331         helps a lot ;-)
16332
16333         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
16334         from a separate directory, not from gettext, because of licensing
16335         issues (we want to use the LGPL version).
16336
16337         * README.win32: Mention the intl from glibc vs from gettext issue.
16338
16339 1999-08-13  Tor Lillqvist  <tml@iki.fi>
16340
16341         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
16342         in the key event handling: Now AltGr chars work again. Also,
16343         now Alt-digits are passed up as well as Control-digits.
16344         Pass keypad plus and minus as normal plus and minus.
16345
16346 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16347
16348         * docs/gtkfaq.sgml: FAQ Update
16349
16350 1999-07-25  Tor Lillqvist  <tml@iki.fi>
16351
16352         * README.win32
16353         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
16354         the Wintab SDK.
16355
16356         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
16357         OK, but getting closer. Guard against bogus tilt data from Wacom
16358         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
16359         enable easier building without Wintab.
16360
16361         * gdk/win32/gdkinput.h
16362         * gdk/win32/gdkevents.c 
16363         * gdk/win32/gdkwindow.c: Minor changes related related to above.
16364         
16365         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
16366         code. As we have just one visual on Win32, no sense to have it in a
16367         table, and no need for the hash table.
16368
16369         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
16370         better on white background.
16371
16372 1999-07-21  Tor Lillqvist  <tml@iki.fi>
16373
16374         * README.win32: Update gcc build instructions. Mention gettext is
16375         GPL.
16376
16377         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
16378         supported cursor size with GetSystemMetrics.
16379
16380         * gdk/win32/gdkfont.c
16381         * gtk/gtkfontsel.c: Guard against some font weight and charset
16382         symbols being undefined (in mingw32 headers).
16383
16384         * gdk/win32/makefile.cygwin
16385         * gtk/makefile.cygwin
16386         * gtk/gtkthemes.c: No longer need to have differently named
16387         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
16388
16389 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
16390
16391         * docs/gtkfaq.sgml: Long awaited FAQ update.
16392
16393 1999-07-15  Tor Lillqvist  <tml@iki.fi>
16394
16395         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
16396         it. Obscure bit manipulation needed.
16397
16398         * gdk/win32/gdkevents.c: Logging.
16399         
16400         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
16401         style (file name include compiler name) for theme engines.
16402
16403 1999-07-13  Tor Lillqvist  <tml@iki.fi>
16404
16405         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
16406
16407         * gdk/win32/gdkevents.c: Fix long-standing bug in key
16408         events. The key.string wasn't zero-terminated, still we strdup'ed
16409         it in gdk_event_copy(). Synthesize crossing events for button
16410         events before possible propagation.
16411
16412         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
16413
16414         * gdk/win32/makefile.cygwin
16415         * gtk/makefile.cygwin: Use new DLL naming style for the
16416         GCC-compiled ones.
16417
16418         * gdk/win32/makefile.msc
16419         * gtk/makefile.msc: Cosmetics mostly.
16420
16421         * gtk/gtk.def: Add missing entry points.
16422
16423         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
16424
16425 1999-07-09  Tor Lillqvist  <tml@iki.fi>
16426
16427         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
16428         or height is zero. Don't print a warning if Pie or Arc fails, they
16429         always fail (?) for very narrow ellipses.
16430
16431         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
16432         the part or the destination window corresponding to source area
16433         outside of the source drawable's boundary.
16434
16435         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
16436         anything if less than two points.
16437
16438         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
16439         return NULL. Gtk cut-and-paste inside a single program works
16440         better this way. (It always gets the clipboard contents from
16441         Windows, not from its own copy, which is cleared anyway. I can't
16442         say I fully understand what happens... Emulating the X selection
16443         and property stuff is a bit of a mess.)
16444
16445         * gdk/win32/gdkevents.c
16446         * gdk/win32/gdkproperty.c: A bit more verbose logging.
16447
16448         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
16449         that never got deleted). Revamp gdk_region_shrink.
16450
16451         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
16452         after use.
16453
16454         * gtk/gtk.def: Add some missing entry points.
16455
16456         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
16457         component.
16458
16459 1999-07-04  Tor Lillqvist  <tml@iki.fi>
16460
16461         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
16462         Control-digits specially.
16463
16464 1999-07-03  Tor Lillqvist  <tml@iki.fi>
16465
16466         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
16467
16468 1999-06-28  Tor Lillqvist  <tml@iki.fi>
16469
16470         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
16471         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
16472         finding this.)
16473
16474 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
16475
16476         * gtk+.spec.in: Corrected some typos in files section.
16477         
16478 1999-06-15  Tor Lillqvist  <tml@iki.fi>
16479
16480         * README.win32: Mention using GNU gettext.
16481         * config.h.win32: Enable NLS stuff.
16482         * gtk/makefile.msc: Use GNU gettext.
16483         * gdk/win32/gdkdnd.c: Minor header reorg.
16484         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
16485         cosmetics.
16486         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
16487         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
16488
16489 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
16490
16491         * acinclude.m4
16492         * config.guess
16493         * config.status
16494         * ltconfig
16495         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
16496
16497 1999-05-30  Tor Lillqvist  <tml@iki.fi>
16498
16499         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
16500         SafeAdjustWindowRectEx. Don't override all calls to
16501         AdjustWindowRectEx by it, but use it only in two places: When
16502         creating a new top-level window and when moving a top-level
16503         window.
16504
16505         Use screen coordinate rectangle, not client rectangle, in
16506         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
16507         when we try to place a window so that the decoration (mainly,
16508         title bar) isn't visible.
16509
16510         These changes fix the bug that showed up for instance as the
16511         GIMP's saved top-level windows moving right and down (by an amount
16512         equal to the window decoration) for each session. This bug showed
16513         up also in testgtk's "Saved Position".
16514
16515         gdk_window_resize also redone a bit.
16516
16517 1999-05-25  Tor Lillqvist  <tml@iki.fi>
16518
16519         * gtk/testgtkrc: Add (commented out) Windows-style theme
16520         include line.
16521
16522         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
16523
16524 1999-05-18  Tor Lillqvist  <tml@iki.fi>
16525
16526         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
16527         gdkx.h to a gdk subdirectory, so that applications can include
16528         these with <gdk/*.h> without trouble.
16529
16530         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
16531         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
16532         have their bitmap destroyed.
16533
16534         * gdk/win32/gdk.def: Add gdk_root_parent.
16535
16536 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
16537
16538         * configure.in
16539           gtk-config.in
16540           ltconfig
16541           ltmain.sh     
16542           gtk/Makefile.am: changes to compile nicely (with xlib) 
16543           on BeOS
16544
16545 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
16546
16547         * acinclude.m4
16548         * config.guess
16549         * config.sub
16550         * ltconfig
16551         * ltmain.sh: upgrade to libtool 1.3
16552
16553 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
16554
16555         * gtk/gtkclist.c:
16556         * gtk/gtkctree.c: merges from gtk-1-2
16557
16558 1999-04-25  Tor Lillqvist  <tml@iki.fi>
16559
16560         Support added for building using a GNU toolchain on Win32,
16561         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
16562
16563         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
16564         * config.h.win32: Changes for gcc.
16565         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
16566         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
16567         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
16568         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
16569         Protect shl stuff unavaiilable with mingw32 headers.
16570         * gdk/win32/gdkevents.c: Fix typo.
16571         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
16572         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
16573         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
16574         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
16575         the mingw32 headers.
16576         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
16577         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
16578         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
16579         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
16580         Test for NATIVE_WIN32, not _MSC_VER.
16581         * gtk/gtkmain.c: No use warning about developer version on Win32,
16582         there aren't any non-developer versions anyhow.
16583         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
16584         * gtk/makefile.msc: Use pthread from another directory. Minor other
16585         changes. 
16586
16587 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16588
16589         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16590           default filter from the list
16591
16592 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
16593
16594         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
16595          when gtk_widget_grab_default() is called for a widget that
16596          is not within a GtkWindow.
16597
16598 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
16599
16600         * docs/gtk_tut.sgml, examples/clist.c: use a
16601           scrolled window in the clist example. Minor
16602           tutorial fixes.
16603
16604 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
16605
16606         * docs/gtk_tut.sgml: Style check from David King
16607           <dking@youvegotmail.net>
16608
16609 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
16610
16611         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
16612         compile with unknown value of GDK_WINDOWING
16613
16614 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
16615
16616         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
16617         after the rule is fired.
16618         (install-exec-local): Install gdkconfig.h only if the contents are
16619         different from the currently installed gdkconfig.h.
16620
16621 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
16622
16623         * gdk/Makefile.am (configexecincludedir): Rename from 
16624         configincludedir so that gdkconfig.h will be installed 
16625         as part of `make install-exec'. 
16626
16627 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
16628
16629         * acinclude.m4
16630         * config.guess
16631         * config.sub
16632         * ltconfig
16633         * ltmain.sh: upgrade to libtool 1.2f
16634
16635         * autogen.sh: libtool is not required to autogen gtk+
16636
16637         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
16638         needed)
16639
16640 1999-03-18  Tor Lillqvist  <tml@iki.fi>
16641
16642         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
16643         declaring gdk variables exported/imported from the DLL. New image
16644         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
16645         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
16646         GDK_DRAG_PROTO_OLE2.
16647
16648         * gdk/gdk.h: Merge in Win32 version: Two new functions,
16649         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
16650         declared only for the Win32 version, but could be in the X11
16651         version as well. (Needed for a Xlib-less gdk_imlib.)
16652         gdk_color_hash should have only one parameter. Declare
16653         gdk_threads_mutex with GDKVAR.
16654         
16655         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
16656         just one parameter.
16657
16658         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
16659         per pixel, not bits.
16660
16661         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
16662         Fetch bpp (which means bits-per-pixel here) from another place on
16663         Win32. Accept also depth==32 (which we might get on Win32) with
16664         bpp==32.
16665
16666         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
16667         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
16668         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
16669         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
16670         in the backend-dependent directory, not in the common gdk
16671         directory.
16672
16673         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
16674         headers.
16675
16676 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
16677
16678         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
16679         want to use the Gtk+ devel version (which is true, and yes - even i am
16680         currently working with the 1.2.x branch). so everyone reading this, you
16681         probably want to issue
16682         cvs checkout -r glib-1-2 glib
16683         and
16684         cvs checkout -r gtk-1-2 gtk+
16685         as your next two comands.
16686
16687 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
16688
16689         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
16690         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
16691
16692         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
16693         file. strongly deprecated the GTK_HAVE_* macros, we provide
16694         GTK_CHECK_VERSION() for people that need to check for certain
16695         Gtk+ versions.
16696
16697         * gtk/gtkcompat.h: removed this from CVS.
16698         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
16699         idea right from the start, it just didn't seem like that back then.
16700
16701 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
16702
16703         * merges from gtk-1-2:
16704
16705 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
16706
16707         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
16708         item factory class has been created.
16709         (gtk_item_factory_parse_rc): likewise.
16710
16711         * gtk/gtkmenu.c:
16712         keep proper references for old_active_menu_item.
16713         (gtk_menu_reparent): unset the usize of the new parent,
16714         so the menu can sanely be size requested and we don't get nasty screen
16715         artefacts upon next reparentation.
16716         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
16717         enter notify. only synthesize enter notifies if the pointer really is
16718         inside the event window.
16719         (gtk_menu_popdown): use gtk_menu_shell_deselect().
16720         (gtk_menu_popup): move the background setting stuff into
16721         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
16722
16723         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
16724         gtk_menu_shell_select_item() to select the new item.
16725         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
16726         do the right thing for deselection as well.
16727
16728 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
16729
16730         * gtk/gtkwidget.[hc]:
16731         (gtk_widget_accelerators_locked): return whether a widget's accelerators
16732         are locked.
16733
16734         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
16735         existing accelerators if the widget's accelerators are locked.
16736
16737 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
16738
16739         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
16740
16741         * gtk/gtkmenu.c: truely forward key press and key release events to
16742         the menu widget from the toplevel or tearoff window. we can't simply
16743         connect to that, we need to stop further processing of the events as
16744         well.
16745
16746 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
16747
16748         * gtk/gtkmenu.c:
16749         (gtk_menu_key_press): pass event->keyval, event->state to
16750         gtk_accelerator_valid, instead of event->keyval twice.
16751         refuse to install single letter accelerators for menus that use
16752         single letter shortcuts.
16753
16754         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
16755         gtk_menu_ensure_uline_accel_group().
16756
16757         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
16758         which will always return an uline accel group, made
16759         gtk_menu_get_uline_accel_group() return NULL if the group isn't
16760         yet created.
16761
16762 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
16763
16764         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
16765
16766         * gtk/gtkclist.c (gtk_clist_column_title_passive):
16767         Leave button sensitive, trap  button_press, button_release,
16768         motion_notify, enter_notify and leave_notify events instead.
16769         (gtk_clist_column_title_active): disconnect event handler.
16770         (gtk_clist_drag_data_get): fixed memory leak. Reported by
16771         Guillaume Laurent <glaurent@worldnet.fr>
16772
16773 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
16774
16775         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
16776         width/height mixups.
16777
16778         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
16779         if needed.
16780
16781 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
16782
16783         * gtk/testgtk.c (create_item_factory): unref the item factory after
16784         window's destruction.
16785
16786         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
16787         count on the menu shell around the menu item's activation, since the
16788         signal emission may cause menu shell destruction.
16789
16790         * gtk/gtkitemfactory.c:
16791         the previous code leaked one accel group per menu. we use
16792         gtk_menu_get_uline_accel_group() now to fix that, and with that
16793         also create the underline accelerator group of the menus only if
16794         required (i.e. an underline accelerator has been specified).
16795         (gtk_item_factory_construct):
16796         (gtk_item_factory_create_item): removed code that would create an
16797         extra accel group for the menu (and leak references).
16798         (gtk_item_factory_create_item): adapted the underline accelerator
16799         installation code to properly feature gtk_menu_get_uline_accel_group().
16800
16801         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
16802         menu->accel_group, this may return NULL if the accelerator group
16803         hasn't been set yet.
16804         added gtk_menu_get_uline_accel_group() to retrive the underline
16805         accelerator group of the menu, this will be created on demand
16806         and proper care is taken about its reference count.
16807
16808         * gtk/gtkitemfactory.h:
16809         * gtk/gtkitemfactory.c:
16810         dumped the approach of keeping a widgets by action list on the
16811         factory since the factory<->widget destroy negotiation didn't work
16812         and would be hard to get going at all. instead we keep a list of
16813         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
16814         persistant throughout a program's life time).
16815         also, i removed the static const gchar *key_* variables, and made
16816         them inline strings (they weren't actually used anyways).
16817         (gtk_item_factory_add_item): update ifactory->items.
16818         (gtk_item_factory_destroy): destroy ifactory->items (and remove
16819         the item factory pointer from the remaining ifactory widgets).
16820         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
16821         list to find the widget.
16822         (gtk_item_factory_get_item): new function that works around
16823         gtk_item_factory_get_widget() limitations, this function will only
16824         return menu items, even for <Branch> entries.
16825
16826 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16827
16828         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16829         font hash table, if we have a GdkFontPrivate entry for this font
16830         already, simply increment its reference count, provided by Olaf Dietsche
16831         <olaf.dietsche+list.gtk@netcologne.de>.
16832
16833         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
16834         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
16835
16836 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
16837
16838         * gtk/gtkcontainer.c:
16839         (gtk_container_add_with_args):
16840         (gtk_container_addv):
16841         (gtk_container_add): before adding a child to a conatiner, make sure
16842         it is (default) constructed, this is neccessary because under certain
16843         circumstances the child will get relized and mapped immediatedly, in
16844         which case it has to be constructed already.
16845
16846 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
16847
16848         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
16849         values > 1 as TRUE also.
16850
16851 1999-03-16  Tor Lillqvist  <tml@iki.fi>
16852
16853         * README.win32: New file.
16854                 
16855         * configure.in: Check for lstat.
16856
16857         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
16858         completeness.
16859
16860         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
16861
16862         * gtk/gtk.def: Removed CRs.
16863
16864         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
16865         ..\gdk\win32).
16866
16867         * gdk/win32/makefile.msc: Correct upwards relative paths.
16868         
16869 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
16870
16871         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
16872           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
16873           it was connecting a void function to expose_event and the int
16874           returning function to the draw signal
16875
16876 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
16877
16878         * configure.in:
16879         Use correct path to libgmodule.la when ref'ing uninstalled copy
16880         of glib.  (Already in stable branch, Bug #417)
16881
16882 1999-03-15  Tor Lillqvist  <tml@iki.fi>
16883
16884         Win32 merge and general portability stuff:
16885                 
16886         * acconfig.h,configure.in: Check for <sys/time.h>.
16887
16888         * gdk/win32: New directory (actually, been there for a while).
16889         
16890         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
16891         NATIVE_WIN32, and use these. Always case fold on Win32. No
16892         backslashed escapes on native Win32.
16893
16894         * gtk/{gtk.def,makefile.msc}: New files.
16895
16896         * gtk/Makefile.am: Add above new files.
16897         
16898         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
16899         instead of <strings.h>.
16900
16901         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
16902         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
16903         <unistd.h> appropriately.
16904
16905         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
16906         Use ABS() (from <glib.h>) instead of abs().
16907         
16908         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
16909         of gtk (and thus glib) headers, so that WIN32 will be
16910         defined. With MS C, include <direct.h> for mkdir prototype.
16911
16912         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
16913         some casts, needed by MS C.
16914
16915         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
16916         implemented).
16917
16918         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
16919         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
16920         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
16921
16922         * gtk/gtkmain.h: Mark variables for export/import on Win32.
16923                 
16924         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
16925         the event is not a hint, or its window is not the slider. Needed
16926         on Win32, at least.
16927
16928         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
16929         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
16930         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
16931         a subdirectory of the Windows directory as gtk system
16932         configuration directory.
16933
16934         * gtk/gtkselection.c: No chunks on Win32.
16935
16936         * gtk/gtksocket.c: Not implemented on Win32.
16937
16938         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
16939
16940         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
16941
16942         * gtk/maketypes.awk: Declare variables with a macro that expands to
16943         necessary export/import magic in the case of Win32.
16944                 
16945         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
16946
16947 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
16948
16949         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
16950         since those were meant only for gdki18n.h.  
16951         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
16952         for widechar tests.
16953         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
16954
16955 1999-03-13  Tor Lillqvist  <tml@iki.fi>
16956
16957         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
16958         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
16959
16960         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
16961         installed) to CFLAGS.
16962
16963         * gdk/Makefile.am: Add rules for gdkconfig.h.
16964
16965         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
16966         APIs.
16967
16968         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
16969         gdkx.h anyway when compiling for X11.
16970         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
16971         general): Merge in Win32 version.
16972         
16973         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
16974         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
16975         expansion (if we don't have HAVE_PWD_H), allow for drive
16976         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
16977         included code from Craig Setera's port to Win32 (the one that uses
16978         X11, and the cygwin dll), even if it probably will be abandoned.
16979
16980         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
16981         the user entered one herself.  This way one can complete *.h and
16982         don't get matches on any .help files, for instance.
16983         
16984 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16985
16986         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16987         font hash table, if we have a GdkFontPrivate entry for this font
16988         already, simply increment its reference count, provided by Olaf Dietsche
16989         <olaf.dietsche+list.gtk@netcologne.de>.
16990
16991         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
16992         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
16993
16994 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16995
16996         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
16997         the number of calls to gdk_draw_point() (and thus to X) by
16998         clipping the points by hand.
16999
17000         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
17001         the clip parameter.
17002         (gtk_handle_box_paint): Only paint the handle if the expose area
17003         intersects it.
17004
17005 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17006
17007         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
17008
17009 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
17010
17011         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
17012         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
17013
17014 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17015
17016         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
17017          textmode (O_TEXT) for OS/2 version.
17018
17019 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
17020
17021         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
17022         GtkSpinButton, "input" and "output", to make the output more flexible.
17023         The user has to provide a mapping between adjustment->value and the
17024         output string (and vice versa, if the spin button is editable). 
17025         See testgtk for examples.
17026
17027 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
17028
17029         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
17030         new one.
17031         
17032         * configure.in: set gtk+ version to 1.3.0.