]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
edd0d658465e8d000914f56b756c90d54162368d
[~andy/gtk] / ChangeLog.pre-2-4
1 2001-06-07  Havoc Pennington  <hp@redhat.com>
2
3         * tests/Makefile.am: add missing -I flag
4
5         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
6
7         * configure.in: use pkg-config to see if GModule is
8         supported; fix to properly turn on included loaders 
9         when GModule isn't supported; don't use AC_CHECK_LIB 
10         when libs are not installed yet
11
12         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
13
14         * Makefile.am (SUBDIRS): add m4macros subdir
15
16         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
17         dependencies also.
18
19 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
20
21         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
22         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
23
24 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
25
26         * gtk/gtktreeview.c
27         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
28         bindings to expand and collapse rows.
29         (gtk_tree_view_real_select_cursor_parent): New key binding.
30         (gtk_tree_view_real_toggle_cursor_row): New key binding.
31
32         * gtk/gtkmarshal.list: new
33         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
34
35 2001-06-06  Havoc Pennington  <hp@redhat.com>
36
37         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
38
39         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
40         Down to move visually rather than logically, since it confuses 
41         people. Add -/+ and Ctrl--/+ bindings for logical movement.
42
43 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
44
45         * gtk/gtktooltips.h: Include gtkwidget.h 
46         (#55798, Karl Nelson)
47
48         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
49         a valid latin-1 character. (Marc Lehmann, #35467)
50
51         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
52         (Marc Lehmann, #35467)
53         
54 2001-06-05  Alex Larsson  <alexl@redhat.com>
55
56         * demos/gtk-demo/appwindow.c (do_appwindow):
57         Don't swap the order of the args to gtk_widget_destroyed.
58
59         * tests/testgtk.c (destroy_properties):
60         Don't crash when the properties window is destroyed.
61
62         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
63         Use with_mnemonics to handle the case of stock items with
64         underscores in them.
65
66 2001-06-05  Havoc Pennington  <hp@redhat.com>
67
68         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
69         gtk_text_iter_reorder
70
71 2001-06-05  Havoc Pennington  <hp@redhat.com>
72
73         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
74
75 2001-06-05  Havoc Pennington  <hp@redhat.com>
76
77         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
78         to the range that was set
79
80         * gtk/gtkrange.c: add value_changed signal, primarily 
81         intended for use with GtkScale
82         (gtk_range_set_increments): new function
83         (gtk_range_set_range): new function with weird name
84         (gtk_range_set_value): new function
85         (gtk_range_get_value): new function
86
87         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
88         from gtk_spin_button_get_value_as_float(). Compat #define
89         added for get_value_as_float.
90
91         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
92
93         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
94
95 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
96
97         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
98
99 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
100
101         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
102
103         * tests/testgtk.c (create_tooltips): Remove usage of
104         gtk_widget_set().
105
106 2001-06-05  Havoc Pennington  <hp@redhat.com>
107
108         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
109
110         Applying patch from Jeff Franks, with function docs added.
111         
112         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
113         remove call to set_mnemonic_widget, change docs a bit.  
114
115         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
116         new function
117
118         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
119         new function
120
121         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
122
123         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
124         function
125         (gtk_radio_button_new_with_mnemonic_from_widget): new function
126
127         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
128         new function
129
130         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
131         function        
132
133         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
134         auto-selection of mnemonic widget.
135
136 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
137
138         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
139         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
140         (gtk_tree_view_column_set_min_width): ditto.
141
142 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
143
144         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
145         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
146
147 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
148
149         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
150         gtk_clist_thaw().
151
152 2001-06-04  Havoc Pennington  <hp@pobox.com>
153
154         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
155         releases for buttons 6, 7
156
157 2001-06-04  Havoc Pennington  <hp@redhat.com>
158
159         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
160         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
161         #55562
162
163 2001-06-04  Havoc Pennington  <hp@redhat.com>
164
165         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
166         where text_view->layout == NULL by assuming its size is 0, 
167         i.e. same as if we haven't done any reflow. Reported by 
168         Hidetoshi Tajima #55448 
169
170 2001-06-04  Havoc Pennington  <hp@redhat.com>
171
172         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
173         and 7 for scroll left/right, from Thomas Broyer
174
175 2001-05-10  Havoc Pennington  <hp@redhat.com>
176
177         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
178         we need to parse the xsetting as if it were an RC file string.
179
180         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
181         value of palette from settings, not from static variable
182
183         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
184         xsettings translation table
185
186         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
187         hardcoding the toolbar style conflicts with new customizable 
188         toolbar style philosophy
189         (gtk_toolbar_class_init): add settings for default toolbar style;
190         these are used unless the app specifically forces a toolbar style
191
192         * gtk/gtksettings.c (settings_install_property_parser): only
193         return at the start if we warn and parser == NULL
194
195         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
196         palette changed handler so we don't notify dead color selections
197
198         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
199         xthickness/ythickness of 0 or 1 properly 
200         (gtk_default_draw_resize_grip): clear the background behind the
201         resize grips, and align to bottom right if we square the 
202         area to be drawn.
203
204         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
205         statusbar label to 1, so it doesn't make toplevels resize oddly
206         (gtk_statusbar_size_request): add grip size to request
207         (gtk_statusbar_size_allocate): hack so the hbox still works with 
208         the grip size in the request
209
210         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
211         bug where showing all on a toplevel makes the toolbar 
212         button text appear despite the toolbar mode
213
214         * gtk/gtkmenubar.c: add internal padding style property
215
216         * gtk/gtktoolbar.c: Add internal padding style property; add
217         shadow type style property
218
219         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
220         state; and put Container::border_width outside the frame
221
222         * gtk/gtktextview.c: don't draw focus rectangle if we're in
223         interior focus mode, we just use blinking cursor
224
225 2001-06-04  Havoc Pennington  <hp@redhat.com>
226
227         * configure.in: Make gdk-pixbuf have same version number as GTK
228
229 2001-06-04  Havoc Pennington  <hp@redhat.com>
230
231         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
232         digits greater than 6. If there actually are limits (which there
233         likely aren't), should clamp to them not warn.
234         (gtk_spin_button_new_with_range): don't take log of 0
235         (gtk_spin_button_size_request): use digits to compute size
236         request, rather than step increment.
237
238         * tests/testgtk.c (create_spins): test larger values of digits
239         
240         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
241         font on map not expose, so we don't get weirdness during scrolling
242
243 2001-06-04  Havoc Pennington  <hp@redhat.com>
244
245         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
246         Sam Solon, bug #54577, update value even if not drawable.
247
248 2001-06-04  Havoc Pennington  <hp@redhat.com>
249
250         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
251         SCROLL_LEFT, reported by Thomas Broyer.
252
253 2001-06-04  Havoc Pennington  <hp@redhat.com>
254
255         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
256         Process updates immediately, to prevent funny lag effect
257         when scrolling, at some mild potential efficiency cost.
258
259 2001-06-04  Havoc Pennington  <hp@redhat.com>
260
261         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
262         slider on the click.
263
264 2001-06-03  Havoc Pennington  <hp@pobox.com>
265
266         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
267         hscale/vscale details, so we can use it for scrollbar as well.
268
269         * tests/testgtk.c (reformat_value): honor digits from GtkScale
270
271         * gtk/gtkenums.h (GtkTroughType): Remove this enum
272         (GtkScrollType): add START and END from GtkTroughType
273
274         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
275         its x/y arguments
276
277         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
278         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
279         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
280         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
281         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
282
283         Notable changes in the process:
284          
285         - stepper_size style property is the height for vertical 
286           ranges, width for horizontal; the other dimension matches
287           the trough size
288         - add ability to do NeXT-style steppers (and several other styles
289           that don't make any sense)
290         - added min_slider_length, fixed_slider_length properties to
291           GtkScrollbar
292         - cleaned some private (or at least useless) functions out of
293           gtkscale.h    
294         - moved bindings to GtkScale from subclasses, even arrow keys,
295           since blind users don't know scale orientation.
296         - change move_slider action signal to use new GtkScrollType,
297           remove GtkTroughType argument
298         - digits rounds the values a range will input to the given 
299           number of decimals, but will not try to force adjustment 
300           values set by other controllers. That is, we no longer
301           modify adjustment->value inside a value_changed handler.
302         - added getters for GtkScale setters
303         - middle-click begins a slider drag
304         
305 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
306
307         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
308         getting the focus code to work.
309         (gtk_tree_view_class_init): Add a bunch of keybindings.
310
311         * gtk/gtktreeviewcolumn.c
312         (gtk_tree_view_column_set_cell_data_func):
313         s/GtkCellDataFunc/GtkTreeCellDataFunc.
314         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
315         of "properties_changed" to help justify the death of the latter
316         signal. (-:
317
318         * tests/testtreefocus.c (main): Let some columns be focussable to
319         test focus better.
320
321 2001-06-01  Havoc Pennington  <hp@redhat.com>
322
323         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
324         
325         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
326         overwrite in overwrite mode if we already deleted the selection
327         and replaced it with new text.  
328
329         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
330         selection to an empty range, clear the clipboard if we owned it.
331         (gtk_label_set_selectable): give up selection if we become
332         unselectable.
333         (gtk_label_state_changed): override state changed to unselect text
334         when insensitive
335         (get_text_callback): add paranoia check that indexes aren't
336         outside of label->text
337         (gtk_label_select_region): make -1 for start_offset mean "end of
338         label," for consistency with GtkEditable
339
340         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
341         GTK_DIALOG_NO_SEPARATOR flag
342
343 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
344
345         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
346         notifications on non-existant "enable_arrow_keys".
347         (#53753, Skip Montanaro)
348
349 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
350
351         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
352         GDK_TYPE_RECTANGLE.
353
354         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
355         of allocation argument be GDK_TYPE_RECTANGLE.
356
357 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
358
359         * gtk/gtkoptionmenu.c: Account for the fact that the border
360         width is _outside_ the window. (Fixes #54585, bug found
361         by Bastien Nocera.)
362
363 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
364
365         * gtk/gtksettings.c (gtk_settings_get_property): Validate
366         value from GDK settings against parameter spec.
367
368         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
369         to temporary values and use g_value_transform(), since
370         thinking that GValue was going to be easy or efficient
371         to use was, of course, a mistake.
372
373         * gtk/gtksettings.c: Add cursor blink setting.
374         
375         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
376
377         * gtk/gtkentry.c: Add cursor blinking.
378
379         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
380         cursor blink global settings.
381
382         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
383         for :text_position in places where it is missing.
384
385 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
386
387         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
388
389 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
390
391         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
392         not pkg-config. (#51032)
393
394         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
395         (fixes #51952, James Henstridge)
396         
397 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
398
399         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
400         Rename to the more correct gtk-go-up.
401
402         * gtk/stock-icons/stock_menu_sort_ascending.png:
403         Added new file.
404         
405         * gtk/stock-icons/stock_menu_sort_descending.png:
406         Changed to show descending instead of ascending.
407
408         * gtk/gtkiconfactory.c:
409         Added menu size icon to sort ascending.
410
411         * gtk/stock-icons/Makefile.am:
412         Added stock_menu_sort_ascending.png.
413         
414         * gtk/gtkseparatormenuitem.c:
415         Use correct typenames.
416
417 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
418
419         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
420         gulong as in GSignal.
421
422 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
423
424         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
425         instances of GtkCellRenderer in code (all but dnd icon code).
426         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
427         there, and I can do multiple Cells per column.
428
429         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
430
431         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
432         when model was unreffed prior to removing the row reference.
433
434 2001-05-25  Havoc Pennington  <hp@redhat.com>
435
436         * gtk/gtkiconfactory.c: fix so that default icons are created if 
437         you call gtk_stock_list_ids()
438
439         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
440         in list
441
442 2001-05-25  Havoc Pennington  <hp@redhat.com>
443
444         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
445         set can render without falling back to missing image icon
446
447         * gtk/gtktextview.c (gtk_text_view_size_request): request full
448         size of text, instead of random values
449
450         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
451         size of tree view, instead of random values
452
453         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
454         image in an appropriate size
455
456         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
457         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
458
459         Throughout: fix GTK_STOCK_BUTTON_ instances
460         
461         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
462         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
463         Add a bunch of new stock items/icons
464
465         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
466         new function, convenience for inserting columns with a data func
467
468         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
469         (_gtk_icon_factory_list_ids): use list of all factories to
470         generate a list of all known IDs
471
472         * gtk/gtkstock.c (gtk_stock_list_ids): replace
473         gtk_stock_list_items() with a function that returns all IDs known
474         including those for GtkIconFactory.
475
476 2001-05-25  Hans Breuer  <hans@breuer.org>
477
478         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
479         work -> check boxes and radio buttons are drawn now, even on win9x.
480         Improved line settings a bit, still no clue how to get really dotted
481         lines on win9x, on NT it's PS_ALTERNATE.
482
483         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
484         GDK_HINT_MIN_SIZE as well
485
486         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
487
488         * gtk/gtk.def : updated
489
490         * gtk/gtktreeprivate.h : change column_drop_func to be a function
491         pointer not a function pointer pointer
492
493         * tests/testdnd.c : include <stdlib.h> for putenv prototype
494
495         * tests/testsocket.c : made it compile on win32 again
496
497         * tests/makefile.msc : one more test-app uses prop-editor.obj
498
499 2001-05-22  Havoc Pennington  <hp@pobox.com>
500
501         * gtk/gtkbin.c (gtk_bin_get_child): New function
502
503 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
504
505         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
506         to ignore when doing compose processing.
507
508 2001-05-22  Joe Shaw  <joe@ximian.com>
509
510         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
511         Simplify as suggested by Havoc. Just get the last iter and work
512         backward to the tag instead of getting a line and working back from
513         there. Fixes passing in an invalid offset to
514         iter_init_from_byte_offset().
515
516 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
517
518         * gtk/gtktreeview*.h: 
519         * gtk/gtkcell*.h:
520         * gtk/gtk*store.h:
521         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
522         macros to all objects.
523
524 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
525
526         * gtk/gtkcellrenderertext.c
527         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
528         with very large (TM) amounts of text.  May be moved to
529         GtkCellRenderer in the future, though I'm not sure it wants to be
530         this accessible.
531
532         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
533         More sanity brought to this class.  I like it.
534
535         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
536         case.  Kids, don't try this at home.
537
538         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
539         convenience function.
540
541         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
542
543 2001-05-21  Alexander Larsson  <alexl@redhat.com>
544
545         * gtk/gtkfontsel.c:
546         Added properties. Based on patch by Lee Mallabone.
547
548         * gtk/gtkruler.c:
549         * gtk/gtkhruler.c:
550         * gtk/gtkvruler.c:
551         * gtk/gtktext.c:
552         * gtk/gtktextview.c:
553         Converted GtkArg to GParam. Based on patches by John Margaglione.
554
555         * tests/Makefile.am:
556         * tests/testtext.c:
557         Add a property editor to testtext.
558         
559 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
560
561         * gtk/gtk{h,v,}paned.c: Only show the separator if 
562
563         * configure.in: Fixed reversed conditional causing all image
564         libraries to be linked in.
565
566 2001-05-21  Joe Shaw  <joe@ximian.com>
567
568         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
569         that top_y needs to be >= 0.
570
571 2001-05-11  Havoc Pennington  <hp@pobox.com>
572         
573         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
574         losing connection to the X server.
575
576 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
577
578         * configure.in: Start checks for X from pangox/pangoxft
579         CFLAGS to avoid duplicate libraries.
580
581         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
582
583         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
584         to include gobject.
585         
586 2001-05-18  Alexander Larsson  <alexl@redhat.com>
587
588         * gtk/gtkspinbutton.c:
589         Convert GtkArgs to GParams. Based on patch by John Margaglione.
590         Also do size request reasonable for MAXDOUBLE. Previously it printed
591         the limits to a buffer and overran it. Instead do it using log10() and
592         limit the width to 10 digits.
593         
594         * gtk/gtkwidget.c (gtk_widget_get_property):
595         Correctly handle setting the parent property to NULL.
596
597 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
598
599         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
600         style attributes even if the widget isn't realized.
601
602         * demos/gtk-demo/main.c: Use a slightly smaller font.
603
604 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
605
606         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
607         This is something that only a widget writer would ever want
608         to change.
609
610         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
611         gtk_signal_emit_by_name().
612
613         * gtk/gtkviewport.c: Fix some warnings.
614
615         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
616         allowing the requisitions of multiple widgets to be grouped
617         together.
618
619         * tests/testgtk.c: Add GtkSizeGroup test
620
621         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
622
623         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
624         warnings.
625
626         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
627
628 2001-04-28  Martin Baulig  <baulig@suse.de>
629
630         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
631         to gtk_image_menu_item_set_icon() and made it work if there's already
632         an image.
633         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
634         (gtk_image_menu_item_new_with_label): New function.
635
636 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
637
638         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
639         highlighting code!!!!  The result is okay so long as you don't try
640         to stress it.  It also highlights a bug in the TextView so it's in
641         an unproportional font right now until it's fixed.
642
643         *demos/gtk-demo/*.c: Clean up code a bit to make it
644         ugly-parser(TM) friendly. (-:
645
646 2001-05-17  Joe Shaw  <joe@ximian.com>
647
648         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
649         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
650         if it is only partially onscreen.
651
652 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
653
654         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
655         not by characters.
656
657         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
658         are not zero or one; that is, when graphemes of multiple characters
659         are involved.
660
661         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
662         FIXME.
663
664 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
665         
666         * gtk/gtkbbox.c:
667         Add properties, based on patch by Lee Mallabone.
668
669         * gtk/gtknotebook.c:
670         * gtk/gtktoolbar.c:
671         Convert from GtkArg to GParam, based on patch by John Margaglione.
672         
673         * gtk/gtkhscale.c:
674         * gtk/gtkvscale.c:
675         * gtk/gtkhscrollbar.c:
676         * gtk/gtkvscrollbar.c:
677         * gtk/gtkrange.c:
678         Move adjustment property to GtkRange.
679
680         * gtk/gtklabel.c:
681         Setup mnemonics on property changes
682
683         * gtk/gtkwidget.c (gtk_widget_get_property):
684         GdkExtensionMode is an enum, not a flag. Set it with
685         g_value_set_enum ().
686
687         * tests/prop-editor.c:
688         Better propery editor.
689
690         * tests/testgtk.c:
691         Add new property test. Pass zero to the property editor to
692         get properties from all derived types.
693         
694 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
695
696         * autogen.sh (have_automake): Require libtool-1.4,
697         automake-1.4p1.
698
699         * acinclude.m4: Remove libtool macros.
700
701         * gdk-pixbuf/Makefile.am: Add dependencies to loade
702         modules.
703
704         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
705         for libgdk.
706
707         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
708         libgdk.la for libgtk.
709
710         * modules/input/Makefile.am: Make modules have full
711         dependencies.
712
713 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
714
715         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
716         #54699 where paths weren't being checked for correctness.
717
718 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
719
720         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
721         in any order you wan, whether or not the column is added to the
722         tree, or the tree is realized.  Yay!
723
724         * gtk/gtktreeviewcolumn.c
725         (gtk_tree_view_column_setup_sort_column_id_callback): handle
726         sorting columns a lot saner
727
728         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
729         new function to actually set wether or not a column is
730         reorderable.
731
732         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
733         if we have 'em.
734
735         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
736         Fix nasty bug where we were showing the button just before
737         realizing it.  As a result, the parent window was
738         tree_view->window instead of tree_view->priv->header_window.
739
740         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
741         to let you easily reorder a list or tree.
742
743 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
744
745         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
746         from args to properties.
747
748 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
749
750         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
751         from args to properties. (#51957)
752
753         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
754         calls to after ->set_property call.
755
756 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
757
758         * tests/prop-editor.c: Block against redundant changes.
759
760         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
761         properties.
762
763 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
764
765         * gdk/gdkpixmap.h: Remove creative formatting.
766
767 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
768
769         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
770         property API. (#51669)
771
772         * gtk/gtkscale.c: Patch from John Margaglione converting to
773         property API. (#51891)
774
775         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
776         to property API. (#50985)
777
778 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
779
780         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
781         buffering state across expose event, so we still call end_paint().
782
783 2001-05-11  Alexander Larsson  <alexl@redhat.com>
784
785         * gtk/gtkhsv.c (paint_triangle):
786         Expose the ring in the triangle at the correct place when
787         exposing just a part of the triangle.
788
789         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
790         Return FALSE, or window focusing will not work.
791
792 2001-05-11  Havoc Pennington  <hp@pobox.com>
793
794         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
795         #54144
796
797         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
798         bug #54330
799
800 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
801
802         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
803         propagate exposes to NULL child.
804
805         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
806         against not having one of the scrollbars.
807
808         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
809         we don't keep a mnemonic window if we have no mnemonic installed.
810
811 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
812
813         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
814         it has the _important_ side effect of initializing a class.
815
816 2001-05-10  Alexander Larsson  <alexl@redhat.com>
817
818         * gdk/linux-fb/gdkprivate-fb.h:
819         Make sure you can compile out the implementation/wrapper assert
820         macros.
821
822         * gdk/linux-fb/gdkdrawable-fb2.c:
823         Check implementation/wrappers, initialize type for pixmap dummys.
824
825         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
826         Hide the cursor if reading from the screen.
827
828         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
829         Fix sign bug in tiling code.
830
831         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
832         Handle background pixmaps.
833
834 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
835
836         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
837         function to let user control where columns are dragged.
838
839         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
840         Escape is pressed.
841
842 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
843
844         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
845         "columns_changed" signal.
846         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
847         motion code to draw arrows to the side if indicator is outside the
848         widget.
849         (gtk_tree_view_map_expanded_rows): Implement.
850
851 2001-05-07  Alexander Larsson  <alexl@redhat.com>
852
853         * demos/testpixbuf-save.c: 
854         * demos/testpixbuf-drawable.c:
855         Include gdkfb.h on linux-fb.
856
857 2001-05-07  Alexander Larsson  <alexl@redhat.com>
858
859         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
860         New function for getting toplevel window at position.
861         (gdk_drag_find_window): Use get_toplevel_window () instead
862         of gdk_window_get_pointer(). (gdk_drag_status): Use
863         correct context for getting window.
864
865         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
866         g_strdup the atom name.
867
868         * gdk/linux-fb/gdkwindow-fb.c:
869         Costmetic fix.
870
871         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
872         Add code for changing cursor on linux-fb backend (same as
873         win32).
874
875 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
876
877         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
878         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
879         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
880         report was not for the development branch of GTK+, but it applies
881         anyways).
882
883 2001-05-04  Havoc Pennington  <hp@redhat.com>
884
885         * configure.in: fix some shell typos
886
887         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
888
889         * gtk/gtkimage.c: handle animations
890
891         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
892         border_width * 2, not just border_width
893
894         * gtk/gtkscale.c: add "format_value" signal to allow people
895         to override the way values are drawn.
896         (gtk_scale_get_value_size): fix width/height mistake,
897         and compute size from actual displayed text, not 
898         from made-up text.
899
900         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
901         signal registration
902
903         * tests/testtext.c: Add "Remove all tags" menu item for testing
904
905         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
906
907         * demos/gtk-demo/main.c (main): add hack so we can find modules
908         without installing gtk
909
910         * demos/gtk-demo/textview.c (insert_text): demo font scaling
911
912         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
913         factor)
914         (gtk_cell_renderer_text_set_property): remove some bogus
915         g_object_notify
916
917         * gtk/gtktexttag.c: add "scale" property which is a font scaling
918         factor
919
920         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
921         to layout
922
923         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
924         gtk_text_iter_is_first
925
926 2001-01-06  Hans Breuer  <hans@breuer.org>
927
928         * gdk/gdk.def : updated exports
929
930         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
931         gdk won't compile anymore
932  
933         * gdk/win32/gdkevents-win32.c : initialize ret_val when
934         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
935         Improved gdk_flush () to not only do pending drawing operations
936         but also process all currently pending events. This should make
937         the behaviour more similar to the X11 version.  
938
939         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
940         option needs to be set even if there is no GDK_GC_BACKGROUND.
941         (gdk_win32_hdc_get) : use predraw_set_background () independent
942         of value_mask. This allows to draw dashed lines leaving the original
943         background intact.
944
945         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
946         after processing, because we can't reuse it as the X11 version does.
947
948         * gtk/gtk.def : updated exports
949
950         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
951         would like to get rid of this file again, and use straight
952         makefile.msc again, as the other Gtk+ subdirs do)
953
954         * test/makefile.msc (new file) : build the test apps here
955
956 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
957
958         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
959         strike-through setting
960         (gdk_draw_layout_line_with_colors): Render strike-through
961
962 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
963
964         * Release 1.3.5
965
966         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
967
968         * NEWS: Updated
969
970         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
971         Makefile breakage.
972
973 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
974
975         * demos/gtk-demo/images.c (progressive_timeout): Fix
976         typo in filename.
977
978         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
979         out FIXME warning; just too annoying.
980
981 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
982
983         * gdk/linux-fb/gdkcolor-fb.c:
984         Better error messages.
985
986         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
987         Initialize abs_x and abs_y.
988         
989         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
990         Correct handling of stipple offset.
991
992         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
993         Treat directcolor framebuffers as truecolor.
994         
995 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
996
997         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
998         dependency on Atk for accessibility support.
999
1000         * configure.in **/Makefile.am: Major reworking of substituted
1001         variables for CFLAGS/LIBS to make a lot more sane and 
1002         keep the the compile/link lines a bit shorter.
1003
1004         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
1005
1006 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
1007
1008         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
1009         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
1010         use _gtk_boolean_handled_accumulator.
1011
1012 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
1013
1014         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
1015         to fix things so clicking inside selection leaves cursor
1016         at point where clicked. (#50324)
1017
1018         * gtk/gtksettings.c (gtk_settings_class_init): Restore
1019         sane value for default double click time.
1020
1021         * tests/testtext.c (test_init): Really path to input modules.
1022
1023 2001-05-03  Sven Neumann  <sven@convergence.de>
1024
1025         * demos/testpixbuf-save.c: include target-specific headers as
1026         done in testpixbuf-drawable.c
1027
1028 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
1029
1030         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
1031         new_text_length appropriately when we run into the 
1032         size limit for the entry. (#53445, reported by Jeff Franks)
1033
1034         * tests/testgtk.c (create_entry): Remove most of the
1035         property toggle buttons. Replace with a "Props" button
1036         that brings up a property editor.
1037
1038         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
1039         Split the property editor code out for reuse, improve.
1040
1041 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
1042
1043         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
1044         trap errors around calls to XSetInputFocus since we have
1045         no way of knowing reliably whether we are viewable or
1046         not. (#53947)
1047
1048 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
1049
1050         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1051         fix bug in dropping columns.  Moving columns now basically works
1052         modula some fine tuning.
1053
1054 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
1055
1056         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
1057         autoscroll support.  It mostly works, but could use some fine
1058         tuning.
1059         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1060         Actually move the column.
1061
1062 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
1063
1064         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
1065           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
1066           New default theme! A slighly improved version of the 2.0 Raleigh
1067           theme, with Windows-esque focus/drawing default. 
1068           (GtkWidget::interior_focus defaults to TRUE.)
1069
1070         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
1071
1072 2001-04-30  Havoc Pennington  <hp@pobox.com>
1073
1074         * tests/testtext.c (line_numbers_expose): fix to work with
1075         gtk_paint_layout change
1076
1077 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
1078
1079         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
1080           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
1081           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
1082           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
1083
1084         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
1085           with GtkWidget::interior_focus = TRUE better.
1086
1087         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
1088         ::default_outside_border for more flexibility.
1089
1090         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
1091         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
1092         change that had to be made with g_object_get.
1093
1094 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
1095
1096         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
1097         (gtk_tree_view_move_column_after): Clean up interface. 
1098
1099 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
1100
1101         * gtk/gtkpacker.h:
1102         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
1103          to gtkenum.h.
1104
1105         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
1106         handled in switch).
1107
1108         * gtk/Makefile.am:
1109         (gtk.defs): generate enum portions with  glib-mkenums.
1110         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
1111         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
1112         
1113         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
1114         addition.
1115
1116         * docs/Changes-2.0.txt: keep a note on signal handlers now
1117         not getting emitted during the emission they were connected within.
1118
1119 2001-04-28  Havoc Pennington  <hp@pobox.com>
1120
1121         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
1122
1123 2001-04-24  Havoc Pennington  <hp@redhat.com>
1124
1125         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
1126         (gtk_text_layout_move_iter_to_next_line): fix these two for
1127         invisible text, lots of other stuff still hosed.
1128
1129         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
1130         new function, replaces the get/set palette stuff. This function 
1131         is intended for use by libgnomeui which should set the hook to a
1132         thing which sets the palette in GConf, and we need the
1133         GConf-to-xsettings proxy which will result in the change being
1134         propagated back to the GTK app.
1135
1136         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
1137         about unusable signals that it may be because the signal has 
1138         parameters.
1139
1140         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
1141         style, otherwise gtkrc.c won't know to create a new GtkStyle for
1142         it.
1143         (gtk_widget_modify_color_component): call
1144         gtk_widget_modify_style() so the rc style will get copied.
1145         (gtk_widget_modify_font): ditto
1146
1147         * gtk/gtkrc.c: make a couple variables static
1148
1149         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
1150         help button by default, since it does nothing
1151
1152         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
1153         around with UI
1154
1155         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
1156         so we can have tooltips
1157
1158         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
1159         can have tooltips
1160
1161         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
1162         GDK_ENABLE_BROKEN, because its memory behavior is completely
1163         hosed.
1164
1165         * gtk/gtknotebook.c: remove key press handler, replace with
1166         binding set, add numeric keypad support
1167
1168         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
1169
1170         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
1171
1172         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
1173         addition to plain Delete
1174
1175         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
1176         GDK_KP_Enter in addition to GDK_Return
1177
1178         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
1179         activate on entry instead of key press
1180         (gtk_font_selection_on_clist_key_press): get
1181         rid of this signal handler, not needed with new font sel.
1182
1183         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
1184         no-longer-needed emit_stop_by_name(), just return TRUE
1185
1186         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
1187         cruft, this widget is no longer focusable.
1188
1189         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
1190         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
1191         move_slider action signal, add binding set for vscale/hscale, in
1192         the process support numeric keypad
1193
1194         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
1195         make GDK_Return and GDK_KP_Enter activate the entry via 
1196         binding set, instead of hardcoded.
1197
1198 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
1199
1200         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
1201         code.  Some documentation added.
1202
1203 2001-04-27  Havoc Pennington  <hp@redhat.com>
1204
1205         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
1206
1207         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
1208
1209         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
1210         line/para separators
1211         (gtk_entry_create_layout): set single paragraph mode on the layout
1212
1213         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
1214         spacing between the image and label; instead, inside a button box 
1215         the button will get extra space that will go there, but if people 
1216         configure button box for 0 chubbiness, then there's no spacing.
1217
1218         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
1219         and min/max size style properties, so people can tune their
1220         chubbiness.
1221
1222         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
1223         functions
1224
1225         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
1226         space_style, and button_relief into style properties, remove
1227         functions for setting them
1228         
1229         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
1230         it back down
1231
1232         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
1233         types from gtk_widget_style_get
1234
1235         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
1236         with a style property.
1237
1238         * gdk/x11/gdkevents-x11.c: namespace the settings
1239
1240         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
1241
1242         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
1243         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
1244         be used. Also, translate doc strings for settings. Also, namespace
1245         the double-click-time property. Also, remove bell properties crap.
1246
1247 2001-04-27  Sven Neumann  <sven@gimp.org>
1248
1249         * Makefile.am: before creating links, check if pkg-config files
1250         exist for the default target. Otherwise link to the pkg-config files
1251         that got installed with this build.
1252
1253 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
1254
1255         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
1256         dragging code.  Revealed some (potential) GdkWindow bugs.
1257
1258         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
1259         _gdk_window_init_position to the end of reparent to fix the case
1260         of reparenting when new_x != old_x and new_y != old_y.
1261
1262 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
1263
1264         * gtk/gtkentry.c (strstr_len): Fix optimization that
1265         was correct for the use here, but completely incorrect
1266         in general.
1267
1268 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
1269
1270         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
1271         until patch adding gtk_window_set_size() is recommitted. 
1272
1273         * **Makefile.am configure.in gdk/x11/gdkim-11.c
1274           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
1275           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
1276           (#10784)
1277
1278 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
1279
1280         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
1281         window == NULL in a number of cases.
1282
1283         * tests/testdnd.c: Set module path for gdk-pixbuf.
1284
1285 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
1286
1287         * gtk/Makefile.am xembed.h: File containing #defines
1288         for XEMBED protocol.
1289
1290         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
1291
1292         - Change protocol from old plug/socket specific protocol
1293           to XEMBED draft
1294         - Various fixes to work with GTK+-2.0
1295
1296         Still quite a bit of work to do here to handle initiation
1297         from the socket side (as specified by XEMBED), to handle
1298         the more advanced features of XEMBED, and to figure out
1299         a good way to handle same-app embedding with less overhead
1300         than using full XEMBED.
1301
1302 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
1303
1304         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
1305         track of whether the toplevel has the focus; only send
1306         focus-in events to the focus widget when the window
1307         actually has the focus.
1308
1309 2001-04-25  Havoc Pennington  <hp@pobox.com>
1310
1311         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
1312         were still in the header
1313
1314 2001-04-24  Alexander Larsson  <alexl@redhat.com>
1315
1316         * gtk/gtkclist.[ch]:
1317         * gtk/gtkctree.c:
1318         When there is a row highlighted for D'n'D it must alse
1319         be painted hightlighted on exposes. Otherwise exposes from
1320         the icon being dragged will mess up the hightlight.
1321
1322         * gtk/gtkfontsel.c:
1323         Don't recenter selected font when exposing the font family
1324         clist. This means you can now actually scroll the font family
1325         list.
1326
1327         * gtk/gtknotebook.c:
1328         Fix focus movement on scrolling tabs that are placed on the left
1329         and right.
1330
1331 2001-04-21  Havoc Pennington  <hp@pobox.com>
1332
1333         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
1334         empty/invisible lines.
1335
1336         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
1337         (gtk_text_iter_set_visible_line_index): new functions to set
1338         indexes excluding invisible text
1339
1340         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
1341         index
1342
1343         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
1344         (gtk_text_iter_get_visible_line_offset): new functions to 
1345         get indexes excluding invisible text
1346
1347         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
1348         bunch of extra padding that served no purpose
1349
1350         * gtk/gtkdialog.c: Make all the spacings configurable via style
1351         properties, for chubbiness configuration in themes
1352
1353         * tests/testtext.c: fix path to the immodules.
1354         
1355 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
1356
1357         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
1358         got munched by #endif.
1359
1360         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
1361
1362         * gtk/gtktreeview.c: Refactored code to clean up a number of
1363         events.
1364
1365         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
1366         values to make consistent with other functions.  Spotted by Jeff
1367         Franks <jcf@tpg.com.au>.
1368
1369         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
1370         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
1371
1372 2001-04-23  Sven Neumann  <sven@gimp.org>
1373
1374         * gtk/Makefile.am
1375         * gtk/gtkplug.c
1376         * gtk/gtksocket.c: on request of Owen, reverted my last change 
1377         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
1378
1379 2001-04-23  Sven Neumann  <sven@gimp.org>
1380
1381         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
1382         compile for non-X11 targets again
1383
1384 2001-04-20  Alexander Larsson  <alexl@redhat.com>
1385
1386         * gtk/gtkcolorsel.[ch]:
1387         API Change. Take GdkColor arguments instead of gdouble *.
1388         Leave the old gtk_color_selection_set_color for compatibility,
1389         but marked deprecated.
1390         Do correct rounding when converting RGB <-> HSV.
1391         
1392         * gtk/gtkcolorseldialog.c:
1393         * tests/testgtk.c:
1394         Use new GtkColorSelection API.
1395
1396         * gtk/gtkhsv.c:
1397         Fix problem selecting colors in triangle when Hue is 330.
1398         Fix some black dots around the HSB triangle.
1399         
1400         * gtk/gtkfilesel.c:
1401         return FALSE from the focus_in_event handler to fix focus problems.
1402
1403 2001-04-18  Havoc Pennington  <hp@redhat.com>
1404
1405         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
1406         set, so keybindings are configurable    
1407         (gtk_window_activate_default): Change to activate the focus widget
1408         instead if there's a focus widget, to be consistent with the
1409         behavior that previously existed in key_press_event
1410
1411 2001-04-18  Havoc Pennington  <hp@redhat.com>
1412
1413         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
1414
1415 2001-04-18  Havoc Pennington  <hp@redhat.com>
1416
1417         Close bug #50615:
1418         
1419         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
1420         the layout
1421
1422         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
1423
1424         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
1425
1426         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
1427         
1428         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
1429         to blue for base, in addition to bg
1430         
1431 2001-04-18  Havoc Pennington  <hp@redhat.com>
1432
1433         * tests/testgtk.c (create_image): allow shrinking the image window
1434         to test that we clip to allocation.
1435
1436         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
1437         #9845
1438
1439         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
1440
1441 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
1442
1443         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
1444         mode on shm segments to 0600. We'll see who complains.
1445
1446         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
1447         _gdk_windowing_window_destroy() AFTER recursing through
1448         children.
1449
1450         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
1451         testsocket_child on X.
1452
1453         * tests/testsocket[_child].c: Fix uses of
1454         gtk_window_get_default_accel_group().
1455
1456         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
1457
1458         * gdk/gdkimage.c: (gdk_image_get):
1459         Deal with the possibility that XGetImage() might return NULL.
1460         Allocate the GdkImagePrivate structure only after XGetImage()
1461         succeeds in order not to dereference a NULL ximage pointer.  This
1462         prevents a core dump when XGetImage() fails - which is unlikely,
1463         but can happen due to race conditions accessing the geometries of
1464         drawables.  An x error will still be triggered, but the gdk image
1465         wrapper at least wont seg fault.
1466         
1467 2001-04-18  Havoc Pennington  <hp@redhat.com>
1468
1469         * gtk/gtkimage.c: fix to properly queue resizes when the image is
1470         set
1471
1472         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
1473         if the insertion point isn't editable
1474
1475         * demos/gtk-demo/images.c: Added a GtkImage demo
1476
1477         * demos/gtk-demo/drawingarea.c: drawing area demo
1478         
1479         * demos/gtk-demo/menus.c (create_menu): cleanups
1480
1481 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
1482
1483         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
1484           gdk/x11/gdkevents-x11.c: Introduce an extra child
1485         of toplevel windows that serves to hold the focus to
1486         avoid events being delivered to embedded windows.
1487
1488         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
1489         some extra variables to clean up code and reduce the
1490         number of casts.
1491
1492         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
1493         guint for 1 bit bit fields, not gboolean.
1494
1495 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
1496
1497         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
1498         not TRUE. (Fixes #52925)
1499
1500 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
1501
1502         * Released 1.3.4
1503
1504         * NEWS: Updated
1505
1506         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
1507         use GTK_TYPE_ENUM.
1508
1509 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
1510
1511         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
1512
1513         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
1514         names to compatibility #defines so docs work.
1515
1516         * gtk/gtkenums.h: Remove GtkMenuFactoryType
1517
1518         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
1519
1520         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
1521
1522         * tests/testgtkrc: No magenta cursors, please.
1523
1524         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
1525
1526         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
1527         
1528 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
1529
1530         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
1531         grabs, since they are no longer necessary.
1532
1533         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
1534         by signal_connect() and call gtk_button_pressed() rather
1535         than signal_connect_after().
1536
1537         * tests/testgtk.c: Restore radio menu items to combos 
1538         since they'll look OK with Raleigh, and it is easier
1539         than finishing the process of removing them that was
1540         started earlier.
1541
1542 2001-04-16  Hans Breuer  <hans@breuer.org>
1543
1544         * gdk/gdk.def :
1545         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
1546
1547         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
1548         we are interested in the functions return value not the function address
1549         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
1550
1551         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
1552
1553 2001-04-14  Hans Breuer  <hans@breuer.org>
1554
1555         * gdk/gdk.def :
1556         * gdk/makefile.msc : updated
1557
1558         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
1559         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
1560         (the testgtk::text backgound pixmap is drawn again)
1561         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
1562         Win32 Pango change
1563         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
1564
1565         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
1566         Not sure if the returned settings have the right unit, because I couldn't
1567         find any docs for the X version ...
1568
1569         * gtk/gtk.def :
1570         * gtk/makefile.msc.in : updated
1571
1572 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
1573
1574         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
1575         wording problems. (Compared to version from Johannes Stezenbach to
1576         check correctness.)
1577
1578 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
1579
1580         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
1581         this to compile.
1582
1583 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
1584
1585         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
1586         not pixbufpos.
1587
1588         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
1589
1590         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
1591         are unsigned insts, therefore use g_value_set_uint.
1592         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
1593
1594 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
1595
1596         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
1597
1598         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
1599         GTK_TYPE_STRING.
1600
1601         * gtk/gtktreeview.c: New functions to allow initial column
1602         dragging work.
1603
1604         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
1605
1606         * tests/testtreefocus.c: give dave some love.
1607
1608         * tests/testtreesort.c: Modify test to check really long samples.
1609
1610 2001-04-11  Alexander Larsson  <alexl@redhat.com>
1611
1612         * gtk-2.0.m4: Pass pkg-config options
1613         before the other args so it works even if
1614         POSIXLY_CORRECT is set.
1615
1616 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
1617
1618         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
1619         0, interface 0).
1620
1621 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
1622
1623         * gtk/gtkcalendar.c (gtk_calendar_button_press):
1624         check for action_func != NULL
1625
1626 2001-04-04  Sven Neumann  <sven@gimp.org>
1627
1628         * tests/testgtk.c (test_init): corrected path to gtk.immodules
1629
1630 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
1631
1632         * Released Gtk+-1.3.3.
1633
1634 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
1635
1636         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
1637
1638 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
1639
1640         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
1641         files to/from source dir. (if we don't stay in builddir, we
1642         can't reach make-inline-pixbuf.
1643
1644         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
1645         deps.
1646
1647         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
1648         ages 0).
1649
1650 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
1651
1652         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
1653         moved to the GtkTreeSortable interface.
1654
1655         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
1656         Make more efficient (fixes #50262).
1657
1658 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
1659
1660         * NEWS: Updated.
1661
1662         * configure.in: Remove support for uninstalled glib.
1663
1664         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
1665         so as not to stop emission.
1666
1667         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
1668         is no longer supported.
1669
1670         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
1671         into tests, change build order to build modules before
1672         gtk/.
1673
1674         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
1675         to here.
1676
1677 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
1678
1679         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
1680         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
1681         GPatternSpec. this is actually unlikely to cause breakage in
1682         third-party apps since except for gle, pretty much ever caller
1683         passes NULL here.
1684
1685         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
1686
1687         * *.c: use g_pattern_*() API.
1688
1689         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
1690
1691         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
1692         directions aren't passed in.
1693
1694         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
1695         functionality to be usable from gtkstyle.c as well, give precedence
1696         for conversion to user-supplied parsers.
1697         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
1698
1699         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
1700         _gtk_settings_parse_convert() for rcporperty value conversion.
1701
1702 2001-04-03  Alexander Larsson  <alexl@redhat.com>
1703
1704         * gdk/linux-fb/gdkevents-fb.c:
1705         Add empty gdk_setting_get().
1706
1707 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
1708
1709         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
1710         variable names.
1711         
1712         * gtk/makeenums.pl: touch this so enum files get remade.
1713
1714 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
1715
1716         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
1717         work again when not sorted.
1718
1719         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
1720         and "expand_row" signal, closing bug 52578.
1721
1722         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
1723         support.
1724
1725         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
1726         support.
1727
1728 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
1729
1730         * gdk/gdkevents.h: Add GdkEventSetting event for notification
1731         of changes to system settings, gdk_setting_get() to retrieve
1732         a single system setting.
1733
1734         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
1735         to the draft XSETTINGS mechanism.
1736
1737         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
1738         XSETTINGS.
1739
1740         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
1741         of GDK settings changes to the GtkSettings object.
1742
1743         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
1744         double-click-timeout property to GDK.
1745
1746         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
1747         Define GDK boxed types here.
1748
1749         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
1750         gdk/gdkenumtypes.[ch] for enum definitions.
1751
1752         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
1753         * gtk/gtk-boxed.defs: Comment out GDK types
1754         * gtk/gtktypeutils.h: Remove GDK types
1755         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
1756
1757 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
1758
1759         * Applied patch from Ron Steinke to add signal accumulators
1760         so that signals with the convention 'TRUE return means
1761         handled' stop emission on a TRUE return.
1762
1763         * gtk/gtkmain.[ch]: Add private accumulator 
1764         _gtk_boolean_handled_accumulator, used throughout GTK+.
1765         
1766         * gtk/gtkspinbutton.c: Add accumulator for ::output.
1767
1768         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
1769         
1770         * gtk/gtkwidget.c: Add accumulators for event signals,
1771         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
1772         for ::mnemonic-activate.
1773
1774         * gtk/gtkwindow.c: Add accumulator for ::frame_event
1775
1776 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
1777
1778         * gtk/gtkwidget.c: Add missing include.
1779
1780 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
1781
1782         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
1783         marshaller.
1784
1785         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
1786         "changed" signal to "range_changed".
1787
1788         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
1789         removing a tree from one model would remove all trees from that
1790         model.
1791         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
1792         changed signal instead.
1793
1794 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
1795
1796         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
1797         chaining up to parent impl, since we have a INPUT_ONLY
1798         window.
1799
1800         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
1801         foreground color for the cursor.
1802
1803 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
1804
1805         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
1806         param spec when caching property values, since we unref it
1807         later when we free the style.
1808
1809         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
1810         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
1811
1812 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
1813
1814         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
1815         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
1816         stupidity.
1817
1818 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
1819
1820         [ First pass at adding style properties. Still needs some definite
1821         fine-tuning. ]
1822
1823         * gtk/gtkbutton.c: Add ::default_spacing style property.
1824          
1825         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
1826         ::indicator_spacing style properties.
1827
1828         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
1829         style properties.
1830
1831         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
1832         rather than a normal property.
1833
1834         * gtk/gtkwidget.c: Add an ::interior_focus style property to
1835         draw focus inside buttons, in the Windows/Java Metal/etc. style.
1836
1837         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
1838         Honor ::interior_focus.
1839         
1840         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
1841         TRUE.
1842
1843         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
1844         Add ::slider_width, ::trough_border, ::stepper_size,
1845         ::stepper_spacing style properties.
1846
1847         * gtk/gtkscale.[ch] Add ::slider-length style property.
1848
1849 2001-04-02 Alexander Larsson   <alexl@redhat.com>
1850
1851         * gdk/linux-fb/gdkwindow-fb.c:
1852         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
1853         warnings that were spewed on startup.
1854
1855         * gtk/gtkwindow-decorate.c:
1856         gtk_window_reposition -> _gtk_window_reposition
1857
1858 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
1859
1860         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1861         Add boxed type for GtkRequistion. Use it for ::size-request.
1862
1863         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1864         Add a new GtkBorder structure useful for geometry properties
1865         for widgets. Add corresponding GTK_TYPE_BORDER.
1866         
1867         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
1868         Support automatic parser selection like
1869         gtk_settings_install_property_parser().
1870
1871         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
1872         functionality for use by gtk_widget_class_install_style_property.
1873         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
1874
1875 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
1876
1877         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
1878         g_param_spec_unichar(). 
1879
1880 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
1881
1882         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
1883         _NET window managers.
1884
1885         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
1886
1887 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
1888
1889         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
1890         bad needs to be nuked, not just deprecated.
1891
1892         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
1893         gtk_widget_popup().
1894
1895         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
1896         
1897         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
1898         widget.
1899         
1900         * docs/Changes-2.0.txt: updates.
1901         
1902 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
1903
1904         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
1905         for (i = 0; i < 100; i ++)
1906           g_print ("I will confirm it compile before committing\n");
1907
1908 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
1909
1910         * gtk/gtktreestore.c: Initial work on implementing the
1911         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
1912
1913 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
1914
1915         * gtk/gtkwidget.c: fixed a bunch of notifications, added
1916         reference counts around emissions where the widget is used afterwards.
1917         added freeze/thaws around multiple properties being notified.
1918         (_gtk_widget_get_aux_info): cleanups.
1919         
1920         * gtk/gtksettings.c (gtk_settings_install_property): provide
1921         default parsing functions for gdkcolor, enums and flags.
1922
1923         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
1924         applied by owen.
1925         backed out gtk_window_get_location(), gtk_window_set_location(),
1926         gtk_window_get_size() and gtk_window_set_size(), these
1927         have to be sorted out wrg x/y/width/height/default_with/default_height
1928         properties.
1929         kept a flag in GtkWindowGeometryInfo to handle user
1930         resetting default sizes.
1931         cleaned up ZVT comments.
1932         bunch of assorted bug fixes, notification fixes.
1933         (_gtk_window_reposition): make this a really internal function.
1934         
1935         * gtk/testgtk.c: fixups.
1936         
1937 2001-03-31  Hans Breuer  <hans@breuer.org>
1938
1939         * config.h.win32.in : disable USE_MMX for msvc build cause
1940         the assembler doesn't fit and is out of my scope. Disable
1941         USE_GMODULE for msvc build as wel. The right way to share
1942         binaries on win32 would be to use libtiff.dll etc. To reduce
1943         installation hassles IMO it's better to include all fileformats
1944         builtin to gdk-pixbuf
1945
1946         * gdk-pixbuf/makefile.msc : new file
1947
1948         * gdk/gdk.def : updated
1949
1950         * gdk/win32/gdkevents-win32.c : don't erase the background if
1951         .no_bg is set. It improves the scrolling (e.g. of testgtk main
1952         buttons
1953         * gdk/win32/gdkgeometry-win32.c : added comment about the above
1954
1955         * gdk/win32/gdkwindow-win32.c : added three new functions like
1956         the X version. Only one is implemented, because the other two
1957         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
1958         be default behaviour on win32 anyway ...
1959
1960         * gtk/gtk.def : updated
1961
1962         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
1963         from where it was built and add an additional rule to automagically
1964         build gtkmarshal.[hc]
1965
1966         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
1967         before array access for the current entry isn't finished
1968
1969         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
1970         use g_return_val_if_fail
1971
1972         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
1973         for the static array, but let the compiler calculate it. It
1974         makes me wonder if gcc isn't capable to catch bugs like this ...
1975
1976 2001-03-31  James Henstridge  <james@daa.com.au>
1977
1978         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
1979         constant "-1" in the aux info structure.
1980
1981 2001-03-30  Alexander Larsson  <alexl@redhat.com>
1982
1983         * gtk/gtkbutton.c (gtk_button_get_property):
1984         * gtk/gtklabel.c:
1985         Remove leaks.
1986         
1987         * gtk/gtkcontainer.c:
1988         * gtk/gtkhscale.c:
1989         * gtk/gtkhscrollbar.c:
1990         * gtk/gtklayout.c:
1991         * gtk/gtkmisc.c:
1992         * gtk/gtkprogress.c:
1993         * gtk/gtkprogressbar.c:
1994         * gtk/gtkrange.c:
1995         * gtk/gtktable.c:
1996         * gtk/gtkviewport.c:
1997         * gtk/gtkvscale.c:
1998         * gtk/gtkvscrollbar.c:
1999         * gtk/gtkwidget.c:
2000         Property patches, based on patches from John Margaglione and Lee Mallabone.
2001
2002 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
2003
2004         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
2005         adjustment. Cleaned redundant preconditions (spin != NULL). Added
2006         inline API function docs.
2007         (gtk_spin_button_new_with_range): New convenience constructor.
2008         (gtk_spin_button_set_increments): New adjustment helper.
2009         (gtk_spin_button_set_range): New adjustment helper.
2010
2011         * gtk/testgtk.c : added test of the new convenince constructor and
2012         value_changed signals.
2013
2014 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
2015
2016         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
2017         listen to the reorder signal.
2018
2019 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
2020
2021         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
2022         to get the aux info structure fo the widget.
2023
2024         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
2025         above function.
2026
2027         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
2028
2029         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
2030         to get the size of the window manager frame, basically the same
2031         code that gdk_window_get_root_origin() had
2032         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
2033
2034         * gtk/gtkwindow.c (gtk_window_set_default_size): use
2035         gdk_window_resize() if the window is realized and resizeable
2036
2037         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
2038         typo so that setting gravity works
2039
2040         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
2041         allocation if auto_shrink is on, even if the default size
2042         has not changed.
2043
2044         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
2045         g_return_if_fail
2046
2047 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
2048
2049         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
2050         reordering/sorting work.  Now pretty much works.
2051
2052         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
2053         reorder mostly work.  Still need to get the parity correct.
2054
2055         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
2056         signal, so I can listen for the sort_column_changed signal so I
2057         can change my "sort_indicator" property.  Cool.
2058
2059 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
2060
2061         [ Patch from Havoc Pennington, hp@redhat.com ]
2062
2063         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
2064         Add functions gdk_window_begin_resize_drag/begin_move_drag
2065         to start resizing or moving a toplevel window. This
2066         is done either using the _NET_WM_MOVERESIZE protocol,
2067         or, if that isn't present, by emulation.
2068
2069         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
2070         to export the above to GTK+-land.
2071
2072         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
2073         
2074         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
2075         Move this function into gdkwindow, since we need it
2076         when implementing fallback resizing.
2077
2078         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
2079         Fix typo when setting gravity.
2080
2081         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
2082         Add an optional (but on by default) resize grip for resizing 
2083         the parent window.
2084
2085 01-03-29  Alexander Larsson  <alexl@redhat.com>
2086
2087         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
2088         Don't return TRUE from the event handler, that blocks all
2089         event signals on the tooltip widget. Now you can press buttons
2090         in toolbars again.
2091
2092 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
2093
2094         * gtk/testtext.c (create_buffer): Add missing NULL on
2095         valist.
2096
2097         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
2098         c-n-p problem with INCONSISTENT property.
2099
2100         [ Patch from Havoc Pennington  <hp@redhat.com> ]
2101
2102         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
2103         hook.
2104
2105         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
2106         signal as a hook for extending the default popup menu
2107
2108         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
2109         use radio menu items for the input method menuitems
2110
2111         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
2112         inserted unicode from Ctrl-Shift-hex input method
2113
2114         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
2115         validatation here, already done at GtkTextBuffer level.
2116
2117         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
2118         popup_menu run action signal and Shift+F10 and Menu keybindings.
2119
2120         * gtk/gtkentry.c: implement a default handler for popup_menu
2121
2122         * gtk/gtktextview.c: implement a default handler for popup_menu
2123
2124         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
2125         from a key event
2126         
2127         * gtk/gtklabel.c: remove "trailer" cruft
2128
2129 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
2130
2131         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
2132         handle reordering of trees.  Seems to mostly work w/ the exception
2133         of the parity flag.
2134
2135         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
2136         signal.
2137
2138 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
2139
2140         * gtk/gtkwidget.h: c++ fixes.
2141
2142 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
2143
2144         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
2145         memory.
2146
2147 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
2148
2149         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
2150         Nils Barth fixing event return values. (#51041)
2151
2152         * gtk/gtkwidget.c: Fix some return values for default
2153         functions.
2154
2155         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
2156         return values for trough_keys functions.
2157
2158         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
2159         value for add_accelerator (shoudl have been a void
2160         return.)
2161
2162         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
2163         Fix return type of EVENT.
2164
2165         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
2166         signal return a boolean.
2167
2168 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
2169
2170         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
2171         reordered signal.
2172
2173         * tests/testtreesort.c (main): fix spelling.
2174
2175 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
2176
2177         * gtk/gtkliststore.c: More work on implementing sortable
2178         interface.
2179
2180 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
2181
2182         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
2183         reference the widgets in the resulting list. (#11821)
2184         This makes this consistent with gtk_container_children.
2185
2186         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
2187         uses of gtk_window_list_toplevels.
2188
2189 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
2190
2191         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
2192         a virtual function to set whether the IM context should use 
2193         the preedit string. (#51922)
2194         
2195 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
2196
2197         * gdk/gdkpango.h: Remove stale FIXME comment.
2198
2199 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
2200
2201         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
2202         Fixed bug that returned NULL if a filename was selected.
2203
2204 2001-03-24  Havoc Pennington  <hp@pobox.com>
2205
2206         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
2207         to contain the word "theme"
2208
2209 2001-03-24  Havoc Pennington  <hp@pobox.com>
2210
2211         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
2212         slower but finer-grained
2213         (gtk_hsv_focus): get initial focus on the ring or triangle 
2214         according to tab direction
2215
2216         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
2217
2218 2001-03-23  Havoc Pennington  <hp@pobox.com>
2219
2220         * gtk/gtkhsv.c: make this somewhat key-navigable
2221
2222         * gtk/gtkfontsel.c: mnemonics
2223
2224         * gtk/gtkgamma.c: mnemonics
2225
2226         * gtk/gtkcolorsel.c: add mnemonics to labels
2227
2228 2001-03-22  Havoc Pennington  <hp@pobox.com>
2229
2230         Applied big patch from Seth Lytle to fix event handler return
2231         values, slightly modified.
2232
2233         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
2234         handled.
2235         (gtk_calendar_key_press): return TRUE for GDK_space triggers
2236         select_day
2237
2238         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
2239         (gtk_clist_button_release): return TRUE if handled
2240
2241         * gtk/gtkcolorsel.c (mouse_release):
2242         (palette_activate): 
2243         (palette_press): 
2244         (palette_new): 
2245         (mouse_press): 
2246         (get_screen_color): 
2247         fixed return type (void to gboolean), return TRUE,
2248         added GTK_SIGNAL_FUNC cast
2249
2250         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
2251         (void to gboolean), and return TRUE
2252         (gtk_combo_button_release): changed return value to TRUE after
2253         gtk_grab_add on combo->popwin
2254
2255         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
2256         collapse or expand
2257
2258         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
2259         button/motion
2260
2261         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
2262         press/release and motion that trigger act
2263
2264         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
2265
2266         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
2267         for GDK_Return
2268         
2269         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
2270         (gtk_list_button_release): return TRUE if selection
2271
2272         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
2273         press
2274
2275         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
2276         (gtk_menu_shell_button_release): chain parent_menu_shell retval
2277
2278         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
2279         nothing triggered
2280         (gtk_notebook_button_release): return TRUE if we do anything
2281
2282         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
2283         (gtk_spin_button_button_release): return TRUE or chained retval
2284
2285         * gtk/gtktext.c (gtk_text_button_press): 
2286         (gtk_text_button_release): return TRUE
2287         (gtk_text_key_press): remove redundant retval code
2288         
2289         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
2290         and sensitive
2291         (gtk_tree_item_subtree_button_click): changed type to gint, and return
2292         TRUE if sensitive
2293
2294         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
2295         return TRUE
2296
2297 2001-03-23  Havoc Pennington  <hp@redhat.com>
2298
2299         * gtk/testgtk.c: fix warnings
2300
2301         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
2302
2303         * gtk/gtktextview.c: fix warnings
2304
2305         * gtk/gtktext.c (find_cursor_at_line): fix warning
2306
2307         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
2308
2309         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
2310         of this function
2311
2312         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
2313         fix warning
2314
2315         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
2316
2317         * gtk/gtkfontsel.c: fix warning
2318
2319         * gtk/gtkcolorsel.c: fix warnings
2320
2321 2001-03-23  Havoc Pennington  <hp@redhat.com>
2322
2323         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
2324
2325         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
2326
2327         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
2328         and deprecated gtk_check_menu_item_set_show_toggle().
2329         
2330         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
2331
2332         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
2333
2334         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
2335
2336 2001-03-23  Havoc Pennington  <hp@redhat.com>
2337
2338         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
2339         some docs
2340
2341 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
2342
2343         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
2344         this.
2345
2346         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
2347         set_cell to set_value
2348
2349         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
2350         set_cell to set_value
2351
2352 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
2353
2354         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
2355         fix braino.
2356         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
2357         support.
2358
2359         * gtk/gtktreeview.c: Addition of initial sortable support.
2360
2361         * gtk/gtktreestore.c: Addition of initial sortable support.
2362
2363         * gtk/gtkliststore.c: Addition of initial sortable support.
2364
2365         * gtk/gtkmarshal.list: yet another marshaller.
2366
2367         * gtk/gtktreedatallist.[ch]: shared code between the store models
2368         for handling sorting headers.
2369
2370 2001-03-22  Havoc Pennington  <hp@redhat.com>
2371
2372         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
2373         (gtk_container_unset_focus_chain): Add ability to override the 
2374         focus chain for a container explicitly
2375
2376 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
2377
2378         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
2379         added PROP_MNEMONIC_WIDGET.
2380
2381         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
2382         (gtk_window_remove_mnemonic): 
2383         (gtk_window_add_mnemonic): fixed assertions.
2384         (gtk_window_activate_mnemonic): constrain modifier checks to those
2385         permitted by gtk_accelerator_get_default_mod_mask().
2386         got rid of gtk_window_get_default_accel_group().
2387
2388         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
2389         activatable widgets either by focussing or a warning.
2390         added a signal accumulator to ::activate_mnemonic which stops the
2391         emission once a handler returned TRUE.
2392
2393 2001-03-22  Havoc Pennington  <hp@pobox.com>
2394
2395         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
2396         the stock item label
2397
2398         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
2399
2400         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
2401
2402         * demos/gtk-demo/*.c: Add mnemonics all over the place
2403
2404         * gtk/gtklabel.h: mark parse_uline deprecated
2405
2406 2001-03-21  Alexander Larsson  <alexl@redhat.com>
2407
2408         * gtk/gtkitemfactory.[ch]:
2409         Add support for stock and normal imagemenuitems.
2410         
2411         * gtk/testgtk.c:
2412         Add some tests for mnemonics, stock toolbars, stock
2413         and image menuitems in itemfactory and gdk_window_scroll.
2414
2415 2001-03-21  Alexander Larsson  <alexl@redhat.com>
2416
2417         * gtk/gtkbutton.[ch]:
2418         * gtk/gtkdialog.c:
2419         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
2420         removed accel_group argument. Renamed gtk_button_new_accel() to
2421         gtk_button_new_with_mnemonic() and removed accel_group argument.
2422
2423         * gtk/gtkcheckbutton.[ch]:
2424         New function gtk_check_button_new_with_mnemonic().
2425
2426         * gtk/gtkentry.c:
2427         Override activate_mnemonic and just grab focus.
2428
2429         * gtk/gtkitemfactory.c:
2430         Don't add menu uline accel group, instead use mnemonics support.
2431
2432         * gtk/gtklabel.[ch]:
2433         New support for mnemonics.
2434
2435         * gtk/gtkmarshal.list:
2436         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
2437
2438         * gtk/gtkmenu.[c]:
2439         * gtkmenushell.c:
2440         Use mnemonics instead of accel groups for uline
2441         support in menu items.
2442         Removed gtk_menu_get_uline_accel_group() and
2443         gtk_menu_ensure_uline_accel_group().
2444
2445         * gtk/gtkmenuitem.c:
2446         Override activate_mnemonic to handle switching between
2447         menu items if there are collisions.
2448         
2449         * gtk/gtknotebook.c:
2450         Connect to activate_mnemonic on the tab_label, so that
2451         activating it switches to that notebook page.
2452
2453         * gtk/gtkwidget.[ch]:
2454         Add activate_mnemonic signal. New function
2455         gtk_widget_activate_mnemonic() to emit it.
2456         Default implementation does activate/grab_focus.
2457
2458         * gtk/gtkwindow.[ch]:
2459         Add support for mnemonics in windows.
2460         New functions:
2461         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
2462         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
2463
2464         * gtk/testgtk.c:
2465         Update to function name changes.
2466         
2467 2001-03-21  Alexander Larsson  <alexl@redhat.com>
2468
2469         * gtk/gtkimagemenuitem.[c]:
2470         Add gtk_image_menu_item_new_from_stock()
2471
2472 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
2473
2474         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
2475         Fix buglet in meeting.
2476
2477 2001-03-19  Havoc Pennington  <hp@redhat.com>
2478
2479         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
2480         add a bunch of accessor functions. This is because we have
2481         reasonable expectations of extending what fields it contains in
2482         the future.
2483
2484         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
2485         changes
2486
2487         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
2488         GtkIconSource   
2489
2490 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
2491
2492         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
2493         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
2494
2495         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
2496           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
2497           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
2498           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
2499         Change float to double everywhere with the exception of 0<->1.0 alignment
2500         and GtkCurve.
2501
2502 2001-03-19  Tor Lillqvist  <tml@iki.fi>
2503
2504         * gdk/win32/gdkdrawable-win32.c
2505         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
2506         output.
2507
2508         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
2509         gdkwin32.h.
2510
2511 2001-03-18  Tor Lillqvist  <tml@iki.fi>
2512
2513         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
2514         print_event_state, print_event): Use preprocessor macro to make
2515         code more compact. Print also GDK_WINDOW_STATE events.
2516         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
2517         
2518         * gtk/gtk.def
2519         * gtk/makefile.mingw.in: Update.
2520
2521         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
2522         to catch also Cygwin.
2523
2524 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
2525
2526         * gtk/gtkspinbutton.[hc]: added rc-style argument
2527         GtkSpinButton::shadow_type.
2528         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
2529         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
2530         rc-style settings.
2531
2532         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
2533
2534         * gtk/gtkwidget.c: quark cleanups.
2535
2536         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
2537         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
2538         to create_rc_style() (we don't do cloning in standard OO sense).
2539         added per rc style properties.
2540         
2541         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
2542         property values and for caching those. some cleanups.
2543         
2544         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
2545         
2546         * gtk/gtksettings.[hc]: new file for global rc-file properties
2547         (at least currently, should get extended to support X properties
2548         and other communication mechanisms).
2549         
2550         * gtk/gtkwidget.[hc]: added style property support:
2551         (gtk_widget_class_install_style_property_parser): install style
2552         property pspec with parser function for rc-file values other
2553         than LONG, DOUBLE or STRING.
2554         (gtk_widget_class_install_style_property): same as above without
2555         parser (parsers are going to be needed quite infrequently).
2556         (gtk_widget_style_get_property): retrive style property value.
2557         (gtk_widget_style_get_valist): same as above with varargs support,
2558         has NOCOPY semantics.
2559         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
2560
2561 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
2562
2563         * demos/gtk-demo/main.c (row_activated_cb): modified to use
2564         "row_activated" signal.
2565
2566         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
2567         stupidity.  Lets actually pass in the row with this signal...
2568
2569 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
2570
2571         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
2572
2573         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
2574
2575         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
2576         everything into the ::destroy function, and freed a lot more.
2577
2578 2001-03-16  Havoc Pennington  <hp@redhat.com>
2579
2580         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
2581         instead of gint16, to avoid overflow issues, since sizes > 16-bit
2582         are now allowed.
2583
2584 2001-03-16  Havoc Pennington  <hp@redhat.com>
2585
2586         * Applied patch from Nils Barth (bug # 51041) to 
2587         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
2588         in various places.
2589
2590 2001-03-15  Havoc Pennington  <hp@redhat.com>
2591         
2592         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
2593         for properties to set on the tag.
2594
2595         * gtk/testtext.c: fixups to reflect create_tag change
2596         
2597         * gtk/gtktexttag.c (gtk_text_tag_set_property):
2598         background/foreground stipple are objects, not boxed.
2599
2600         * demos/gtk-demo/textview.c: intellihancing
2601
2602 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
2603
2604         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
2605         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
2606
2607 2001-03-16  Alexander Larsson  <alexl@redhat.com>
2608
2609         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
2610         Fix sign error with queued region translations.
2611
2612 2001-03-15  HideToshi Tajima  <tajima@happy>
2613
2614         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
2615         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
2616         * gtk/gtkentry.c (update_im_cursor_location): 
2617         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
2618         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
2619         set_cursor_pos to set_cursor_location in GtkInputContext class
2620
2621 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
2622
2623         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
2624         the location of the cell relative to its area.
2625         * gtk/gtkcell*: modified for above change
2626         * gtk/gtktreeview.c: modified for above change.
2627
2628 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
2629
2630         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
2631          (gtk_tree_view_finalize): actually unref the model.  Thanks to
2632         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
2633
2634 2001-03-14  Havoc Pennington  <hp@redhat.com>
2635
2636         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
2637         
2638         * gtk/gtk.h: remove gtkdata.h
2639
2640         * gtk/Makefile.am: remove gtkdata
2641         
2642         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
2643         not "disconnect" on the adjustments.
2644         
2645         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
2646         GtkData
2647
2648         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
2649         not GtkData
2650
2651         * configure.in: handle case where X render exists, but Pango lacks
2652         Xft support.
2653
2654 2001-03-15 Alexander Larsson  <alexl@redhat.com>
2655
2656         * gtk/gtktoolbar.[ch]:
2657         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
2658         to add stock items to toolbars.
2659
2660         * gtk/Makefile.am:
2661         Remove ../gdk/gdkim.h from gdk_headers.
2662
2663 2001-03-15  Sven Neumann  <sven@gimp.org>
2664
2665         * gdk/gdkim.h: removed
2666         
2667         * gdk/gdkprivate.h
2668         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
2669
2670 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
2671
2672         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
2673         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
2674         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
2675         set_cursor_pos() virtual method
2676
2677         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
2678         (gtk_im_context_xim_set_cursor_pos): add implementation for
2679         set_cursor_pos() method
2680
2681         * gtk/gtkentry.c (recompute_idle_func): set current cursor
2682         position to input methods
2683
2684 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
2685
2686         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
2687         code a lot.
2688
2689         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
2690         g_mem_chunk.
2691         (_gtk_tree_data_list_alloc): use g_mem_chunk.
2692         (_gtk_tree_data_list_node_to_value): Fix to switch on
2693         G_TYPE_FUNDAMENTAL.
2694         (_gtk_tree_data_list_value_to_node): Fix to switch on
2695         G_TYPE_FUNDAMENTAL.
2696         (_gtk_tree_data_list_node_copy): Fix to switch on
2697         G_TYPE_FUNDAMENTAL.
2698
2699 2001-03-12  Havoc Pennington  <hp@redhat.com>
2700
2701         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
2702         to convert to new property API. Also, change default_width and
2703         default_height get_property to return 0 as the flag value for
2704         "unset"; -1 is not a valid value for these fields.
2705
2706 2001-03-12  Havoc Pennington  <hp@redhat.com>
2707
2708         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
2709         enum with registration for icon sizes, instead of strings.
2710
2711         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
2712         gtkwidget.c: Fix to reflect GtkIconSize
2713         
2714 2001-03-12  Alexander Larsson  <alexl@redhat.com>
2715
2716         Make GtkFB compile and link.
2717         
2718         * gdk/linux-fb/gdkdrawable-fb2.c:
2719         window->mapped to GDK_WINDOW_IS_MAPPED(). 
2720         
2721         * gdk/linux-fb/gdkwindow-fb.c:
2722         window->mapped to GDK_WINDOW_IS_MAPPED(). 
2723         Added gdk_window_shape_combine_region.
2724         Added assorted placeholders for unimplemented new GdkWindow API calls.
2725
2726 2001-03-12  Alexander Larsson  <alexl@redhat.com>
2727
2728         * gtk/gtkfilesel.c:
2729         Add more test when converting filenames from/to utf-8.
2730         Don't allow entering text in the filename entry which isn't allowed in
2731         a filename. Just beep instead.
2732
2733 2001-03-12  Alexander Larsson  <alexl@redhat.com>
2734
2735         * gtk/gtkclist.c:
2736         Scroll using gdk_window_scroll(). Don't wait for exposes.
2737         Move the column headers in an order that makes them flash less.
2738
2739 2001-03-10  Hans Breuer  <hans@breuer.org>
2740
2741         * gdk/gdk.def : updated
2742
2743         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
2744         to offseting the clip_mask at the right place
2745
2746         * gdk/win32/gdkwindow-win32.c : don't create background brushes
2747         for all the gdkClasses, especially not for the input_only case.
2748         Otherwise flickering wont be avoidable, because we don't get
2749         WM_ERASEBKGND message for these windows.
2750
2751         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
2752         and fixed massive redraw problems apparently triggered by Alexanders 
2753         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
2754         but it seems to work quite well :-)
2755
2756         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
2757         prototype
2758
2759 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
2760
2761         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
2762         (gtk_list_store_set_cell): Fix a stupid typo.
2763
2764 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
2765
2766         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
2767         select_all not work if you're in SINGLE mode (it doesn't make that
2768         much sense, anyway.)
2769
2770         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
2771         handle types more sanely.
2772         (_gtk_tree_data_list_value_to_node): handle types more sanely.
2773         (_gtk_tree_data_list_node_copy): handle types more sanely.
2774
2775         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
2776         GValue better. Converts the type as well.
2777
2778         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
2779         GValue better. Converts the type as well.
2780
2781 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
2782
2783         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
2784         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
2785         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
2786         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
2787
2788         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
2789         gdk_im/gdk_ic.
2790
2791 2001-03-09  Hans Breuer  <hans@breuer.org>
2792
2793         * gdk/gdk.def : updated
2794
2795         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
2796         for their palette
2797
2798         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
2799         removing
2800
2801         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
2802         removing and implemented Havoc's GdkWindow state functions; 
2803         stick/unstick only as no-op, cause I don't know how to emulate 
2804         on win32 ...
2805
2806         * gtk/gtk.def : updated
2807
2808         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
2809
2810         * gtk/gtktypeutils.c : #include <string.h>
2811
2812         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
2813
2814 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
2815
2816         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
2817         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
2818         not a boxed.
2819
2820 2001-03-09  Alexander Larsson  <alexl@redhat.com>
2821
2822         * docs/Changes-2.0.txt:
2823         Document expose event->region change and that gtk_widget_event
2824         doesn't allow passing expose events.
2825
2826         * gdk/gdkevents.h:
2827         Add region to expose event.
2828         
2829         * gdk/gdkevents.c:
2830         Handle event->region in gdk_event_copy() and gdk_event_free().
2831
2832         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
2833         Generate expose_event->region when creating expose events.
2834
2835         * gdk/x11/gdkevents-x11.c:
2836         Generate expose events with regions when translating X events.
2837
2838         * gtk/gtkcontainer.[ch]:
2839         Default expose handler that propagates expose events to NO_WINDOW
2840         children. New function gtk_container_propagate_expose()
2841
2842         * gtk/gtkwidget.[ch]:
2843         Moved gtk_widget_event implementation to gtk_widget_event_internal.
2844         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
2845         expose events. New function gtk_widget_send_expose() to send expose
2846         events. New function gtk_widget_region_intersect() to calculate
2847         window/region intersections.
2848         
2849         * gtk/gtkmain.c (gtk_main_do_event):
2850         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
2851         Use gtk_widget_send_expose() to send expose events.
2852         
2853         * gtk/gtkbin.c:
2854         * gtk/gtkbox.c:
2855         * gtk/gtkfixed.c:
2856         * gtk/gtkimagemenuitem.c:
2857         * gtk/gtklist.c:
2858         * gtk/gtkpacker.c:
2859         * gtk/gtktable.c:
2860         * gtk/gtktree.c:
2861         Remove expose handler, using the default container implementation
2862         instead.
2863         
2864         * gtk/gtkbutton.c:
2865         * gtk/gtkcheckbutton.c:
2866         * gtk/gtkeventbox.c:
2867         * gtk/gtkfixed.c:
2868         * gtk/gtkhandlebox.c:
2869         * gtk/gtklayout.c:
2870         * gtk/gtklistitem.c:
2871         * gtk/gtkmenu.c:
2872         * gtk/gtkmenubar.c:
2873         * gtk/gtkmenuitem.c:
2874         * gtk/gtknotebook.c:
2875         * gtk/gtkoptionmenu.c:
2876         * gtk/gtkpaned.c:
2877         * gtk/gtkscrolledwindow.c:
2878         * gtk/gtktogglebutton.c:
2879         * gtk/gtktoolbar.c:
2880         * gtk/gtktreeitem.c:
2881         * gtk/gtkviewport.c:
2882         Chain expose handler to parent class handler. Use
2883         gtk_container_propagate_expose() to propagate exposes.
2884
2885         * gtk/gtkclist.c (check_exposures):
2886         * gtk/gtktext.c (process_exposes):
2887         Use gtk_widget_send_expose instead of gtk_widget_event.
2888
2889 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
2890
2891         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
2892
2893 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
2894
2895         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
2896         unref the nodes.   Fixes bug #50058.
2897
2898         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
2899         "::ref_iter" to "::ref_node".
2900         (gtk_tree_model_unref_node): change "::unref_iter" to
2901         "::unref_node". Fixes bug #50064.
2902
2903 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
2904
2905         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
2906         support for invisible cells.
2907          (gtk_tree_view_bin_expose): ditto
2908
2909 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
2910
2911         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
2912         on gobjects.
2913
2914         * tests/testtreefocus.c (main): New test file.
2915
2916         * tests/testtreeview.c: update to latest glib changes.
2917
2918         * tests/testtreecolumns.c: update to latest glib changes.
2919
2920 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
2921
2922         * gtk/testgtk.c: re-enabled event watcher emission hooks.
2923
2924 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
2925
2926         * *.c: added accumulator data argument to g_signal_newc()
2927         functions.
2928
2929         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
2930         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
2931         * gtk/treestoretest.c (make_window):
2932         s/g_signal_connect/g_signal_connectc/.
2933
2934         * gtk/gtktextbuffer.c: completed signal arg fixups,
2935         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
2936
2937 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
2938
2939         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
2940         G_CONST_RETURN.
2941
2942         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
2943         ::hierarchy-changed signal when a widget changes
2944         from anchored to unanchored or vice versa.
2945         (anchored means 
2946          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
2947         Use a private flag to keep track of this efficiently.
2948
2949 2001-03-07  Havoc Pennington  <hp@redhat.com>
2950
2951         * gtk/testgtk.c (create_spins): uglify so that size request gets
2952         tested.
2953
2954         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
2955         request on values for upper/lower, completes #6152
2956
2957 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
2958
2959         * Makefile.am: Remove gtk-config-2.0 again.
2960         (Grrrr, pkg-config. And stops make loops.)
2961
2962 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
2963
2964         * gtk/gtksignal.[hc]: removed old emission hook API.
2965         
2966         * docs/Changes-2.0.txt: fixed sections.
2967         
2968         * gtk/gtktextbuffer.c: signal arg fixups.
2969
2970 2001-03-07  Havoc Pennington  <hp@redhat.com>
2971
2972         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
2973
2974         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
2975         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
2976         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
2977         validation and the redraw which is higher priority than the
2978         validation.
2979
2980 2001-03-07  Havoc Pennington  <hp@redhat.com>
2981
2982         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
2983         (gtk_entry_set_property): remove trailer
2984
2985         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
2986         (gtk_entry_get_width_chars): new functions, to set size request to 
2987         a given number of characters
2988
2989         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
2990
2991         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
2992         (gtk_dialog_get_has_separator): new function
2993         (run_delete_handler): fix to not emit "response" signal
2994         because we already did in the delete event handler installed
2995         at dialog creation time.
2996         
2997         * gtk/gtkdialog.h: add a has_separator property,
2998         add GTK_DIALOG_NO_SEPARATOR flag
2999
3000 2001-03-07  Havoc Pennington  <hp@redhat.com>
3001
3002         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
3003         off decorations for a window.
3004
3005         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
3006         changes
3007
3008         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
3009         to get location of PangoLayout inside the label, closes #51198
3010
3011         * gtk/testgtk.c (create_bbox): fix up button box usage
3012
3013         * gtk/testcalendar.c (create_calendar): fix up button box usage
3014
3015         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
3016
3017         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
3018
3019         * gtk/gtkhbbox.h: deprecations
3020
3021         * gtk/gtkvbbox.h: deprecations
3022
3023         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
3024         emulate deprecated gtk_button_box_get_spacing
3025
3026         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
3027         the "set global default" functions
3028         (struct _GtkButtonBox): remove "spacing" field, use the one from 
3029         GtkBox base class
3030
3031         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
3032
3033         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
3034         render the icon, return the missing image icon.
3035
3036         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
3037         image icon if the load fails.   
3038
3039         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
3040         when no image is found; should be the Netscape "missing image"
3041         icon eventually but for now is a random image
3042
3043         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
3044         role for the session manager
3045
3046         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
3047
3048         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
3049         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
3050
3051         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
3052
3053 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
3054
3055         * gtk/*.c: marshaller fixes.
3056         
3057         * gtk/gtkmarshal.list: extreme cleanup.
3058
3059         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
3060         param spec for now.
3061
3062         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
3063         where appliable.
3064
3065         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
3066         special cased autogenerated boxed types from gtktypebuiltins_ids.c
3067         which are not reference counted:
3068         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
3069         PangoFontDescription, GtkTreeIter and GtkTreePath.
3070
3071 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
3072
3073         * gtk/gtktreeselection.h: 
3074         * gtk/gtktreemodel.c:
3075         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
3076         file should be included directly, and gobject/gmarshal.h
3077         as well as gtk/gtkmarshal.h even can't be included directly.
3078
3079         * Makefile.am: grr, install gtk-config-2.0.
3080
3081         * gtk/testgtk.c:
3082         * gtk/simple.c:
3083         * gtk/gtkmenu.c:
3084         * gtk/gtkitemfactory.c: use g_object_connect() instead of
3085         passing "*signal*::*" args to gtk_widget_set().
3086         
3087         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
3088         
3089         * gtk/*.c: removed trailer arg from property setters and getters.
3090         macro fixups.
3091
3092 2001-03-07  Alexander Larsson  <alexl@redhat.com>
3093
3094         * gtk/gtklabel.c (set_markup): Removed warning
3095
3096 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
3097
3098         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
3099         field to allow you to hide cell renderers.
3100
3101         * gtk/gtkcellrenderer.c: Add support for invisible cells.
3102
3103         * gtk/gtktreeview.c: Add support for invisible cells.
3104
3105 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
3106
3107         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
3108         Add "clicked" signal back to columns.
3109
3110         * ChangeLog: remove conflict markers.
3111
3112 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
3113
3114         * gtk/gtkbutton.c: Add animation of activation by, on 
3115         activate, pressing the button, and adding a timeout that 
3116         releases the button after 250ms or on key release and
3117         emits ::clicked. (#51501)
3118
3119         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
3120         action area, we connect to ::clicked instead of ::activate
3121         so the dialog stays up through the animation.
3122
3123 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
3124
3125         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
3126         check the ignore_enter flag for the menu shell that
3127         the item is actually a child of, not for attached
3128         submenus. (#51536)
3129
3130 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
3131
3132         * gtk/gtkmain.c (gtk_propagate_event): Only do special
3133         special key-press grab handling for widgets within
3134         GtkWindows. Otherwise, fall through to normal case.
3135
3136         This prevents key events being sent twice to GtkInvisible
3137         widgets, which can cause all sorts of mischief.
3138
3139 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
3140
3141         * gtk/gtkmain.c (gtk_propagate_event): When a grab
3142         widget is in effect, give the grab widget a first
3143         crack at KEY_PRESS/RELEASE events. (#424)
3144
3145 2001-03-06  James Henstridge  <james@daa.com.au>
3146
3147         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
3148         offset for the window_state_event to point at window_state_event
3149         rather than no_expose_event.
3150
3151 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
3152
3153         * gtk/gtkimmodule.h: fix busted /* comment */
3154
3155 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
3156
3157         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
3158         object properties.
3159
3160 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
3161
3162         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
3163         add object properties.
3164
3165         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
3166         to add object properties.
3167
3168         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
3169         object properties.
3170
3171         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
3172         add object properties.
3173
3174         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
3175         object properties.
3176
3177 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
3178
3179         * gtk/gtktreemodel.c: renamed "child_toggled" to
3180         "has_child_toggled".
3181
3182         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
3183         handle new signal name.
3184
3185         * gtk/gtktreestore.c: Updated to handle new signal name.
3186         * gtk/gtklisttore.c: Updated to handle new signal name.
3187         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
3188
3189 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3190
3191         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
3192         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
3193
3194 2001-03-05  Michael Natterer  <mitch@gimp.org>
3195
3196         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
3197         pixbuf-engine coincidentially also failed to make one of it's
3198         parent_class pointers static, causing overwriting of GtkLabel's
3199         parent_class pointer in pixbuf_style_class_init().
3200         (Will commit the fix to the pixbuf-engine too).
3201
3202 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3203
3204         * gdk/gdkwindow.h:
3205         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
3206         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
3207         gdk_window_set_icon_list for net wmspec functionality.
3208
3209         * gdk/x11/gdkwindow-x11.c:
3210         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
3211         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
3212         gdk_window_set_icon_list.
3213         Added gdk_wmspec_change_state helper function and used it in the code.
3214         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
3215
3216         * gtk/gtkdialog.c (gtk_dialog_init):
3217         Set GDK_WINDOW_TYPE_HINT_DIALOG.
3218
3219         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
3220         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
3221
3222         * gtk/gtkwindow.c:
3223         new function gtk_window_set_type_hint.
3224         On realize, set type hint and modal hint.
3225
3226         * gtk/gtkwindow.h:
3227         Added type_hint field and gtk_window_set_type_hint.
3228
3229 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3230
3231         * gtk/gtklabel.[ch]:
3232         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
3233         New function gtk_label_get_accel_keyval () to get the underline accelerator
3234         of the label. Setting the label pattern overrides other attributes.
3235
3236 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
3237
3238         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
3239         Added missing initializers to gtk_rc_style_init().
3240
3241 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
3242
3243         * gtk/gtktextview.c: fixed bug #51097 about setting 
3244         gtk_text_view_set_border_window_size() if the widget is 
3245         already realized.
3246
3247 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
3248
3249         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
3250
3251         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
3252         comment. Won't do to have duplicated doc comments between
3253         the platform subdirs.
3254
3255 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
3256
3257         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
3258           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
3259
3260         Detectable auto-repeat - make a repeating key generate
3261         press/press/press/release instead of press/release pairs.
3262
3263         If we have Xkb and XkbSetDectableAutoRepeat supports
3264         that, we do it that way. Otherwise, when we get
3265         a release event, we check ahead with XPending to see
3266         if the next key is a KeyPress with the same keycode
3267         and timestamp. (Not 100% reliable, but pretty close.)
3268           
3269 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
3270         
3271         * gtk/gtkmain.c (gtk_propagate_event): Only do special
3272         special key-press grab handling for widgets within
3273         GtkWindows. Otherwise, fall through to normal case.
3274  
3275         This prevents key events being sent twice to GtkInvisible
3276         widgets, which can cause all sorts of mischief.
3277  
3278 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
3279  
3280         * gtk/gtkmain.c (gtk_propagate_event): When a grab
3281         widget is in effect, give the grab widget a first
3282         crack at KEY_PRESS/RELEASE events. (#424)
3283  
3284 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
3285
3286         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
3287         to extend the selection. (Roughly based on patch
3288         from Jay Cox, #50939)
3289
3290         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
3291         to properly handle previous GDK_BUTTON_PRESS. 
3292         (Patch from Jay Cox, #50938)
3293
3294         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
3295         '\0' back along with the deleted text. (#51148)
3296
3297 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
3298
3299         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
3300         the group when extracting it from the X keyboard event.
3301
3302         * modules/input/Makefile.am modules/input/imipa.c: 
3303         Simple module for entering IPA. (Do we need a 
3304         gtk-stupid-input-tricks CVS module?)
3305
3306 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
3307
3308         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
3309         const.
3310
3311         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
3312
3313         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
3314         is no focus widget for the dialog currently, grab the focus as well
3315         as the default.
3316
3317         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
3318         the action area's children to iterate through, not the
3319         dialog's children.
3320
3321 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
3322
3323         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
3324         Add plug-socket tests. (Won't work worth a darn until I commit
3325         the rest of the plug-socket changes, but no reason these
3326         can't go into CVS now.)
3327
3328 2001-03-02  Havoc Pennington  <hp@redhat.com>
3329
3330         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
3331         _gdk_region_get_xrectangles()
3332
3333         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
3334
3335         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
3336
3337         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
3338         function, contributed by Ron Steinke    
3339
3340         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
3341         gdk_net_wm_supports
3342
3343         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
3344         New function, contributed by Ron Steinke
3345
3346         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
3347         used to line up the text in the entry when using the entry for
3348         editable sheet cell hacks
3349
3350         * gtk/testgtk.c (create_entry): test the activate_default setting
3351         on GtkEntry
3352
3353         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
3354         cause the entry to activate the default button for a dialog when 
3355         activated
3356         (gtk_entry_get_activates_default): new function
3357
3358 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
3359
3360         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
3361         Hwang to move call to sync_selection() up a few lines
3362         to before the row list is modified, to fix crash when
3363         removing rows in the undo_selection list.
3364
3365         (Test case provided by Daniel Elstner:
3366
3367         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
3368
3369 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
3370
3371         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
3372         of tree->root_tree in parent_set rather than _map(), 
3373         fixing #50892 in a bit better manner.
3374
3375 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
3376
3377         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
3378
3379 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
3380
3381         * gtk/gtkstyle.c : Remove duplicate fwd decl for
3382         gtk_default_draw_shadow.
3383
3384 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
3385
3386         * gdk/gdkimage.c (gdk_image_new): Remove excess 
3387         warning, make warnings more verbose, treat a error
3388         in shmat as permanent, and don't try again.
3389         (#51163, Ed Randall.)
3390
3391 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
3392
3393         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
3394         delay for the first click before starting to scroll.
3395         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
3396
3397         * gtk/gtktext.c: GtkText should have I-beam cursor. 
3398         (based on gtk-enf-990513-1.patch, Eric Fisher.)
3399
3400 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
3401
3402         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
3403         cleanup to remove some references to unused
3404         ->xoffset, ->yoffset.
3405
3406 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
3407
3408         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
3409         mask. (#51039, fix from Martin Maierhofer)
3410
3411 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
3412
3413         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
3414         for unshifted + and shifted = for non-us keyboards.
3415         Make <Control>+ and <Control>- work as well as 
3416         <Control>KP_Plus, <Control>KP_Minus for recursive
3417         open/close.  (#2682, René Seindal)
3418
3419 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
3420
3421         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
3422         the active menu item before deactivating the menu,
3423         so gtk_menu_popdown doesn't change the history. (#50964)
3424         
3425 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
3426
3427         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
3428         draw lines with text_gc rather than black_gc.
3429         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
3430
3431 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
3432
3433         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
3434         Move handling of buttons fully in gtktreeviewcolumn.  This code is
3435         less interrelated then it was, but it still requires the
3436         GtkTreeView to map it.
3437
3438         * test/testtreecolumn.c: Now I can add a column to one view,
3439         remove it, add it to the another view, remove it, then re-add it
3440         to the first.  Nifty.
3441
3442 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
3443
3444         * docs/tutorial/gtk-tut.sgml: Minor corrections
3445
3446 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
3447
3448         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
3449         GtkRowReference.
3450
3451 2001-02-28  Havoc Pennington  <hp@redhat.com>
3452
3453         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
3454         draw_default
3455         (gtk_widget_draw_focus): remove this function; we could instead
3456         make it just gtk_widget_draw(), but in most cases I think the
3457         result would be broken user code, so think it's better to have
3458         that code not compile and get fixed
3459         (gtk_widget_draw_default): ditto
3460
3461         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
3462         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
3463         
3464         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
3465         widgets lose/get the default, instead of calling draw_default
3466         
3467         * docs/Changes-2.0.txt: note about all this
3468
3469         Then fixed every widget in GTK, I won't list all the filenames.
3470
3471 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
3472
3473         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
3474         _gtk_tree_row_reference_deleted.
3475         (inserted_callback): Proxy out to
3476         _gtk_tree_row_reference_inserted.
3477         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
3478         get around signal emission ordering problem.
3479
3480         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
3481         fix to work with SINGLE 
3482         (_gtk_tree_selection_internal_select_node): Major sanitization on
3483         selections.  SINGLE now seems to work.
3484
3485         * tests/Makefile.am: add testtreecolumn.c:
3486
3487         * tests/testtreecolumn.c: New test.  Mostly points out selection
3488         bugs currently, but will test columns later.
3489
3490         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
3491         selection bug.  I hate touching this code -- it's scary.
3492
3493 2001-02-26  Havoc Pennington  <hp@redhat.com>
3494
3495         * gtk/testgtk.c: test the window state stuff
3496
3497         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
3498         window come to the user's attention as if it were just created
3499         (gtk_window_iconify): new function
3500         (gtk_window_deiconify): new function
3501         (gtk_window_stick): new function
3502         (gtk_window_unstick): new function
3503         (gtk_window_maximize): new function
3504         (gtk_window_unmaximize): new function
3505
3506         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
3507
3508         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
3509
3510         * gdk/x11/gdkevents-x11.c: create window state events when
3511         appropriate
3512         (gdk_wmspec_supported): new function
3513
3514         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
3515         iconification before showing the window
3516         (gdk_window_deiconify): new function
3517         (gdk_window_stick): new function
3518         (gdk_window_unstick): new function
3519         (gdk_window_maximize): new function
3520         (gdk_window_unmaximize): new function
3521
3522         * gdk/gdkwindow.c: store the window state in the window; 
3523         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
3524         window->mapped.
3525         (gdk_window_get_state): return the current window state
3526
3527         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
3528         (gdk_event_get_state): handle GDK_WINDOW_STATE
3529         (gdk_synthesize_window_state): function to create the window state
3530         events
3531
3532         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
3533         event, for changes to "window state" such as maximized, sticky, 
3534         etc.
3535         
3536         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
3537         focuses a window
3538
3539         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
3540         finds out if we support a given WM spec hint
3541
3542 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
3543
3544         * docs/faq/gtk-faq.sgml: New question re memory leaks.
3545
3546 2001-02-25  Hans Breuer  <hans@breuer.org>
3547
3548         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
3549         cause we want to loose those prototypes only in the latter case
3550
3551         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
3552         GdkPixmapImplWin32 because it itsn't derived from it. Use the
3553         impl member variable instead
3554
3555         * gtk/gtk.def : updated
3556
3557         * gtk/gtklist.c : 
3558         * gtk/gtkmenus.c : include <string.h> for memset ()
3559
3560         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
3561         for everthing built here, but for gtk-x.x.dll only. This solves
3562         problem of indifferent gtk type definitions
3563
3564 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
3565
3566         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
3567
3568 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
3569
3570         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
3571         column that is exposed.
3572
3573         (_gtk_tree_view_update_size): Changed name from set_size, and
3574         changed function to do more work, and not force people calling it
3575         to figure out the size.  Simplifies a lot of code elsewhere.
3576
3577 2001-02-23  Alexander Larsson  <alexl@redhat.com>
3578
3579         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
3580         return solid masks for xpms that have no transparent color.
3581         This makes the ..._create_from_xpm... API backwards
3582         compatible.
3583
3584 2001-02-23  Tor Lillqvist  <tml@iki.fi>
3585
3586         * README.win32: Update. Mention the gtk-1-3-win32-production
3587         branch.
3588
3589         * gdk/win32/bdfcursor.c: New file. A program that generates
3590         xcursors.h. Thanks to Stefan Ondrejicka.
3591
3592         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
3593         compact format.
3594
3595         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
3596
3597         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
3598         function, uses xcursors.h.
3599         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
3600         cursor from inline data instead of using LoadCursor() to generate
3601         it from a resource.
3602
3603         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
3604         event, must check the Windows message for mouse button state, as
3605         the GDK event state might not have been built if it is
3606         undelivered. Remove one goto.
3607
3608         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
3609         SetCursor() if the current cursor as returned by GetCursor() is
3610         the window's previous cursor. The ChildWindowFromPoint() test
3611         apparently didn't work correctly.
3612
3613         * gdk/win32/rc/*.cur: Remove.
3614
3615         * gdk/win32/rc/gdk.rc.in: Remove cursors.
3616
3617         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
3618
3619         * gtk/makefile.{mingw,msc}.in: Updates.
3620
3621 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
3622
3623         * gtk/gtktreemodel.h: add functions for signal emission.
3624
3625         * gtk/gtktreestore.c: move to use above functions instead of
3626         g_signal_emit.
3627
3628         * gtk/gtkliststore.c: ditto
3629
3630 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
3631
3632         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
3633         GObject instead of GtkObject.
3634
3635         * gtk/gtkliststore.c: ditto.
3636
3637         * gtk/gtktreemodelsort.c: ditto.
3638
3639         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
3640         GtkTreeModelIface, instead of in each model.
3641
3642 2001-02-21  Havoc Pennington  <hp@redhat.com>
3643
3644         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
3645         unbreak this function
3646
3647         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
3648         properties
3649
3650         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
3651         properties
3652
3653         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
3654         properties
3655
3656         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
3657         mean unset the max length
3658
3659 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
3660
3661         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
3662         Changed name to be set_cell_data_func to make it clear what
3663         the functino does.  Close bug #51069.
3664
3665 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
3666
3667         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
3668         have memory actually freed.  Keeps box running longer.
3669
3670 2001-02-21  Alexander Larsson  <alexl@redhat.com>
3671         
3672         * gtk/gtkseparatormenuitem.[ch]:
3673         Added new menu separator item. The drawing and size handling
3674         is still done in GtkMenuItem, but the API is a bit more sane.
3675         
3676         * gtk/Makefile.am:
3677         Add gtkseparatormenuitem.[ch].
3678
3679         * gtk/gtk.h:
3680         Add gtkseparatormenuitem.h.
3681         
3682         * gtk/gtkentry.c:
3683         * gtk/gtkmenufactory.c:
3684         * gtk/gtktextview.c:
3685         Use the new API for menu separators.
3686         
3687         * demos/gtk-demo/menus.c (create_menu):
3688         Add some GtkSeparatorMenuItem demo code.
3689
3690 2001-02-20  Havoc Pennington  <hp@redhat.com>
3691
3692         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
3693         Lee Mallabone
3694
3695         * gtk/gtkarrow.c: Convert to new property API, patch from 
3696         Lee Mallabone
3697
3698 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
3699
3700         * tests/testtreeview.c (toggled_callback): fix to reflect change
3701         in GtkTreeModelStore.
3702
3703 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
3704
3705         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
3706         function to create an icon set from a pixbuf.
3707
3708 2001-02-20  Alexander Larsson  <alexl@redhat.com>
3709
3710         * gtk/gtkcellrenderertext.[ch]:
3711         Add a "markup" property.
3712
3713         * gtk/treestoretest.c:
3714         Use the markup property, remove some leftover stuff from
3715         GtkTreeModelMapping.
3716
3717 2001-02-20  Alexander Larsson  <alexl@redhat.com>
3718
3719         * gtk/gtklabel.c (gtk_label_set_selectable):
3720         Queue a redraw if the selectable setting was changed.
3721
3722 2001-02-20  Alexander Larsson  <alexl@redhat.com>
3723
3724         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
3725         Actually copy the whole gc, not just the public parts.
3726         
3727         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
3728         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
3729         labels.
3730
3731 2001-02-19  Havoc Pennington  <hp@pobox.com>
3732
3733         * gdk/gdkwindow.c: docs
3734
3735         * gdk/gdkrgb.c: docs
3736
3737         * gdk/gdkregion-generic.c: docs
3738
3739         * gdk/gdkgc.c (gdk_gc_set_values): docs
3740
3741         * gdk/gdkdraw.c: docs
3742
3743         * gdk/gdkdrawable.h: deprecate drawable get/set data
3744
3745 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
3746
3747         * demos/gtk-demo/dialog.c: Add simple new demo.
3748
3749 2001-02-19  Havoc Pennington  <hp@redhat.com>
3750
3751         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
3752         insert_child_anchor signal, bug #50245
3753
3754         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
3755         from create_child_anchor, so the anchor is passed in
3756
3757         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
3758         (_gtk_widget_segment_new): have the child anchor object passed in, 
3759         instead of creating it.
3760
3761         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
3762         to gtk_text_buffer_get_modified
3763
3764 2001-02-19  Havoc Pennington  <hp@redhat.com>
3765
3766         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
3767         changed GLib without fixing GTK
3768
3769         * gtk/gtkrange.h: Rename all the stupid implementation detail 
3770         functions to have an underscore in front. Most of them should 
3771         probably just go away, but for starters don't export them.
3772         Bug #50482
3773
3774 2001-02-19  Havoc Pennington  <hp@redhat.com>
3775
3776         * gdk/gdkcolor.h: test was backward, so deprecated functions were
3777         excluded by default
3778
3779         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
3780         clean up the old code a bit
3781
3782         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
3783         inconsistent state
3784
3785         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
3786         draw inconsistent state
3787
3788         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
3789         (create_menu): add inconsistent test
3790
3791         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
3792         new function
3793         (gtk_check_menu_item_get_inconsistent): new function
3794         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
3795         state (using etched in for now)
3796
3797         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
3798         draw inconsistent state
3799
3800         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
3801         function, used when the user has selected a range of stuff in
3802         different states
3803         (gtk_toggle_button_get_inconsistent): accessor for that
3804         (gtk_toggle_button_paint): draw inconsistent state (etched in?
3805         don't know what else to do)
3806
3807 2001-02-19  Hans Breuer <hans@breuer.org>
3808
3809         * gtk/gtk.def : updated exported symbols
3810
3811         * gtk/makefile.msc.in : updated
3812
3813         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
3814         a colormap, when invoked from testgtk::entry. I'm not sure where
3815         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
3816         avoids immediate crashing ...
3817
3818         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
3819         any objections ?
3820
3821         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
3822         0 parameter. At least msvc doesn't like macros with var args. 
3823         I simply removed the extra 0, was it a feature or a typo ?
3824
3825         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
3826         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
3827         because the value assignment to the internal struct wasn't working.
3828         I'm not absolutely sure. The problem could have been resolved by
3829         changing the "func" declartion in the struct, but was the pointer
3830         to the function pointer intended ?
3831
3832         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
3833
3834         * gdk/gdk.def : updated exported symbols
3835
3836         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
3837         only use SetDIBitsToDevice if there is a palette at the drawable
3838         and the image is GDK_VISUAL_PSEUDO_COLOR
3839
3840         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
3841
3842         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
3843
3844         * gdk/*/makefile.msc : updated
3845
3846 2001-02-19  Havoc Pennington  <hp@redhat.com>
3847
3848         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
3849         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
3850
3851         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
3852         (gdk_key_repeat_restore): nuke
3853
3854         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
3855         (gdk_init_check): no atexit func
3856
3857         * gdk/gdkrgb.h: mark some stuff deprecated
3858
3859         * gdk/gdkcolor.h: mark some stuff deprecated
3860         
3861         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
3862
3863         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
3864
3865 2001-02-16  Havoc Pennington  <hp@redhat.com>
3866
3867         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
3868         scroll steps.
3869
3870         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
3871         steps, and add Ctrl-arrow shortcuts for paging visually as with
3872         HScale, since Page Up and Page Down move logically.
3873
3874         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
3875         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
3876         
3877         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
3878         steps
3879         (gtk_range_scroll): handle the visual steps
3880
3881         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
3882         scroll steps
3883
3884         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
3885         steps, not the logical ones.
3886
3887         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
3888         (scroll_vertical): handle up/down steps
3889
3890 2001-02-19 Alexander Larsson  <alexl@redhat.com>
3891
3892         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
3893         Copy data and free data with free().
3894
3895         * gdk-pixbuf/gdk-pixbuf.c:
3896         * gdk-pixbuf/io-jpeg.c:
3897         * gdk-pixbuf/io-png.c:
3898         Use g_try_malloc/g_free instead malloc/free.
3899         
3900         * gdk-pixbuf/test-gdk-pixbuf.c:
3901         Must... initialize... gobject...
3902         
3903         * gdk-pixbuf/pixops/timescale.c:
3904         * gtk/gtkcalendar.c:
3905         Use g_malloc instead of malloc.
3906         
3907 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
3908
3909         * gtk/testgtkrc:
3910         Comment out property assignments, these don't work yet.
3911
3912 2001-02-17  Havoc Pennington  <hp@pobox.com>
3913
3914         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
3915         bit.
3916
3917 2001-02-17  Havoc Pennington  <hp@pobox.com>
3918
3919         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
3920         shadowed variables that had broken size request in some cases,
3921         leading to bogus tooltips (#50996)
3922
3923 2001-02-06  Jon K Hellan  <hellan@acm.org>
3924
3925         Implement fast browsing of tooltips, bug #50619
3926         
3927         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
3928         and last_popdown
3929         
3930         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
3931         use_sticky_delay and last_popdown.
3932         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
3933         time of popdown.
3934         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
3935         is NULL.
3936         (gtk_tooltips_recently_shown): New static function.  Return true
3937         if < sticky_delay has elapsed since last popdown.
3938         (gtk_tooltips_event_handler): Display window after sticky_delay
3939         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
3940         since last popdown.
3941         
3942 2001-02-17  Havoc Pennington  <hp@pobox.com>
3943
3944         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
3945         instead of (). #6394
3946
3947         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
3948         G_CONST_RETURN, make it return by reference, #50473
3949         
3950 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
3951
3952         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
3953         generated ENTER_NOTIFY event with 0, otherwise not explicitely
3954         setup fields contain garbage (e.g. subwindow, breaking
3955         gdk_drawable_ref() upon event copy).
3956         (gtk_menu_stop_navigating_submenu_cb): same here.
3957
3958         * gtk/gtklist.c (gtk_list_vertical_timeout): 
3959         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
3960         * gtk/gtkclist.c (vertical_timeout): 
3961         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
3962         default-zero-intialization for unions to memset(,0,), as unions are
3963         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
3964         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
3965
3966         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
3967         g_closure_sink() warning.
3968
3969         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
3970         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
3971         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
3972         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
3973         
3974 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
3975
3976         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
3977         gtk_*_store_get, and moved to GtkTreeModel.
3978
3979         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
3980
3981         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
3982
3983         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
3984
3985         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
3986         set the func.
3987
3988         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3989         freeze/thaw notify between setting all the properties for a cell.
3990
3991         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
3992
3993 2001-02-15  Havoc Pennington  <hp@redhat.com>
3994
3995         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
3996         the X coordinates so they're with respect to the line, rather than 
3997         with respect to the layout.
3998
3999         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
4000         Mallabone
4001
4002         * gtk/testgtk.c (create_range_controls): add vscale tests, 
4003         and inverted test
4004
4005         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
4006         #50806
4007
4008         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
4009
4010         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
4011         gtk_text_iter_is_end
4012
4013         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
4014         rename gtk_text_buffer_get_end_iter
4015
4016         * gtk/testgtk.c (create_labels): Add test for selectable
4017
4018         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
4019         the selection stuff. This code is kind of broken since it doesn't 
4020         use the theme engine.
4021
4022         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
4023         fix infinite loop and y offset problem
4024         (gdk_draw_layout_line_with_colors): fix foreground color handling
4025
4026         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
4027         that makes the label selectable.
4028         
4029         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
4030         layout when the style is set, since fonts etc. could have changed.      
4031
4032 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
4033
4034         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
4035
4036         * gtk/gtktreemodelsimple.[ch]: removed.
4037
4038 2001-02-16  Alexander Larsson  <alexl@redhat.com>
4039
4040         * gtk/gtktreemodelmapping.[ch]:
4041         New files. Implement GtkTreeModelMapping.
4042         
4043         * gtk/Makefile.am:
4044         Add gtktreemodelmapping.[ch].
4045         
4046         * gtk/gtk.h:
4047         Add gtktreemodelmapping.h
4048
4049         * gtk/treestoretest.c:
4050         Test the GtkTreeModelMapping
4051
4052 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
4053
4054         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
4055         have a demo, we might as well pass in real values.  Thanks to
4056         clahey for pointing this out.
4057
4058 2001-02-14  Havoc Pennington  <hp@pobox.com>
4059
4060         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
4061         "static" to a private function
4062         (gtk_image_menu_item_class_init): remove destroy handler,
4063         add "image" object property
4064
4065 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
4066
4067         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
4068         Add a shortcut if the window and the current clip_region doesn't
4069         overlap. This is needed when there are a lot of windows in a
4070         window. The layout test in testgtk is a good test.
4071
4072         * gdk/linux-fb/gdkwindow-fb.c:
4073         Whitespace fix.
4074
4075 2001-02-13  Sven Neumann  <sven@convergence.de>
4076
4077         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
4078
4079 2001-02-13  Alexander Larsson  <alexl@redhat.com>
4080
4081         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
4082         Don't reference last_cursor if it is null. Fixes crash when rotating
4083         the screen before having moved the mouse.
4084
4085         * gdk/linux-fb/gdkcc-fb.c: Zapp!
4086
4087         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
4088
4089         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
4090         when using 90 or 270 degrees rotation.
4091
4092 2001-02-12  Havoc Pennington  <hp@pobox.com>
4093
4094         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
4095         it always set the foreground, even if we were only using
4096         a stipple.
4097         (gdk_draw_layout_line_with_colors): new function, allow
4098         override colors
4099         (gdk_draw_layout_with_colors): new function, allow override
4100         colors
4101         (gdk_pango_layout_line_get_clip_region): function to get the clip
4102         region for a logical text range
4103         (gdk_pango_layout_get_clip_region): get the clip region for a
4104         logical text range
4105
4106         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
4107         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
4108         the right number of arguments.
4109
4110         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
4111         enhance the function to check that node data corresponds to a 
4112         view still belonging to the tree.
4113
4114         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
4115         GtkTreePath
4116         (gtk_tree_view_inserted): ditto
4117         (gtk_tree_view_child_toggled): ditto
4118
4119         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
4120         simplify this code.
4121
4122         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
4123         a PangoAttrList
4124
4125         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
4126
4127         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
4128
4129         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
4130         size in the size request 
4131         (gtk_menu_bar_size_allocate): consider toggle size here
4132
4133         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
4134         that displays a widget in the toggle slot
4135
4136         * gtk/testgtk.c: test GtkImageMenuItem
4137
4138         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
4139         
4140         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
4141         request and allocation
4142
4143         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
4144
4145         * gtk/gtkcheckmenuitem.c
4146         (gtk_check_menu_item_toggle_size_request): ditto
4147         
4148 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
4149
4150         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
4151         reference.
4152
4153         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
4154         and refuse to initialize GTK+ if they fail.
4155
4156 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
4157
4158         * configure.in: Add check for gtk-doc version.
4159
4160 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
4161
4162         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
4163         where the xpad/ypad was only being used on one side!
4164
4165 2001-02-11  Tor Lillqvist  <tml@iki.fi>
4166
4167         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
4168         function, copied from X11 version.
4169
4170         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
4171         DestroyCursor failures. The reason for the problem (despite the
4172         inconsistent messages from GetLastError()) was that
4173         DestroyCursor() cannot be called while a cursor is set in a
4174         window. Set the new cursor first and then destroy the old one.
4175         Thanks to jpe@archaeopteryx.com.
4176
4177         * gdk/win32/gdkcc-win32.c: Remove.
4178
4179         * gdk/win32/Makefile.am: Remove from here, too.
4180         
4181         * gdk/gdk.def
4182         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
4183
4184         * gtk/gtk.def
4185         * gtk/makefile.mingw.in: Updates.
4186
4187 2001-02-08  Havoc Pennington  <hp@redhat.com>
4188
4189         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
4190         add a widget to a bin that already has a child.
4191
4192         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
4193
4194         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
4195         
4196         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
4197
4198         * gdk/gdk.h: remove gdkcc.h
4199
4200         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
4201
4202         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
4203         GdkPixbuf, since the previous implementation was GdkColorContext
4204         dependent.
4205
4206         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
4207         
4208 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
4209
4210         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
4211         a sane value!
4212
4213 2001-02-08  Havoc Pennington  <hp@redhat.com>
4214
4215         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
4216         lighten them.
4217
4218 2001-02-08  Havoc Pennington  <hp@redhat.com>
4219
4220         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
4221         validation idle
4222
4223         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
4224         cell renderer
4225
4226         * demos/pixbuf-demo.c (timeout): remove deprecated
4227         gtk_widget_draw
4228
4229         * demos/testpixbuf-save.c (main): remove deprecated
4230         gtk_drawing_area_size
4231
4232         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
4233         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
4234         at the start of the allocation.
4235         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
4236         unsetup or NULL model.
4237
4238         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
4239         even/odd/sorted cells in the tree view.
4240
4241         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4242         bugfixes
4243
4244         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
4245         backgrounds with draw_flat_box using different detail for even/odd
4246         rows.
4247
4248         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
4249         row, so we can draw the alternating colors thing
4250
4251         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
4252         property from a synonym property, notify for the synonym.
4253         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
4254         (gtk_text_tag_get_property): Always return the font, even if
4255         all its fields aren't set
4256
4257         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
4258         store the attr list; it leaves us with no way to change attributes
4259         in _render according to the render flags, and no way to implement
4260         get_property. Instead store all the specific text attributes. 
4261         Separate whether an attribute is enabled from its value. Sync all
4262         properties with GtkTextTag, make them all consistent, etc.
4263
4264         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
4265         renderers can highlight the sort row/column     
4266
4267         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
4268         accessor functions to get values; this has the side effect of
4269         showing up which accessor functions were missing. Added those.
4270
4271         * gtk/gtktreeviewcolumn.h: Replace set_justification with
4272         set_alignment, to be consistent with GtkLabel, GtkMisc
4273
4274         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
4275         arrow.
4276
4277         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
4278
4279         * gtk/gtktreesortable.h: updates in here
4280
4281 2001-02-07  Sven Neumann  <sven@convergence.de>
4282
4283         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
4284         pango dimensions after painting the background. We used to draw
4285         gigantic flat boxes here.
4286
4287 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
4288
4289         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
4290         error introduced with earlier commit) (pointed out by
4291         Ollie Lho)
4292
4293 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
4294
4295         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
4296         which are no longer necessary.
4297
4298 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
4299
4300         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
4301
4302 2001-02-04  Tor Lillqvist  <tml@iki.fi>
4303
4304         * gdk/gdk.def
4305         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
4306         Provide dummy implementations.
4307
4308 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
4309
4310         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
4311
4312         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
4313         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
4314         deprecated this function.
4315
4316         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
4317         argument.
4318
4319 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
4320
4321         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
4322
4323 2001-02-03  Havoc Pennington  <hp@pobox.com>
4324
4325         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
4326         Mikael Hermansson with patch from Mikael (if there was a toggle
4327         start one after the first character in the range, this function
4328         was broken). Bug #50380
4329
4330 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
4331
4332         * configure.in: Remove confusing comment about X11.
4333
4334 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
4335
4336         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
4337         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
4338         
4339 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
4340
4341         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
4342         it breaks things on BSD. If you want to compile GTK+ with
4343         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
4344         when configuring, since GTK+ simply can't be "pure ANSI" 
4345         in the header files it uses. (#8170, Greg Hudson)
4346
4347 2001-02-02  Havoc Pennington  <hp@redhat.com>
4348
4349         * gtk/gtkwindow.c: docs
4350
4351         * gtk/gtkwidget.c: docs
4352         (gtk_widget_set_colormap): add a reference to the colormap
4353         (gtk_widget_get_default_colormap): add a reference to the colormap
4354
4355         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
4356
4357         * gtk/gtktextiter.c: docs
4358
4359         * gtk/gtkmain.c (gtk_propagate_event): docs
4360
4361         * gtk/gtkpaned.c (gtk_paned_get_position): docs
4362         (gtk_paned_set_position): docs
4363
4364         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
4365         sort interface, no implementation yet.
4366
4367         * demos/testpixbuf.c (new_testrgb_window): replace
4368         gtk_drawing_area_size() with gtk_widget_set_usize()
4369
4370         * demos/testpixbuf-drawable.c (main): ditto
4371         
4372         * gtk/testgtk.c: remove use of GtkStatusbarMsg
4373
4374         * gtk/gtktextbuffer.c: docs
4375
4376         * gtk/gtkstock.c: docs
4377
4378         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
4379
4380         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
4381
4382         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
4383         
4384         * gtk/gtkimage.c: add some docs in here
4385         (gtk_image_size_request): change name of
4386         gtk_widget_render_stock_icon
4387         (gtk_image_get_icon_set): don't dup returned string
4388         (gtk_image_get_icon_set): don't dup returned string
4389
4390         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
4391         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
4392         and gtkiconfactory.h functions
4393
4394         * gtk/gtkiconfactory.c: add some docs in here
4395
4396         * gtk/gtkmain.c (gtk_get_default_language): document
4397         (gtk_get_current_event): document
4398         (gtk_get_current_event_state): document
4399         (gtk_get_event_widget): document
4400
4401         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
4402
4403         * gtk/gtkcontainer.c: Add some documentation
4404         (gtk_container_add): give a more explanatory warning on adding an
4405         already-parented widget, this is kind of a FAQ and also a common
4406         typo that's easier to debug with a nice warning 
4407
4408         * gtk/gtkcellrenderertoggle.c
4409         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
4410         adding this, it's useless
4411         (gtk_cell_renderer_toggle_set_active): remove
4412         (gtk_cell_renderer_toggle_get_radio): add
4413
4414         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
4415         the NULL cell renderer, that doesn't make any sense to me. 
4416
4417         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
4418         demo code should never use deprecated features.
4419
4420         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
4421         code should never use deprecated features.
4422
4423         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
4424         gtk_widget_queue_clear_area deprecated
4425
4426         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
4427         deprecated
4428
4429         * gtk/gtklabel.h: mark gtk_label_get() deprecated
4430
4431         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
4432         a GdkImage deprecated, replaced by new consistently-named
4433         functions       
4434
4435         * gtk/gtkmain.h: Mark gtk_exit() deprecated
4436
4437         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
4438
4439         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
4440         deprecated
4441
4442         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
4443         so it won't appear in docs and confuse people.
4444
4445         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
4446
4447         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
4448         macros deprecated. (can't mark the type itself deprecated, since
4449         GtkProgressBar is not deprecated and we need the type decl to use
4450         GtkProgressBar)
4451
4452         * gtk/gtkpixmap.h: Mark deprecated
4453
4454         * gtk/gtkoldeditable.h: Mark deprecated
4455
4456         * gtk/gtklist.h: Mark deprecated
4457
4458         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
4459         for anything anymore.
4460
4461         * gtk/gtkctree.h: Mark deprecated
4462
4463         * gtk/gtkclist.h: Mark deprecated
4464
4465         * gtk/gtkpreview.h: Mark deprecated
4466
4467         * gtk/gtkpacker.h: Mark deprecated
4468
4469         * gtk/gtktipsquery.h: Mark deprecated
4470
4471         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
4472
4473         * gtk/gtkvruler.h: Add comment that it will move out of GTK
4474
4475         * gtk/gtkhruler.h: Add comment that it will move out of GTK
4476
4477         * gtk/gtkruler.h: Add comment that it will move out of GTK
4478
4479         * gtk/gtkgamma.h: Add comment that it will move out of GTK
4480
4481         * gtk/gtkcurve.h: Add comment that it will move out of GTK
4482
4483 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
4484
4485         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
4486         gdk_colormap_sync private since it was never exported
4487         in a header file.
4488
4489         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
4490         colormap->colors[] for StaticGray, StaticColor colormaps.
4491
4492         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
4493         was being used as if it was image->bits_per_pixel.
4494
4495         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
4496         for the image in the GdkImage structure since it isn't
4497         reconstructable, and we need it to handle packed types
4498
4499         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
4500         the assumption that on Win32 image->bits_per_pixel == image->depth,
4501         always.
4502
4503         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
4504
4505         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
4506         warning message if no converter can be found. 
4507
4508 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
4509
4510         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
4511         chars to isupper() / tolower(). (#567)
4512
4513         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
4514         to clear up 64-bit warnings. (#567)
4515
4516 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
4517
4518         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
4519         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
4520
4521         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
4522         since some people set $(libdir) separately. (#1290, David Kaelbling)
4523
4524 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
4525
4526         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
4527         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
4528         MAXPATHLEN, but the code here depends on a fixed value.)
4529         (#4524)
4530
4531 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
4532
4533         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
4534         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
4535
4536 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
4537
4538         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
4539         viewable there is no way that moving the node will cause the 
4540         focus row to become not viewable, so omit check on the visibility
4541         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
4542
4543 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
4544
4545         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
4546         selection before inserting new text.
4547
4548 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
4549
4550         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
4551         Make the sensitivity of the reparented child track that of
4552         the original parent menu item. (#34218, David Hodson)
4553
4554         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
4555         the case where the current item is destroyed properly.
4556
4557         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
4558         some edge cases with child-less menuitems.
4559         
4560 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
4561
4562         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
4563         key pop down window. (#12074, Jon K Hellan)
4564
4565 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
4566
4567         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
4568         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
4569         The solution here isn't perfect - you get an extraneous
4570         emission of "toggle", which could conceivably confuse an app,
4571         but better than the current situation. LXR search seems to
4572         indicate that no apps in GNOME CVS connect to "toggle".
4573
4574 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
4575
4576         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
4577         gtk_public_h_sources to directly here to avoid warning when
4578         building srcdir != builddir. (#9656)
4579
4580 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
4581
4582         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
4583         handlers in gtkrange.c return the proper values (TRUE == handled)
4584         (#10316).
4585
4586         This is just the tip of the iceberg, but gtkrange.c is the
4587         most common place where the propagation is problematical,
4588         and also a place where it is almost certainly safe to change
4589         this in the stable branch.
4590
4591         (You don't want right click popups on a range control or anything...)
4592
4593 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
4594
4595         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
4596         area on focus out, even if a background pixmap isn't set.
4597         (#13941)
4598         
4599 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
4600
4601         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
4602         to deal with setting the shape properly when scrolling arrows are
4603         turned on, but not visible because there is sufficient space.
4604         (#13432)
4605
4606 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
4607
4608         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
4609         items with submenus, destroy the item along with the submenu.
4610         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
4611         properly.
4612
4613         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
4614         later.
4615
4616 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
4617
4618         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
4619         the focus widget sometimes wasn't drawn with the default if there
4620         was no default widget.
4621
4622         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
4623         unreference pixmaps. 
4624
4625         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
4626         for some extra safety.
4627
4628 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
4629
4630         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
4631         the text of a cell to the old pointer value better, by
4632         copying the new text before freeing the old text. Some code
4633         cleanup. (#8079, Karl Nelson)
4634
4635 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
4636
4637         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
4638         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
4639
4640 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
4641
4642         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
4643         item from a menu, check to see if it matches 
4644         menu->old_active_menu_item, and if so, unref and clear
4645         old_active_menu_item (Patch from Pavel Cisler)
4646
4647         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
4648         menu_shell->active_menu_item, if it is the child being
4649         removed. (Patch based on that of Gene Ragan, #50337)
4650
4651 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
4652
4653         * gdk/linux-fb/gdkselection-fb.c: 
4654         * gdk/linux-fb/gdkcolor-fb.c: 
4655         * gdk/linux-fb/gdkdrawable-fb2.c: 
4656         * gdk/linux-fb/gdkfont-fb.c: 
4657         * gdk/linux-fb/gdkim-fb.c: 
4658         * gdk/linux-fb/gdkinput.c: 
4659         * gdk/linux-fb/gdkkeyboard-fb.c: 
4660         * gdk/linux-fb/gdkmain-fb.c: 
4661         * gdk/linux-fb/gdkrender-fb.c: 
4662         A bunch of whitespace cleanup.
4663         
4664 2001-01-30  Havoc Pennington  <hp@pobox.com>
4665
4666         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
4667         #ifdef GTK_ENABLE_BROKEN.
4668
4669         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
4670         GTK_ENABLE_BROKEN just before including the broken headers.
4671         
4672         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
4673         deprecated types registered.
4674
4675         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
4676         we have to test the broken stuff.
4677
4678         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
4679         
4680 2001-01-30  Havoc Pennington  <hp@redhat.com>
4681
4682         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
4683         here where prev pointer was set to the wrong thing
4684
4685         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
4686         (gtk_tree_path_is_descendant): new function
4687
4688         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
4689         cached length
4690         (gtk_list_store_get_iter): don't modify iter if we can't get the
4691         path.
4692
4693         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
4694         
4695         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
4696         GtkTreeDragDest
4697
4698         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
4699         was causing segfault
4700
4701         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
4702         pointer to NULL
4703
4704         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
4705
4706         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
4707         on returning FALSE
4708         (gtk_list_store_iter_children): ditto
4709         (gtk_list_store_iter_nth_child): ditto
4710         (gtk_list_store_iter_nth_child): ditto
4711         (gtk_list_store_iter_parent): ditto
4712
4713         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
4714         on iter->user_data != NULL instead of silently accepting it.
4715         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
4716         we are returning TRUE.
4717         (gtk_tree_store_iter_children): ditto
4718         (gtk_tree_store_iter_nth_child): ditto
4719         (gtk_tree_store_iter_parent): ditto
4720         (gtk_tree_store_insert): remove handling of parent->user_data ==
4721         NULL, replace with parent == NULL       
4722
4723         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
4724         and a comment explaining things
4725
4726         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
4727         interface support to GtkTreeStore.
4728
4729         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
4730         FALSE if no prev, fix
4731
4732         * gtk/gtktreeview.c (set_source_row): use a row reference
4733         (set_dest_row): use a row reference
4734
4735 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
4736
4737         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
4738         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
4739         (gtk_tree_selection_select_iter): The same as above.
4740
4741 2001-01-26  Havoc Pennington  <hp@redhat.com>
4742
4743         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
4744         which holds a handle to a specific row (particular set of values
4745         in the model, i.e. pointer-identity row).
4746
4747         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
4748         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
4749         Still need to use it for the src/dest row saved on the drag context.
4750
4751 2001-01-26  Havoc Pennington  <hp@redhat.com>
4752
4753         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
4754
4755         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
4756         not offset by TREE_VIEW_HEADER_HEIGHT
4757         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
4758         TREE_VIEW_HEADER_HEIGHT
4759
4760         * configure.in (included_loaders): for me, --with-included-loaders
4761         generates the error "the specified loader yes does not exist",
4762         i.e. the arg defaults to "yes", so change test for value ""
4763         to test for value "yes", and include all loaders in that case.
4764
4765         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
4766
4767         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
4768         handle TREE_VIEW_VERTICAL_SEPARATOR
4769         (gtk_tree_view_bin_expose): fix to consider the row offset as
4770         pointing halfway into vertical separator.       
4771         (gtk_tree_view_draw_node_focus_rect): ditto
4772
4773         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
4774         --gtk-debug=updates, which causes gdk_window_set_debug_updates
4775         (TRUE) to be called.
4776
4777         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
4778         debug mode where the invalid region is colored in on invalidate,
4779         so you can see the flicker and know whether your redraw code is 
4780         doing a good job.
4781
4782         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
4783         tree window coordinates (clip rect is in tree window coords)
4784
4785         * gtk/Makefile.am: add gtktreednd.[hc]
4786
4787         * gtk/gtkliststore.c: implement gtktreednd interfaces.
4788
4789         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
4790         drag-and-drop data operations on a model (so we can set up tree
4791         drag-and-drop automatically)
4792
4793         * gtk/testgtk.c: Add a window to change sensitivity in the
4794         GtkLabel test; add a way to change the entry frame in GtkEntry
4795         test
4796
4797         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
4798         (gtk_entry_get_has_frame): new functions to remove the frame
4799         around an entry
4800         (gtk_entry_size_request): shrink requisition if no frame
4801         (gtk_entry_draw_focus): don't draw frame if no frame
4802
4803         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
4804         checks inside a cell renderer
4805         (gtk_default_draw_option): ditto for options
4806
4807         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
4808         children from the alignment, not the button
4809         (gtk_tree_view_column_init): ref/sink the column, to emulate
4810         GObject refcounting.
4811
4812         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
4813         
4814         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4815         Use theme functions to draw the toggles 
4816
4817         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
4818
4819         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
4820         GdkPangoAttrEmbossed to use in rendering insensitive text
4821
4822         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
4823
4824         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
4825         using new GDK features
4826         
4827 2001-01-24  Alexander Larsson  <alexl@redhat.com>
4828
4829         * gtk/gtkimage.c:
4830         Splitted gtk_image_clear into gtk_image_clear() and
4831         gtk_image_reset(). Call gtk_image_clear() in ::destroy
4832         to avoid leaks.
4833
4834         * gtk/gtklabel.c (set_markup):
4835         Don't leak text.
4836
4837         * gtk/gtktextlayout.c:
4838         Always free display->shaped_objects.
4839
4840         * gtk/testgtk.c (create_clist):
4841         Don't leak custom style.
4842
4843 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4844
4845         * gtk/gtkcolorsel.c (grab_color_at_mouse):
4846         Don't leak image. Simplify using gdk_colormap_query_color().
4847         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
4848
4849         * linux-fb/gdkcolor-fb.c:
4850         Implemented gdk_colormap_query_color.
4851
4852 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4853
4854         * linux-fb/gdkcursor-fb.c:
4855         Don't leak built-in cursors.
4856
4857         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
4858         Don't leak tmp_points.
4859
4860         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
4861         Don't modify desc. Don't leak font if the PangoFont
4862         isn't found.
4863         
4864         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
4865         Free dash_list.
4866
4867         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
4868         Don't leak string.
4869         
4870 2001-01-20  Havoc Pennington  <hp@pobox.com>
4871
4872         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
4873         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
4874         me, matches Pango
4875
4876 2001-01-22  Havoc Pennington  <hp@redhat.com>
4877
4878         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
4879
4880         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
4881
4882         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
4883         Remove, move back to gdk-pixbuf
4884
4885         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
4886         to all the word functions
4887
4888         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
4889         before doing anything on NULL layout or if we don't have the focus
4890
4891         * gtk/testtext.c (fill_example_buffer): "justification"
4892
4893         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
4894         to be called "justification" not "justify"
4895
4896         * demos/gtk-demo/textview.c (create_tags): "justification"
4897         
4898         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
4899
4900 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4901
4902         * gdk/gdkwindow.c (gdk_window_invalidate_region):
4903         Don't leak visible_region. Use visible_region instead of region.
4904         
4905         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4906         Don't do extra gdk_drawable_ref(). This is not X.
4907         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
4908         gdk_fb_focused_window is ref:ed.
4909         (gdk_fb_window_send_crossing_events): Watch out for destroyed
4910         windows.
4911
4912 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4913
4914         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
4915         Don't leak the PangoFontDescriptor.
4916
4917 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
4918
4919         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
4920         when not realized.
4921         (gtk_tree_view_scroll_to_cell): Make work when not realized.
4922         (gtk_tree_view_realize): add scroll_to support
4923         (gtk_tree_view_finalize): add a finalize method.  Populate.
4924         (gtk_tree_view_insert_column): ref and sink the column.
4925         (gtk_tree_view_append_column): ref and sink the column.
4926         (gtk_tree_view_queue_draw_node): New function to handle redrawing
4927         individual nodes.  Should make the code much more efficient, if
4928         actually used.
4929
4930 2001-01-19  Havoc Pennington  <hp@redhat.com>
4931
4932         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
4933         byte_offset variable was being used to mean both "offset into
4934         layout" and "offset into buffer line" which was no longer true
4935         with addition of preedit string; fix
4936
4937 2001-01-19  Havoc Pennington  <hp@redhat.com>
4938
4939         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
4940
4941         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
4942         function
4943
4944         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
4945         implement
4946
4947         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
4948         scroll_to_cell, matches TextView scroll functions better
4949         (gtk_tree_view_tree_to_widget_coords): new function
4950         (gtk_tree_view_widget_to_tree_coords): new function
4951         (gtk_tree_view_get_visible_rect): new function
4952         (gtk_tree_view_get_path_at_pos): accept negative coordinates
4953         (gtk_tree_view_draw_node_focus_rect): new function moved from
4954         draw_focus, also, use width of bin_window as width of the focus
4955         rect
4956         (gtk_tree_view_expand_row): fix bug where it didn't recognize
4957         already-expanded rows
4958         (gtk_tree_view_get_cell_rect): new function
4959         (gtk_tree_view_get_path_at_pos): return the click position
4960         relative to the passed-in cell
4961         (gtk_tree_view_set_expander_column): new function
4962
4963         * configure.in: remove gtk-config-2.0 chmod
4964
4965         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
4966         and properly handle drags with targets we don't understand
4967         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
4968         scrolling anyway
4969         (gtk_text_view_drag_drop): stop scrolling here though, and set the
4970         mark invisible
4971
4972         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
4973         function
4974         (gtk_drag_dest_get_target_list): new function
4975         (gtk_drag_dest_set_target_list): new function
4976         
4977         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
4978
4979         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
4980         related to drag-and-drop
4981
4982 2001-01-19  Alexander Larsson  <alexl@redhat.com>
4983
4984         * gdk/linux-fb/gdkprivate-fb.h:
4985         Define EMULATE_GDKFONT.
4986         Add extra pango_font stuff to GfkFontPrivate.
4987         
4988         * gdk/linux-fb/gdkdrawable-fb2.c:
4989         * gdk/linux-fb/gdkfont-fb.c:
4990         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
4991         emulation using PangoFont.
4992
4993 2001-01-17  Havoc Pennington  <hp@pobox.com>
4994
4995         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
4996         all the non-deprecated set_foo functions. Added missing object
4997         properties, and added g_object_notify() to setters. 
4998         Wrote docs.
4999         
5000 2001-01-18  Tor Lillqvist  <tml@iki.fi>
5001
5002         * gtk/gtkmain.c
5003         * gtk/gtkrc.c: (Win32) Use the new
5004         g_win32_get_package_installation_(sub)directory() functions.
5005
5006         * config.h.win32.in: New file.
5007         
5008         * config.h.win32: Removed.
5009
5010         * configure.in: Output config.h.win32.
5011
5012         * Makefile.am: Add it to EXTRA_DIST.
5013
5014         * gtk/gtk.def: Update.
5015
5016 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
5017
5018         * gtk/gtklabel.c (gtk_label_size_request): Set the
5019         attributes onto the PangoLayout even if they are newly
5020         created from label->pattern.
5021
5022 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
5023
5024         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
5025
5026         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
5027         structures in functions. Fixes bug where gtk_dataset_*
5028         was accidentally still being used in one place, causing
5029         every dest side event to be treated independently.
5030
5031         * gtk/gtkdnd.c: Remove last vestages of handling
5032         ::draw (fixes warning)
5033         
5034         * gtk/gtkentry.[ch]: Add drag and drop support.
5035
5036         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
5037         new function gtk_check_drag_threshhold() for checking
5038         to check if (dx,dy) has exceeded the threshhold for starting
5039         a drag and use it everywhere.
5040
5041 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
5042
5043         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
5044         add -I{includedir}/gtk-2.0.
5045
5046         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
5047         gdk/gdk-pixbuf.h: Doc fixups.
5048         
5049         * gtk/gtkobject.h: Remove trailing , from enum
5050
5051 2001-01-17 Alexander Larsson <alexl@redhat.com> 
5052
5053         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
5054         Doh! Mixed up x and y.
5055
5056         * gdk/linux-fb/gdkglobals-fb.c:
5057         Removed gdk_fb_pointer_grab_window_events,
5058         added _gdk_fb_pointer_grab_owner_events and
5059         _gdk_fb_keyboard_grab_owner_events.
5060
5061         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
5062         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
5063         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
5064         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
5065         Send crossing events after ungrab finished.
5066         (gdk_keyboard_grab): Set ..._owner_events
5067         (type_masks): Move out of function.
5068         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
5069         gdk_fb_keyboard_event_window): New functions, return the
5070         window an event should be targeted at. Handles grabs and
5071         event propagation. Can return NULL.
5072         (gdk_event_make): Remove event_mask checking. Now always
5073         returns an event.
5074                 
5075         * gdk/linux-fb/gdkkeyboard-fb.c:
5076         * gdk/linux-fb/gdkproperty-fb.c:
5077         * gdk/linux-fb/gdkselection-fb.c:
5078         Use new event_window/gdk_event_make() behaviour.
5079         
5080         * gdk/linux-fb/gdkmouse-fb.c:
5081         Use new event_window/gdk_event_make() behaviour.
5082         Only send motion events if in the same window.
5083         If grabbed, use cursor from window if sibling of grabbed
5084         window, and cursor from grabbed window otherwise.
5085
5086         * gdk/linux-fb/gdkprivate-fb.h:
5087         Update gdk_fb_window_send_crossing_events, gdk_event_make
5088         and grab varaible declarations. Add gdk_fb_*_event_window().
5089
5090         * gdk/linux-fb/gdkwindow-fb.c:
5091         Use new event_window/gdk_event_make() behaviour.
5092         Keep correct track of focus window.
5093         (gdk_window_set_events): Set all specific button motion masks
5094         if GDK_BUTTON_MOTION_MASK set.
5095
5096         * gtk/gtkdnd.c (gtk_drag_update):
5097         Free info->last_event if gdk_drag_motion returned FALSE.
5098
5099 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5100
5101         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
5102         Eliminate redraws when input-only windows are shown or
5103         hidden. Thanks to jpe@archaeopteryx.com.
5104
5105 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
5106
5107         * docs/faq/gtk-faq.sgml: FAQ update:
5108           - Update to bugzilla
5109           - Add GTK+ and security/SUID/SGID
5110           - Add DnD question
5111
5112 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
5113
5114         * gdk/linux-fb/gdkdnd-fb.c:
5115         Some cleanups.
5116         
5117 2001-01-15  Havoc Pennington  <hp@pobox.com>
5118
5119         * tests/testtreeview.c: add test stuff for CellRendererToggle
5120
5121         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
5122         accessor
5123
5124         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
5125         only toggle on button press (would do release like GtkButton, but
5126         we'd need implicit grab code for treeview cells)
5127
5128 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5129
5130         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
5131
5132         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
5133         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
5134
5135         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
5136         to g_{locale,filename}_{to,from}_utf8 to match current API.
5137
5138         * gtk/makefile.msc.in (gtk_OBJECTS)
5139         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
5140
5141         * gtk/gtk.def: Update.
5142
5143 2001-01-15  Tor Lillqvist  <tml@iki.fi>
5144
5145         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
5146         implementaion that more closely mimics the events that an X server
5147         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
5148         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
5149         with nested preview widgets, for instance, more responsive when
5150         you move the mouse quickly into them.
5151         (find_window_for_pointer_event): Make it actually compile.
5152         (gdk_event_translate): Set send_event to the value of
5153         InSendMessage (). This doesn't really mean the same as X11's
5154         send_event flag, but is close enough, says jpe@archaeopteryx.com
5155
5156 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5157
5158         * gdk/linux-fb/gdkdnd-fb.c:
5159         Implemented drag and drop.
5160         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
5161         when it tries to free and then copy the same event (info->last_event).
5162         I am not sure about why this happens, but will continue looking.
5163
5164 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5165
5166         * gdk/linux-fb/gdkwindow-fb.c:
5167         Use gdk_window_invalidate_rect instead of
5168         gdk_window_invalidate_rect_clear to minimise flashing.
5169         When hiding windows you need to clear the root window though.
5170
5171 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5172
5173         * gdk/linux-fb/gdkdrawable-fb2.c:
5174         For optization, add an full_shapes argument to gdk_fb_clip_region.
5175         If this is false, only the cliprects of the shapes are used.
5176
5177         * gdk/linux-fb/gdkprivate-fb.h:
5178         Export gdk_fb_window_peek_shape.
5179         Add full_shapes to gdk_fb_clip_region.
5180
5181         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
5182         When moving a window, don't clear everything under the it, just the
5183         root window. Makes stuff faster and flash less.
5184         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
5185         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
5186         offset of the shape.
5187         
5188
5189 2001-01-12  Havoc Pennington  <hp@redhat.com>
5190
5191         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
5192         current invalid region, fixes redraw bug while scrolling the 
5193         text widget
5194
5195         * gtk/gtktextview.c, gtk/gtktextview.h:
5196         Rearrange the scrolling/validation/etc. code in a major way, 
5197         so it seems to make sense to me. Probably isn't genuinely that
5198         much better, but...
5199
5200         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
5201         notifies
5202
5203         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
5204
5205 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
5206
5207         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
5208         Hide mouse pointer while rotation. Show it afterwards.
5209
5210 2001-01-12  Alexander Larsson  <alexl@redhat.com>
5211
5212         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
5213         windows in consideration when generating clip region.
5214
5215         * gdk/linux-fb/gdkfb.h:
5216         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
5217
5218         * gdk/linux-fb/gdkprivate-fb.h:
5219         Add shape to GdkWindowFBDatat.
5220         exported gdk_fb_window_get_abs_shape().
5221         removed gdk_fb_draw_lines declaration.
5222
5223         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
5224         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
5225         send focus changes when there is a grabbed window.
5226         (gdk_window_get_pointer): Handle shaped windows.
5227         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
5228         (gdk_fb_window_peek_shape): Returns the shape for a window,
5229         handles GDK_FB_USE_CHILD_SHAPE.
5230         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
5231         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
5232         (gdk_window_shape_combine_mask): Implement.
5233
5234         * gtk/gtkwindow-decorate.c:
5235         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
5236         setting the shape of a window makes the window transparent.
5237
5238 2001-01-11  Havoc Pennington  <hp@redhat.com>
5239
5240         * gtk/gtktreemodelsimple.h: Oops, broke some macros
5241
5242 2001-01-10  Havoc Pennington  <hp@redhat.com>
5243
5244         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
5245         add this function, bug 40251
5246
5247         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
5248         of type macro   
5249
5250 2001-01-11  Alexander Larsson  <alexl@redhat.com>
5251
5252         * acconfig.h:
5253         Added ENABLE_SHADOW_FB
5254
5255         * configure.in:
5256         Added --disable-shadowfb
5257
5258         * gdk/linux-fb/gdkcursor-fb.c:
5259         Update shadowfb when updating cursor
5260
5261         * gdk/linux-fb/gdkdrawable-fb2.c:
5262         Added wrappers for shadowfb that calls  the normal drawable
5263         methods, but calls gdk_shadow_fb_update(bounding box) when
5264         GdkWindows are drawed to.
5265         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
5266         which also returns the bounding box.
5267
5268         * gdk/linux-fb/gdkfb.h:
5269         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
5270
5271         * gdk/linux-fb/gdkgeometry-fb.c:
5272         Update shadowfb when scrolling window.
5273
5274         * gdk/linux-fb/gdkglobals-fb.c:
5275         Add _gdk_fb_screen_angle.
5276         
5277         * gdk/linux-fb/gdkkeyboard-fb.c:
5278         Test code for screen rotation. Shift-F2 in the xlate driver
5279         rotates the screen.
5280
5281         * gdk/linux-fb/gdkmain-fb.c:
5282         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
5283
5284         * gdk/linux-fb/gdkmouse-fb.c:
5285         Use fb_width/height instead of modeinfo.xres/yres.
5286
5287         * gdk/linux-fb/gdkprivate-fb.h:
5288         Added fb_men, fb_width, fb_height & fb_stride. When using
5289         shadow fb these can differ from the framebuffer stuff.
5290         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
5291         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
5292         _gdk_fb_screen_angle. Removed CM, RP.
5293
5294         * gdk/linux-fb/gdkrender-fb.c:
5295         Added code for shadowfb handling and screen rotation using
5296         shadowfb.
5297
5298         * gdk/linux-fb/gdkwindow-fb.c:
5299         Use fb_mem, fb_stride, fb_width, fb_height.
5300         Added recompute_rowstride to reset the rowstride of all windows.
5301         Added gdk_fb_recompute_all() which recomputes rootwindow size,
5302         window abs positions and window rowstrides. Usefull when the
5303         rotation has changed.
5304
5305 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
5306
5307         * docs/faq/gtk-faq.sgml: update to make web site updating easier
5308
5309 2001-01-10  Havoc Pennington  <hp@redhat.com>
5310
5311         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
5312         where sibling == iter
5313         (gtk_tree_store_insert_after): handle sibling == iter
5314         (gtk_tree_store_prepend): remove stamp checks
5315         (gtk_tree_store_insert_before): ditto
5316         (gtk_tree_store_append): ditto
5317         (gtk_tree_store_get_path): ditto
5318         (gtk_tree_store_get_value): ditto
5319         (gtk_tree_store_iter_has_child): ditto
5320         (gtk_tree_store_iter_n_children): ditto
5321         (gtk_tree_store_iter_nth_child): ditto
5322         (gtk_tree_store_insert_after): ditto
5323         (gtk_tree_store_is_ancestor): ditto
5324         (gtk_tree_store_iter_depth): ditto
5325         (gtk_tree_store_insert_before): assert that sibling's parent is
5326         the same as the passed-in parent
5327         (gtk_tree_store_insert_after): assert that sibling's parent is
5328         the same as the passed-in parent
5329
5330         
5331         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
5332         function to get the first iterator in a model
5333         
5334         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
5335         conventionally the "root" in this sense is just NULL afaict.
5336
5337         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
5338         where sibling == iter
5339         (gtk_list_store_insert_after): handle case where sibling == iter
5340
5341         * tests/testtreeview.c (run_automated_tests): fairly lame basic
5342         automated tests for ListStore, TreeStore
5343
5344         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
5345         (gtk_list_store_insert): update tail pointer, and fix it to work
5346         (gtk_list_store_insert_before): update tail pointer, and fix it to work
5347         (gtk_list_store_append): use tail to be faster
5348         (gtk_list_store_prepend): fix it, update tail pointer
5349         (gtk_list_store_insert_after): fix it, update tail pointer
5350
5351         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
5352         the list
5353
5354 2001-01-09  Havoc Pennington  <hp@redhat.com>
5355
5356         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
5357         is NULL due to a pending resize
5358
5359         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
5360         column width to values less than 1
5361
5362         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
5363         width to be between min/max width, and still set the width 
5364         even if autosize is turned on, so the tree view can use this 
5365         function in order to autosize.
5366         (gtk_tree_view_column_init): set initial width to 1 not 0
5367
5368         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
5369         setter function to modify column width, so we get notification
5370         (gtk_tree_view_insert_iter_height): ditto
5371         (gtk_tree_view_calc_size): ditto
5372         (gtk_tree_view_check_dirty): ditto
5373
5374         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
5375         properties to change all the interesting attributes of the tree
5376         view column.
5377         (gtk_tree_view_column_set_header_clickable): rename set_clickable
5378         (gtk_tree_view_column_get_clickable): add
5379         (gtk_tree_view_column_set_cell_renderer): don't unset the current
5380         attributes; assume a cell renderer with equivalent object
5381         properties has been swapped in. Do g_object_notify().
5382         (gtk_tree_view_column_set_visible): g_object_notify
5383         (gtk_tree_view_column_get_sizing): rename from get_col_type
5384         (gtk_tree_view_column_set_sizing): g_object_notify
5385         (gtk_tree_view_column_set_width): add g_object_notify
5386         (gtk_tree_view_column_set_min_width): ditto
5387         (gtk_tree_view_column_set_max_width): ditto
5388         (gtk_tree_view_column_set_title): ditto
5389         (gtk_tree_view_column_set_clickable): ditto
5390         (gtk_tree_view_column_set_widget): ditto
5391         (gtk_tree_view_column_set_justification): ditto
5392
5393 2001-01-09  Havoc Pennington  <hp@redhat.com>
5394
5395         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
5396         there are no rows in the model
5397
5398         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
5399         NULL, then return the start of the list
5400
5401         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
5402         if we can't get any rows from an empty model 
5403
5404         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
5405         extraneous * after function pointer typedef usage
5406
5407         * Makefile.am: don't specify full path to cp and rm
5408
5409         * gtk/gtkcellrenderertextpixbuf.c
5410         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
5411         NULL before dereferencing, fixes a segfault that happened from
5412         time to time
5413
5414         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
5415         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
5416         and reindent the function
5417         (gtk_cell_renderer_pixbuf_get_size): indentation
5418
5419         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
5420         we quit it
5421         (gtk_dialog_add_buttons_valist): add g_return_if_fail
5422         (gtk_dialog_set_default_response): New function, to set default
5423         button
5424         (gtk_dialog_set_response_sensitive): New function, to set 
5425         sensitivity of buttons
5426
5427         * gtk/gtkcellrendererpixbuf.c
5428         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
5429         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
5430
5431         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
5432         handle any G_TYPE_OBJECT subclass, not just the base class, and 
5433         also boxed types.
5434         (_gtk_tree_data_list_value_to_node): ditto
5435
5436         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
5437         --gtk-debug=tree
5438
5439         * gtk/gtkmain.c: add GTK_DEBUG_TREE
5440
5441         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
5442
5443 2001-01-09  Tor Lillqvist  <tml@iki.fi>
5444
5445         * gdk/win32/gdkevents-win32.c: Implement better mouse
5446         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
5447         (find_window_for_pointer_event): New function.
5448         (gdk_event_translate): Use it when handling mouse events.
5449
5450 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
5451
5452         * configure.in:
5453         Added --with-included-loaders option
5454
5455         * gdk-pixbuf/Makefile.am:
5456         * gdk-pixbuf/gdk-pixbuf-io.c:
5457         Add support for including selected gdk-pixbuf loaders only.
5458
5459         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
5460         gtk_window_set_has_frame):
5461         Added inline documentation.
5462
5463         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
5464         * docs/reference/gdk/tmpl/windows.sgml:
5465         Added inline documentation.
5466
5467 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
5468
5469         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
5470         realizing buttons that have already been realized.
5471
5472 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
5473
5474         * tests/testtreeview.c (main): Show menu items before adding to
5475         option menu.
5476
5477         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
5478         around if we kill them.
5479
5480         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
5481         Return if we pass in a NULL model.
5482
5483 2001-01-08  Havoc Pennington  <hp@redhat.com>
5484
5485         * tests/testtreeview.c: hack on this some
5486
5487         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
5488         gtk_tree_store_set_valist, v is for arrays, valist for varargs
5489         list
5490         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
5491
5492         * gtk/gtkliststore.h: Add varargs set() and get() convenience
5493         functions
5494
5495 2001-01-08  Alexander Larsson  <alexl@redhat.com>
5496
5497         * gtk/gtkwindow-decorate.[hc]:
5498         * gtk/Makefile.am:
5499         New files. Contains an implementation of a minimal WM for
5500         linux-fb.
5501
5502         * gtk/gtkwindow.h:
5503         Add the possibility for GtkWindows to specify a frame. This
5504         is used for the window decoration code, but could concievably
5505         be used for X programs too (xmms style windows).
5506         GtkWindow->frame is the toplevel window if the window is framed.
5507         The signal frame_event gets all events that are targeted to
5508         GtkWindow->frame.
5509         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
5510         
5511         * gtk/gtkwindow.c:
5512         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
5513         Call out to gtkwindow-decorate.c for WM support in linx-fb.
5514
5515 2001-01-08  Alexander Larsson  <alexl@redhat.com>
5516
5517         * docs/README.linux-fb:
5518         Correct filename ~/.pangoft2_aliases
5519
5520         * gdk/gdkwindow.h:
5521         Added new function gdk_window_get_decorations.
5522
5523         * gdk/linux-fb/gdkfb.h:
5524         Removed _gdk_window_get_decorations declaration.
5525         Renamed _gdk_window_set_child_handler to
5526         gdk_fb_window_set_child_handler.
5527
5528         * gdk/linux-fb/gdkwindow-fb.c:
5529         Renamed _gdk_window_set_child_handler to
5530         gdk_fb_window_set_child_handler.
5531
5532         * gdk/x11/gdkwindow-x11.c:
5533         New function gdk_window_get_mwm_hints().
5534         Implemented gdk_window_get_decorations.
5535
5536         * docs/reference/gdk/tmpl/windows.sgml:
5537         * docs/reference/gdk/gdk-sections.txt:
5538         Added gdk_window_get_decorations docs.
5539         
5540 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
5541
5542         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
5543         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
5544         gdk_fb_window_send_crossing_events):
5545         Possibly send focus events when the mouse moves from one
5546         window to another.
5547
5548 2001-01-07  Tor Lillqvist  <tml@iki.fi>
5549
5550         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
5551         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
5552         to match current API.
5553
5554         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
5555         environment variable is set, don't call g_error when on a
5556         palettized (PseudoColor) display. Some people want to use GTK+ 
5557         in 256-colour mode even though works only partially.
5558
5559         * gdk/gdk.def
5560         * gtk/gtk.def
5561         * gtk/makefile.mingw.in: Update.
5562
5563 2001-01-05  Havoc Pennington  <hp@redhat.com>
5564
5565         * tests/testtreeview.c: hack on this a bit
5566
5567         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
5568         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
5569
5570         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
5571         was spelled incorrectly
5572         (GTK_IS_TREE_MODEL_SIMPLE): ditto
5573
5574         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
5575         from gtk_tree_view_set_headers_active   
5576
5577         * gtk/gtktexttag.c:
5578         (gtk_text_tag_get_property): handle PROP_DIRECTION
5579         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
5580         properties, bug 40235
5581
5582         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
5583         forward_to_line_end
5584
5585 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
5586
5587         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
5588         modules/input/gtkimcontextxim.c: Adapt to new prototypes
5589         for unicode,locale,filename conversion functions.
5590
5591 2001-01-05  Havoc Pennington  <hp@redhat.com>
5592
5593         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
5594         broken if called on the first position in the buffer.
5595
5596         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
5597         forward_to_delimiters to be called only if we aren't already at
5598         the delimiters.
5599
5600 2001-01-05  Havoc Pennington  <hp@redhat.com>
5601
5602         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
5603
5604 2001-01-05  Alexander Larsson  <alexl@redhat.com>
5605
5606         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
5607         colormap in here. Sync from X port.
5608         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
5609         Sync from X port.
5610         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
5611         This happens now and then, and i don't think it is a bug.
5612         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
5613         != endpoint.
5614         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
5615         GDK_LINE_SOLID.
5616
5617         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
5618         some of the fields filled in at least.
5619
5620         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
5621         miLineArcD is no more, remove it from the function definition.
5622
5623 2001-01-04  Havoc Pennington  <hp@redhat.com>
5624
5625         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
5626         this
5627
5628         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
5629         user_data instead of tree_node
5630
5631         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
5632         TREE_VIEW_COLUMN_SIZE
5633
5634         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
5635         "size" field to "width" finishes bug 40061
5636
5637         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
5638         for bitfields, bug 40268
5639
5640 2001-01-04  Havoc Pennington  <hp@redhat.com>
5641
5642         Rename some stuff:
5643         
5644         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
5645
5646         s/GtkModelSimple/GtkTreeModelSimple/g;
5647         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
5648         s/gtk_model_simple/gtk_tree_model_simple/g;
5649         s/gtkmodelsimple/gtktreemodelsimple/g;
5650
5651         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
5652
5653         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
5654         s/column_set_col_type/column_set_sizing/g;
5655
5656         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
5657         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
5658
5659         s/GtkCellRendererType/GtkCellRendererState/g;
5660         
5661         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
5662         (gtk_cell_renderer_toggle_class_init): change "state" property to
5663         "active", to match GtkToggleButton
5664         (gtk_cell_renderer_toggle_get_active): new function, bug
5665         40269
5666         (gtk_cell_renderer_toggle_set_active): new function
5667         (gtk_cell_renderer_toggle_set_property): route changes to toggle
5668         state through gtk_cell_renderer_set_active
5669
5670 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
5671
5672         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
5673         temporarily until they work again.  Brought up to date with
5674         changes in the model.
5675         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
5676         model.
5677
5678 2001-01-04  Havoc Pennington  <hp@redhat.com>
5679
5680         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
5681         equal to the line length, then position iterator before paragraph 
5682         separators. Fixes crash reported by Mikael Hermansson when
5683         pressing left arrow from the start of a line.   
5684
5685         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
5686         about byte indexes off the end
5687         (iter_set_from_char_offset): add g_error about char offsets
5688         off the end
5689
5690 2001-01-03  Havoc Pennington  <hp@redhat.com>
5691
5692         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
5693
5694         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
5695         of private functions; remove inclusion of private headers.
5696
5697         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
5698         function, so we don't need private functions in gtktextdisplay.c
5699
5700         * gtk/gtktextiterprivate.h: underscore-ification
5701
5702         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
5703         to instead say "only useful to implement widgets"
5704
5705         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
5706         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
5707         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
5708
5709         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
5710         This function was completely broken
5711
5712         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
5713
5714         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
5715
5716         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
5717
5718         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
5719
5720         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
5721
5722         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
5723
5724         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
5725         gtk_paint_layout
5726
5727         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
5728         gtk_paint_layout
5729
5730         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
5731         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
5732         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
5733         which were not implemented.     
5734
5735         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
5736         insert_pixbuf signal. Rename delete_text to delete_range since it
5737         also deletes pixbufs and child anchors. This almost closes bug
5738         40245 (still need to deal with child anchors)
5739
5740         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
5741         insert_pixbuf, change signal names as appropriate, change types of
5742         signals taking marks/tags to have the specific type, not just
5743         G_TYPE_OBJECT
5744         
5745         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
5746         closes bug 40051
5747
5748         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
5749         unnecessary remove_contents() call
5750         (gtk_option_menu_class_init): add a "changed" signal, closes
5751         bug 40039
5752         (gtk_option_menu_update_contents): emit "changed" if the 
5753         active menu item changes
5754
5755         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
5756         cast to GtkObject, reported by Jonas Borgstrom
5757         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
5758         we can't do stuff with side effects in finalize. Instead, spew a
5759         warning if the loader isn't closed.
5760
5761         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
5762         colormap in here, non-X ports probably need to sync to this change
5763
5764         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
5765         assertion that colormap != NULL, you can set the colormap to NULL
5766         if you like.
5767         
5768         * Makefile.am: remove gtk-config-2.0
5769
5770         * configure.in: Use pkg-config to locate GLib. Remove
5771         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
5772         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
5773         Use pkg-config to locate Pango. Output correct Pango libs to
5774         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
5775
5776         * Makefile.am (pkgconfig_DATA): install only target-specific pc
5777         files
5778         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
5779         X11 pc files
5780
5781         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
5782         unref from here
5783
5784 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
5785
5786         * configure.in:
5787         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
5788
5789 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
5790
5791         * gtk/gtktextlayout.c
5792         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
5793         variable when moving back onto a single line.
5794
5795 2001-01-01  Havoc Pennington  <hp@redhat.com>
5796
5797         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
5798
5799         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
5800
5801         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
5802         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
5803
5804 2001-01-01  Havoc Pennington  <hp@redhat.com>
5805
5806         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
5807
5808         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
5809         GtkTextAttributes
5810
5811         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
5812         #40246
5813         (gtk_text_attributes_copy_values): rename from 
5814         gtk_text_attributes_copy
5815         (gtk_text_attributes_copy): a more standard GTK copy function, 
5816         which returns a new object
5817
5818 2001-01-01  Havoc Pennington  <hp@redhat.com>
5819
5820         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
5821         
5822         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
5823         don't fill in tree_view->priv->selection, kind of an unexpected
5824         side effect
5825
5826         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
5827         gtkintl.h
5828         
5829         * gtk/gtkcellrenderer.c: Remove definition of _ and include
5830         gtkintl.h
5831         (gtk_cell_renderer_get_property): remove calls to g_value_init
5832
5833         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
5834         gtkintl.h
5835
5836         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
5837         and include gtkintl.h
5838         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
5839         property names
5840
5841         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
5842         GtkTreeSelection
5843         (_gtk_tree_selection_new_from_with_view): rename, return
5844         GtkTreeSelection
5845         (_gtk_tree_selection_set_tree_view): rename with uscore
5846         (gtk_tree_selection_get_selected): fill in the "model" out param
5847         first, so it gets filled in even if we return at the top of the 
5848         function
5849         (gtk_tree_selection_real_select_all): add a comment and an else{}
5850         to clarify this a bit
5851         (gtk_tree_selection_real_unselect_all): add the same else{}
5852
5853         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
5854         set_tree_view to have underscore prefixes, move them to the
5855         private header, fix return type of new_with_tree_view
5856         (struct _GtkTreeSelection): mark struct
5857         fields private  
5858
5859         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
5860         GtkTreeModelFlags, not a guint
5861         (gtk_tree_path_prev): return gboolean not gint
5862         (gtk_tree_path_up): return gboolean not gint
5863
5864         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
5865         return GtkTreeModelFlags, not a guint
5866
5867         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
5868         that child model is non-null before unrefing it
5869         (g_value_int_compare_func): make this a qsort compare func, not 
5870         a boolean predicate
5871
5872         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
5873         (add -umn to the end), and mark it unimplemented
5874         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
5875         I don't see what it's for - doesn't the model always sort itself?
5876         (gtk_tree_model_sort_set_compare): this had the wrong signature
5877
5878         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
5879         Fix the docs to say that it destructively replaces existing
5880         attributes (previously said that it added attributes).
5881         (gtk_tree_view_column_set_visible): canonicalize bool before
5882         equality testing. Also, check for realization before
5883         hiding/showing the tree_column->window; if this window could exist
5884         before realization, then it's busted and needs fixing, we can't 
5885         create GDK resources pre-realization. Also, remove
5886         superfluous queue_resize(), since set_size() does that for us.
5887         (gtk_tree_view_column_set_col_type): check realization before 
5888         using tree_column->window
5889
5890         * gtk/gtktreedatalist.c: fix filename in copyright notice
5891
5892 2000-12-31  Havoc Pennington  <hp@pobox.com>
5893
5894         * gtk/gtktextview.c: Rearrange all the
5895         scroll-while-dragging-or-selecting code to be different, not
5896         necessarily better. ;-)
5897         (gtk_text_view_scroll_to_mark): Change this
5898         function to take within_margin as a fraction instead of a pixel
5899         value, and to take alignment arguments (indicating where to align 
5900         the mark inside the visible area)
5901         
5902         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
5903         to GtkObject
5904
5905         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
5906         behavior so that offsets past the end of the line are not 
5907         allowed, and an offset equal to the line length moves the iterator
5908         to the next line
5909         (gtk_text_iter_set_line_index): make parallel change
5910         (gtk_text_iter_get_bytes_in_line): add this function
5911         
5912         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
5913         of byte indexes off the end of the line; byte index at the end of
5914         the line now returns FALSE and doesn't fill in the requested
5915         values, byte index past the end of the line is an error.  Also,
5916         don't allow -1 offset anymore, since its meaning is unclear.
5917
5918         This change exposes some bug in visual cursor motion, where we
5919         end up with a huge invalid byte index; needs fixing. Symptom of 
5920         bug is a crash when you hit up arrow.
5921         
5922         (_gtk_text_line_char_locate): match the change to byte_locate
5923
5924         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
5925         from start of line properly. fixes bug reported by Mikael
5926         Hermansson where backspace would delete all text before the
5927         cursor.
5928
5929 2000-12-30  Tor Lillqvist  <tml@iki.fi>
5930
5931         * gdk/win32/gdkwindow-win32.c
5932         (gdk_window_impl_win32_get_visible_region): New function, as in
5933         the X11 backend.
5934         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
5935         instead of duplicating the same code here.
5936
5937         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
5938         GDK_COLORMAP macro.
5939
5940         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
5941         destroy function.
5942         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
5943         access that.
5944
5945         * gtk/gtk.def: Update.
5946
5947         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
5948
5949 2000-12-30  Havoc Pennington  <hp@pobox.com>
5950
5951         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
5952         colormap on input only windows, to avoid special cases all over
5953         the code for these windows.
5954
5955 2000-12-26  Tor Lillqvist  <tml@iki.fi>
5956
5957         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
5958         we are on a palettized display ("PseudoColor" in X11), as the code
5959         for that doesn't work anyway, and never has.
5960
5961 2000-12-22  Alexander Larsson  <alexl@redhat.com>
5962
5963         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
5964         Don't use isprint() for chars > 255.
5965
5966 2000-12-21  Havoc Pennington  <hp@redhat.com>
5967
5968         * tests/testtreeview.c: more work
5969
5970 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5971
5972         * docs/README.linux-fb:
5973         Update the docs to the new pangoft2 way.
5974
5975 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5976
5977         * configure.in:
5978         For linux-fb get the pangoft2 cflags and libs. This needs a recent
5979         pango version.
5980         Remove modules/linux-fb/Makefile.
5981
5982         * gdk/linux-fb/gdkdrawable-fb2.c:
5983         Render glyphs using freetype.
5984
5985         * gdk/linux-fb/gdkfb.h:
5986         Add new fb-specific functions needed for managing windows.
5987
5988         * gdk/linux-fb/gdkmain-fb.c:
5989         Remove gdk_font_init/fini() calls.
5990
5991         * gdk/linux-fb/gdkpango-fb.c:
5992         Remove old implementation. Use pangoft2 instead.
5993
5994         * gdk/linux-fb/gdkprivate-fb.h:
5995         Remove PangoFBFont and related stuff.
5996
5997         * gdk/linux-fb/gdkwindow-fb.c:
5998         Implement drawable->get_visible_region.
5999         Implement support for _gdk_window_set_child_handler () and
6000         _gdk_window_get_decorations().
6001
6002         * modules/Makefile.am:
6003         Remove linux-fb subdir.
6004
6005         * modules/linux-fb/*:
6006         Removed all.
6007         
6008 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
6009
6010         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
6011         calls, as they are no longer needed.
6012
6013         * gtk/gtktreemodelsort.c: Fix up the comparison code.
6014         
6015         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
6016         figure out how to emit a signal on an interface.
6017
6018 2000-12-20  Havoc Pennington  <hp@redhat.com>
6019
6020         * tests: new directory to contain tests, gtk/test* should move
6021         here sometime (with appropriate on-cvs-server hackery)
6022
6023         * tests/testtreeview.c, tests/Makefile.am: a test
6024         
6025         * configure.in (AC_OUTPUT): add tests/Makefile
6026
6027         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
6028         and "invisible_set" which were missing
6029
6030         * gtk/gtkrbtree.h: some cheesy indentation fix
6031         
6032 2000-12-20  Alexander Larsson  <alexl@redhat.com>
6033
6034         * gtk/gtkinvisible.c (gtk_invisible_realize):
6035         Attach the style to the window so that the style it is not
6036         leaked when unrealizing the window.
6037
6038 2000-12-18  Havoc Pennington  <hp@redhat.com>
6039
6040         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
6041         begin/end user action where appropriate
6042         (gtk_text_view_commit_handler): add begin/end user action
6043
6044         * gtk/gtktextbuffer.c: add begin/end user action signals, and
6045         bracket interactive operations with begin/end user action pair.
6046         
6047         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
6048         "interactive" arg from insert_text and delete_text signals.
6049         Add begin_user_action, end_user_action signals
6050         (gtk_text_buffer_begin_user_action): 
6051         (gtk_text_buffer_end_user_action): New functions to delimit 
6052         a user-visible action
6053
6054         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
6055         signals.
6056         
6057 2000-12-18  Havoc Pennington  <hp@redhat.com>
6058
6059         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
6060         was pretty non-working.
6061
6062         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
6063         by passing the length to g_utf8_validate().
6064
6065 2000-12-16  Havoc Pennington  <hp@pobox.com>
6066
6067         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
6068         Port to GObject, can go back in gdk-pixbuf after setting up 
6069         a gdk-pixbuf-marshal.h header over there.
6070
6071         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
6072         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
6073         args
6074         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
6075         set
6076         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
6077         here, do it when we create the buttons later
6078         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
6079         (gtk_tree_view_map): paranoia checks that column->button is shown 
6080         and unmapped
6081         (gtk_tree_view_size_request): only request visible children.
6082         Move header size calculation in here, for cleanliness, and 
6083         to maintain invariants for child widgets if we eventually 
6084         let users set different children inside the buttons
6085         (gtk_tree_view_map_buttons): factor out code to map buttons,
6086         since it was being called several times
6087         (gtk_tree_view_size_allocate_buttons): move_resize the drag
6088         windows instead of just moving them; their height may change 
6089         if we allow random widgets in there, or the theme changes.
6090         (gtk_tree_view_size_allocate): move button size allocation 
6091         above emitting the scroll signals, to ensure a sane state when we
6092         hit user code
6093         (gtk_tree_view_button_release): remove queue_resize after
6094         tree_view_set_size(), set_size() will handle any resize queuing
6095         that's needed
6096         (gtk_tree_view_focus_in): just queue a draw, don't fool with
6097         draw_focus goo
6098         (gtk_tree_view_focus): use gtk_get_current_event() and
6099         gdk_event_get_state()
6100         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
6101         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
6102         semicolon
6103         (gtk_tree_view_create_button): show the button here
6104         (gtk_tree_view_button_clicked): actually emit the clicked signal
6105         on the column
6106         (_gtk_tree_view_set_size): return right away if the size is
6107         unchanged, as a cheesy optimization
6108         (gtk_tree_view_setup_model): rename set_model_realized to 
6109         setup_model to match the flag that indicates whether we've 
6110         called it
6111         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
6112         exist, because set_scroll_adjustment does that and it shouldn't
6113         matter what order you call these in
6114         (gtk_tree_view_get_vadjustment): ditto
6115         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
6116         for paranoia
6117         (gtk_tree_view_set_headers_visible): call
6118         gtk_tree_view_map_buttons() instead of using cut-and-paste code
6119         (gtk_tree_view_append_column): clarify whether the return value
6120         is the count of columns before or after, and do the increment 
6121         separately from the return statement so you can tell from the code.
6122         (gtk_tree_view_remove_column): ditto
6123         (gtk_tree_view_insert_column): ditto
6124         (gtk_tree_view_get_column): remove g_return_if_fail for columns
6125         outside the existing range, the docs say that outside-range
6126         columns are allowed, so we handle them as documented. (Presumably
6127         this allows a nice loop with column != NULL as test.)
6128         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
6129         mean (left/right/center etc.).
6130         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
6131         (gtk_tree_view_expand_row): add docs
6132         (gtk_tree_view_collapse_row): add docs
6133
6134         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
6135         function to emit the clicked signal on a column
6136         
6137         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
6138         state of an event
6139         (gdk_event_get_time): don't treat GDK_SCROLL 
6140         as a button event, remove default case from switch so gcc 
6141         will whine if we don't explicitly handle all event types
6142
6143         * gtk/gtktreeselection.h: added some FIXME 
6144         
6145         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
6146         "columns" to "n_columns" and "column" to "columns" for clarity
6147
6148 2000-12-16  Havoc Pennington  <hp@pobox.com>
6149         
6150         * gtk/gtktextiter.c: General cleanup of the log attr iteration
6151         stuff. This should make e.g. the delete key work again in the
6152         text widget...
6153         (gtk_text_iter_forward_cursor_positions): handle negative count
6154         (gtk_text_iter_backward_cursor_positions): handle negative count
6155         (gtk_text_iter_forward_word_ends): handle negative count
6156         (gtk_text_iter_backward_word_starts): handle negative count
6157
6158         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
6159         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
6160         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
6161         GObject. No doubt will cause breakage.
6162
6163         * demos/gtk-demo/textview.c: remove hacks around
6164         non-GObject-ification of the text objects
6165
6166         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
6167         the text tag
6168         
6169 2000-12-14  Havoc Pennington  <hp@pobox.com>
6170
6171         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
6172         that we have Xrender
6173
6174 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
6175
6176         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
6177         Add two virtualized functions gdk_drawable_get_clip_region - to
6178         get the clip region when drawing.
6179         
6180         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
6181         use invalidate_region.
6182
6183         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
6184         region.
6185
6186         * acconfig.h configure.in: Check for Xft. For now, assume
6187         that if Xft is found, Pango was compiled with Xft support
6188         as well.
6189
6190         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
6191         gdk_colormap_query_color().
6192         
6193         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
6194         with Xft if appropriate.
6195
6196         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
6197         a pangoxft context if we have XFT and the environment
6198         variable GD_USE_XFT is set.
6199         
6200         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
6201         and also possibly an XftDraw structure.
6202
6203         * gtk/gtkfontsel.c: Handle the case where the font from the
6204         style doesn't match any of the fonts a bit better.
6205         
6206         * gtk/testgtk.c: Add tabs between directional segments for
6207         hebrew/arabic test. (Not really necessary, just a little
6208         prettier.)
6209
6210 2000-12-14  Havoc Pennington  <hp@redhat.com>
6211
6212         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
6213         reading a file
6214
6215 2000-12-14  Havoc Pennington  <hp@redhat.com>
6216
6217         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
6218         unused call to get_last_line()
6219
6220         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
6221         here until boxed is working (and maybe after that - we should
6222         really not gratuitously break old code)
6223
6224         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
6225         specific types for font_desc and tabs args, move them to
6226         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
6227         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
6228
6229         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
6230         use GTK_TYPE_POINTER for signal signatures as a hack-around
6231
6232         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
6233         PangoTabArray
6234
6235         * gtk/gtktextlayout.c (line_display_iter_to_index): 
6236         make static
6237         (line_display_index_to_iter): make static
6238
6239         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
6240         to marshal a string not a boxed
6241
6242         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
6243
6244         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
6245         since the UTF-8 isn't validated yet
6246
6247         * gtk/gtktextsegment.c (char_segment_check_func): don't require
6248         lines to end in '\n'
6249         
6250         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
6251         forward_to_delimiters, and grapheme boundaries
6252         (gtk_text_view_delete_from_cursor): properly handle non-newline
6253         delimiters, and grapheme boundaries
6254
6255         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
6256         to gtk_text_iter_forward_to_delimiters, and make it work properly
6257         if empty lines end with a character other than '\n'
6258
6259         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
6260         position
6261
6262 2000-12-15  Tor Lillqvist  <tml@iki.fi>
6263
6264         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
6265
6266         * gtk/gtk.def
6267         * gdk/gdk.def: Update.
6268
6269         * gdk/win32/gdkmain-win32.c
6270         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
6271         gdkmain-win32.c here.
6272
6273         * gdk/win32/makefile.mingw.in (all): No need to make
6274         gdk-win32res.o here, the makefile one step up will call us to make
6275         it.
6276
6277         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
6278         gdkkeys-win32.
6279
6280         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
6281
6282         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
6283         call to g_source_add().
6284
6285         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
6286         leak. Thanks to Andreas Kemnade.
6287
6288 2000-12-13  Havoc Pennington  <hp@pobox.com>
6289
6290         * gtk/gtktextbtree.h: Remove double _ in front of some functions
6291
6292         * gtk/gtktext*.[hc]: update accordingly
6293         
6294 2000-12-13  Havoc Pennington  <hp@pobox.com>
6295
6296         * gtk/gtktextbtree.h: Put _ in front of every function in this 
6297         header file
6298
6299         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
6300
6301 2000-12-13  Alex Larsson  <alexl@redhat.com>
6302
6303         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
6304         Add support for ps2 intellimouse.
6305
6306         * gdkkeyboard-fb.c:
6307         Move shift-F1 repaint handling to xlate handler only.
6308         
6309         * docs/README.linux-fb:
6310         Add imps2 to docs.
6311         Document the new refresh keys.
6312         
6313 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
6314
6315         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
6316
6317         * gtk/gtkbox.c: change property types from (u)long to (u)int for
6318         ::position and ::padding.
6319
6320         * gtk/gtkcontainer.c: make ::border_width an INT property.
6321
6322         * gtk/gtkpacker.c: make ::position an INT property.
6323
6324         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
6325         guard against NULL h/v scrollbars, since this is used at construction
6326         time.
6327
6328         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
6329         internal gtk_clist_constructor().
6330
6331         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
6332         gtk_ctree_constructor().
6333
6334         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
6335         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
6336
6337         * docs/reference/Makefile.am: fun stuff, disabled docs generation
6338         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
6339
6340         * gtk/gtkwidget.[hc]:
6341         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
6342         and gtk_widget_get().
6343         (gtk_widget_new): use g_object_new_valist().
6344         (gtk_widget_set): use g_object_set_valist().
6345
6346         * gtk/gtkobject.[hc]:
6347         removed gtk_object_arg_get_info(), gtk_object_getv(),
6348         gtk_object_query_args(), gtk_object_newv(),
6349         gtk_object_class_add_signals(),
6350         gtk_object_class_user_signal_new(),
6351         gtk_object_class_user_signal_newv(),
6352         gtk_object_arg_set(), gtk_object_arg_get(),
6353         gtk_object_args_collect(),
6354         gtk_object_default_construct(),
6355         gtk_object_constructed(),
6356         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
6357         removed nsignals, signals and n_args members from GtkObjectClass.
6358         (gtk_object_new): use g_object_new_valist().
6359         (gtk_object_set): use g_object_set_valist().
6360         (gtk_object_get): use g_object_get_valist().
6361         
6362         * gtk/gtkcompat.h: define gtk_object_default_construct().
6363         
6364         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
6365         g_object_new().
6366
6367         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
6368         fucntions, cleaned up method assignments (make sure your structures
6369         are setup properly before calling out). removed all GTK_CONSTRUCTED
6370         hacks ;)
6371
6372 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
6373
6374         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
6375         off-by-one error in checks. (Dave Lambert)
6376
6377 2000-12-12  Alexander Larsson  <alexl@redhat.com>
6378
6379         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
6380         Don't free gdk_fb_keyboard twice.
6381
6382 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
6383
6384         * gtk/testgtk.c:
6385         (create_tooltips): 
6386         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
6387         use GObject swapped_signal:: properties instead.
6388
6389         * gtk/gtkcellrenderertoggle.c: 
6390         * gtk/gtkcellrenderertextpixbuf.c: 
6391         * gtk/gtkcellrenderertext.c: 
6392         * gtk/gtkcellrendererpixbuf.c: 
6393         * gtk/gtkcellrenderer.c:
6394         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
6395         missing warnings for invalid property ids, install properties
6396         with g_object_class_install_property() now.
6397         
6398         * gtk/gtksignal.c:
6399         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
6400         
6401 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
6402         
6403         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
6404         to determine if a window is the focus widget within
6405         its toplevel.
6406
6407         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
6408         to be boolean.
6409
6410         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
6411         of the case where the container CAN_FOCUS to here instead
6412         of having it in each individual move-the-focus place.
6413
6414         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
6415         focusing to be geometric in a much more obvious sense. Arrowing
6416         around is still non-intuitive because it isn't perfect and
6417         because entries, etc, grab the arrow keys, but it at least
6418         usually will do what you expect now.
6419         
6420         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
6421         file.
6422
6423         * gtk/gtknotebook.c: Change tabs to be a single item in
6424         the focus chain. Make movement of focus on tabs with arrow
6425         keys wrap around.
6426         
6427         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
6428         CHECK_FIND_CHILD macro to give informative error messages
6429         instead of silent returns.
6430
6431         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
6432         flag since we handle GdkReturn on the tabs.
6433
6434         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
6435         windows rather than sending expose events directly.
6436
6437         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
6438         definition for GtkNotebookPage into .c file, since it is private.
6439
6440         * gtk/testgtk.c (create_notebook): Add option for 
6441         testing borderless notebook.
6442
6443         * gtk/testgtk.c (page_switch): Removed egregious poking
6444         around in GTK+ internals.
6445
6446         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
6447
6448         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
6449         properly through gtk_clist_focus. Make the title headers a
6450         single item in the tab-focus chain, and make left-right wrap
6451         around.
6452
6453         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
6454         focus method so that wrapping around works properly.
6455
6456         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
6457         that is handled for the widget now. 
6458
6459 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
6460
6461         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
6462         widgets as TOPLEVEL.
6463
6464         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
6465         TOPLEVEL widgets are containers.
6466
6467         * gtk/gtkinvisible.h: Remove useless include.
6468
6469 2000-12-11  Havoc Pennington  <hp@redhat.com>
6470
6471         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
6472         Handle chopping off \r\n and 0x2029 in addition to \n before
6473         passing to PangoLayout
6474
6475         * gtk/gtkimcontextsimple.c
6476         (gtk_im_context_simple_get_preedit_string): 
6477         return an empty string if no match is pending
6478
6479         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
6480         assertion that the returned preedit string was sane
6481
6482         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
6483         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
6484         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
6485
6486 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
6487
6488         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
6489         Fix up finalizer to chain to its parent.
6490
6491 2000-12-11  Alexander Larsson  <alexl@redhat.com>
6492
6493         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
6494         Clearified the difference between the keyboard types. Wrote a note
6495         about the magic sysrq key to get out of raw mode.
6496
6497 2000-12-09  James Henstridge  <james@daa.com.au>
6498
6499         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
6500         member to hold masks for detecting the start of a protocol packet.
6501         (mouse_devs): add packet start masks for ps2 and ms device types.
6502         Left the mask for fidmour blank, as I have no idea what it should
6503         be.
6504         (handle_mouse_io): skip bytes until we get to the start of a
6505         packet.  My Logitech mouse seems to be passing an extra NULL pad
6506         byte, and GPM does a similar thing here.
6507         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
6508         this is the ms mouse driver.
6509         (gdk_fb_mouse_ms_packet): fix up button handling, which was
6510         completely broken except for button1.  It was checking the wrong
6511         bit in the packet for the status of the right mouse button, and
6512         wrongly assuming right == button2 rather than 3.  I fixed that and
6513         also added support for middle button (button2).
6514
6515 2000-12-08  Havoc Pennington  <hp@redhat.com>
6516
6517         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
6518         that cause a segfault on text insertion
6519
6520         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
6521         warning
6522
6523         * gtk/gtktextiter.c (test_log_attrs): use
6524         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
6525
6526         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
6527         Get log attrs for a line, using a cache stored on the buffer
6528         
6529         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
6530         reported by Jeff Franks
6531
6532 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
6533
6534         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
6535         /dev/ttyS0 -> /dev/mouse
6536
6537 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
6538
6539         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
6540         Added dummy gdk_fontset_load.
6541
6542 2000-12-08  Alexander Larsson  <alexl@redhat.com>
6543
6544         * docs/README.linux-fb:
6545         * docs/Makefile.am:
6546         Initial GtkFB docs.
6547         
6548         * gdk/linux-fb/Makefile.am:
6549         Define GDK_DATA_PREFIX.
6550
6551         * gdk/linux-fb/gdkmain-fb.c:
6552         Fix typo.
6553         Change default display to /dev/fb0.
6554
6555         * gdk/linux-fb/gdkpango-fb.c:
6556         Add $(prefix)/share/fonts/ to font path.
6557         
6558 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
6559
6560         * gdk/linux-fb/gdkkeyboard-fb.c:
6561         New file containing the abstracted keyboard driver. Most code
6562         taken from gdkinput-ps2.c
6563
6564         * gdk/linux-fb/gdkinput-ps2.c:
6565         Removed file.
6566         
6567         * gdk/linux-fb/Makefile.am:
6568         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
6569
6570         * gdk/linux-fb/gdkcolor-fb.c:
6571         display->fb was renamed to display->fb_fd.
6572
6573         * gdk/linux-fb/gdkcursor-fb.c:
6574         gdk_mouse_get_info -> gdk_fb_mouse_get_info
6575
6576         * gdk/linux-fb/gdkinput.c:
6577         Moved gdk_input_init here from gdkinput-ps2.c
6578
6579         * gdk/linux-fb/gdkmain-fb.c:
6580         display->fb was renamed to display->fb_fd.
6581         Now the tty and the console is opened here instead
6582         of in the keyboard driver. Also check GDK_VT to see what
6583         tty to open.
6584         Move gdk_beep () here from gdkinput-ps2.c
6585         gdk_mouse_get_info -> gdk_fb_mouse_get_info
6586
6587         * gdk/linux-fb/gdkmouse-fb.c:
6588         Add header.
6589         gdk_mouse_get_info -> gdk_fb_mouse_get_info
6590         Return correct keyboard modifiers.
6591         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
6592
6593         * gdk/linux-fb/gdkprivate-fb.h:
6594         Add tty and vt info to display.
6595         Add orignal modeinfo storage to display
6596         Update global functions
6597
6598         * gdk/linux-fb/gdkwindow-fb.c:
6599         Added gdk_fb_window_find_focus().
6600         gdk_mouse_get_info -> gdk_fb_mouse_get_info
6601
6602 2000-12-07  Havoc Pennington  <hp@pobox.com>
6603
6604         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
6605         function, noticed by Alex
6606
6607 2000-12-06  Elliot Lee  <sopwith@redhat.com>
6608
6609         * configure.in: Detect freetype properly
6610
6611         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
6612         above.
6613
6614 2000-12-06  Alexander Larsson  <alexl@redhat.com>
6615
6616         * gdk/linux-fb/Makefile.am:
6617         Add gdkmouse-fb.c
6618         
6619         * gdk/linux-fb/gdkmouse-fb.c:
6620         New file. Abstracted the mouse drivers a bit.
6621
6622         * gdk/linux-fb/gdkcursor-fb.c:
6623         The cursor hide/show functions was moved here from gdkinput-ps2.c.
6624
6625         * gdk/linux-fb/gdkinput-ps2.c:
6626         Removed old mouse handling code. Moved cursor handling code
6627         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
6628         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
6629         gdk_mouse_get_info.
6630
6631         * gdk/linux-fb/gdkmain-fb.c:
6632         Pass NULL pointers for x,y in gdk_mouse_get_info call.
6633
6634         * gdk/linux-fb/gdkprivate-fb.h:
6635         Removed public gdk_fb_find_common_ancestor, added and renamed
6636         functions for the new mouse handling code.
6637
6638         * gdk/linux-fb/gdkwindow-fb.c:
6639         Moved gdk_fb_window_send_crossing_events here. added global
6640         variable gdk_fb_window_containing_pointer. made
6641         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
6642         renamed to gdk_mouse_get_info.
6643
6644 2000-12-06  Alexander Larsson  <alexl@redhat.com>
6645
6646         * gdk/linux-fb/gdkevents-fb.c:
6647         Update to match latest gmain/gsource changes.
6648
6649         * gdk/linux-fb/gdkinput-ps2.c:
6650         Bogus gdk_keymap_get_entries_for_keycode implementation so that
6651         it links. Will be implemented later.
6652
6653 2000-12-03  Havoc Pennington  <hp@pobox.com>
6654
6655         * gdk/Makefile.am: add gdkkeys.[hc]
6656
6657         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
6658         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
6659
6660         * acconfig.h, configure.in: add checks and command line options
6661         for XKB
6662
6663         * gdk/x11/gdkkeys-x11.c: Implement the above functions
6664         
6665         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
6666         and group in the key event
6667
6668         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
6669         field with the low-level hardware key code, and a group
6670         field with the keyboard group
6671
6672         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
6673         and declare a couple globals used for keymap handling
6674         
6675         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
6676         hold down Shift-Control and type a hex number to get a Unicode 
6677         character corresponding to the hex number
6678         (gtk_im_context_simple_get_preedit_string): Fix cursor position
6679         (return bytes not chars)
6680
6681 2000-12-05  Elliot Lee  <sopwith@redhat.com>
6682
6683         * gdk/gdkcolor.h: Make GdkColor specify element sizes
6684         to avoid waste on 64-bit platforms.
6685
6686 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
6687
6688         * INSTALL: Fix link to PNG home, remove reference
6689         to fribidi.
6690
6691         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
6692         
6693         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
6694         tested.)
6695
6696         * gtk/gtkcheckmenuitem.c: Permanently turn on
6697         always_show_toggle.
6698
6699         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
6700         be NULL. (Vladimir Klebanov, #26545)
6701
6702         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
6703         some signed/unsigned comparison problems. (#6510,
6704         David Kaelbling)
6705
6706         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
6707         return type to boolean (Oskar Liljeblad, #18648)
6708
6709 2000-12-05  Alexander Larsson  <alexl@redhat.com>
6710
6711         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
6712         Remove bogus colormap setting.
6713
6714 2000-12-05  Alexander Larsson  <alexl@redhat.com>
6715
6716         * gdk/linux-fb/gdkcolor-fb.c:
6717         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
6718
6719         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
6720         Must set colormap.
6721         
6722 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
6723
6724         * docs/tutorial/gtk-tut.sgml: DND updates
6725
6726 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
6727
6728         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
6729         Remove old debug g_warning().
6730         (gdk_fb_draw_drawable): The src argument can be either a wrapper
6731         or an implementation, just pass the implementation to draw_drawable_2.
6732         
6733         * gdk/linux-fb/gdkprivate-fb.h:
6734         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
6735
6736         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
6737         clear and invalidate area when window is destroyed.
6738         (send_map_events): Remove old commented out code.
6739
6740 2000-12-05  Alexander Larsson  <alexl@redhat.com>
6741
6742         * gdk/linux-fb/gdkpango-fb.c:
6743         Use italic instead of oblique in font aliases.
6744         
6745         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
6746         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
6747         other unsupported functions.
6748
6749 2000-12-04  Havoc Pennington  <hp@redhat.com>
6750
6751         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
6752
6753         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
6754
6755         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
6756
6757         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
6758         hack to avoid infinite loops (synthetic expose event) - 
6759         Owen has more appropriate fixes in a branch he'll check in later.
6760
6761         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
6762         separator, CR, and CRLF as line ends
6763
6764         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
6765         into lines using pango_find_paragraph_boundary(); other bits of
6766         the widget are still going to be broken if the boundary isn't '\n'
6767         though
6768
6769 2000-12-04  Alexander Larsson  <alexl@redhat.com>
6770
6771         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
6772         multiply.
6773
6774         * gdk/linux-fb/gdkpango-fb.c:
6775         Copied some 26.6 scaling macros from pango to clean up the rounding.
6776         (pango_fb_font_get_glyph_info): Correct sign on x value.
6777
6778         * gdk/linux-fb/gdkprivate-fb.h:
6779         Removed unreferenced external functions.
6780
6781         * modules/linux-fb/Makefile.am: Use ` instead of '.
6782
6783         * modules/linux-fb/basic.c:
6784         Remove dead code. In particular the dummy lang engine which broke all
6785         pango layouts in GtkFB. Don't include tables-big.i anymore.
6786
6787         * modules/linux-fb/tables-big.i:
6788         Upgrade to latest version from pango. Left for reference, basic_ranges
6789         moved to basic.c.
6790         
6791 2000-12-04  Havoc Pennington  <hp@redhat.com>
6792
6793         Fix bugs Alex found:
6794         
6795         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
6796         to "draw"
6797
6798         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
6799
6800         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
6801
6802         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
6803         implementation in here, apparently the expose() implementation was
6804         dead code.
6805
6806 2000-12-04  Alexander Larsson  <alexl@redhat.com>
6807
6808         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6809         Return positive descent.
6810
6811 2000-12-02  Havoc Pennington  <hp@pobox.com>
6812
6813         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
6814         method and signal
6815         
6816         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
6817         calls gdk_window_process_updates() to push the exposes through
6818         (gtk_widget_class_init): No more draw signal, no
6819         gtk_widget_real_draw()  
6820         
6821         * gtk/gtkbin.c (gtk_bin_draw): remove
6822
6823         * gtk/gtkbox.c (gtk_box_draw): remove
6824
6825         * gtk/gtkbutton.c (gtk_button_draw): remove
6826
6827         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
6828
6829         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
6830
6831         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
6832
6833         * gtk/gtkclist.c (gtk_clist_draw): remove
6834
6835         * gtk/gtkentry.c (gtk_entry_draw): remove
6836
6837         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
6838
6839         * gtk/gtkfixed.c (gtk_fixed_draw): remove
6840
6841         * gtk/gtkframe.c (gtk_frame_draw): remove
6842
6843         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
6844
6845         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
6846
6847         * gtk/gtklayout.c (gtk_layout_draw): remove
6848
6849         * gtk/gtklist.c (gtk_list_draw): remove
6850
6851         * gtk/gtklistitem.c (gtk_list_item_draw): remove
6852
6853         * gtk/gtkmenu.c (gtk_menu_draw): remove
6854
6855         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
6856
6857         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
6858
6859         * gtk/gtknotebook.c (gtk_notebook_draw): remove
6860
6861         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
6862
6863         * gtk/gtkpacker.c (gtk_packer_draw): remove
6864
6865         * gtk/gtkrange.c (gtk_range_draw): remove
6866
6867         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
6868
6869         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
6870
6871         * gtk/gtktable.c (gtk_table_draw): remove
6872
6873         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
6874
6875         * gtk/gtktext.c (gtk_text_draw): remove
6876
6877         * gtk/gtktextview.c (gtk_text_view_draw): remove
6878
6879         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
6880
6881         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
6882
6883         * gtk/gtktree.c (gtk_tree_draw): remove
6884
6885         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
6886
6887         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
6888
6889         * gtk/gtkviewport.c (gtk_viewport_draw): remove
6890
6891         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
6892
6893         * gtk/gtkvscale.c (gtk_vscale_draw): remove
6894
6895         * gtk/gtkwindow.c (gtk_window_draw): remove
6896
6897 2000-20-01  Anders Carlsson  <andersca@gnu.org>
6898
6899         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
6900         a GtkToggleButton is both insensitive and active, it was being
6901         drawn by the GtkButton draw handler which doesn't check the
6902         state. Now it's calling gtk_toggle_button_paint instead.
6903         
6904 2000-12-01  Havoc Pennington  <hp@redhat.com>
6905
6906         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
6907         dangling pointers to the appearance attributes from the 
6908         line display
6909
6910         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
6911         width/height to mean "full width/height of drawable"
6912
6913         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
6914         click to select word/line
6915         
6916         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
6917         when getting log attrs. Get a slice, so that pixmaps and stuff
6918         are properly handled.
6919
6920         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
6921         paste into the selection (replaces selection now, previously
6922         crashed or added to selection). Reveals longstanding btree bug -
6923         select multiple lines, middle-click on the selection, boom. This
6924         isn't related to my changes though.
6925
6926         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
6927         PangoLogAttrs changes
6928         (gtk_entry_move_backward_word): ditto
6929
6930         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
6931         functions return bool whether the iter moved onto a
6932         dereferenceable position.
6933  
6934         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
6935         functions for motion in terms of display lines.
6936
6937         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
6938         get the buffer a mark is inside
6939         
6940 2000-12-01  Alexander Larsson  <alexl@redhat.com>
6941
6942         * gdk/linux-fb/Makefile.am:
6943         * modules/linux-fb/Makefile.am:
6944         Freetype 2 final uses freetype-config
6945
6946         * gdk/linux-fb/gdkpango-fb.c:
6947         Upgrade to use Freetype 2 final.
6948         More flexible support for font aliases, this also fixes a bug with
6949         GtkFontSelector, as the aliases must be visible in the font/family list,
6950         or GtkFontSelector reads uninitialized memory.
6951
6952 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
6953
6954         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
6955         XGetIMValues to properly terminate variable argument list, and do
6956         NULL return check for ic_values and xim_styles.
6957
6958         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
6959         Restore preedit state after XmbResetIC().
6960         
6961         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
6962         XvaCreateNestedList() should take XvaNestedList, but not
6963         XvaNestedList*.
6964
6965         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
6966         preedit_draw_callback, preedit_caret_callback): Match
6967         "preedit-changed" signal name to "preedit_changed" to be
6968         consistent to the spec.
6969
6970         * gtk/gtkimcontextsimple.c (check_table):
6971         Match "preedit-changed" to "preedit_changed" to be consistent
6972         to the spec.
6973
6974 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
6975
6976         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
6977         gc->clip_region == NULL>
6978
6979 2000-11-30  Tor Lillqvist  <tml@iki.fi>
6980
6981         Changes by Hans Breuer:
6982         
6983         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
6984         Dont't use negative width and height as max_hints. This fixes
6985         Owen's recent testgtk changes for win32.
6986
6987         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
6988         gdk_win32_hdc_release): These are exported and may be called with
6989         other drawable types than our GdkDrawableImplWin32 (?).
6990
6991         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
6992         so always #define USE_BACKING_STORE.
6993
6994         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
6995         of printf for debugging output.
6996
6997         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
6998         
6999         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
7000
7001         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
7002         declaration.
7003
7004         * gtk/gtktexttypes.h: Ditto.
7005
7006         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
7007         (GDK_VoidSymbol) also if in case of arg check failure.
7008
7009         * gtk/gtkimcontextsimple.c
7010         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
7011         position to the pointer, but to the variable it points to.
7012
7013         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
7014
7015         * gtk/gtk.def: Updates.
7016
7017 2000-11-29  Elliot Lee  <sopwith@redhat.com>
7018
7019         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
7020         GTK_TYPE_TREE_MODEL.
7021
7022 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7023
7024         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
7025         Set the size of the font from the description.
7026         (gdk_text_width): Gross hack that calculates the width
7027         of text by text_length * size/2. This is necessary because
7028         GtkLabel does some ugly gtk_string_width call to calculate
7029         an good size.
7030         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
7031
7032 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
7033
7034         * docs/tutorial/gtk-tut.sgml: DND updates
7035
7036 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7037
7038         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
7039         If you pass width or height == 0 to gdk_window_clear_area they
7040         should be calculated from the window size.
7041
7042 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7043
7044         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
7045         a grab, but no grab-cursor, use the cursor from the grabbed
7046         window. (gdk_fb_window_send_crossing_events): Send normal
7047         enter/leave notifications if grab and owner_events == TRUE.
7048
7049 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7050
7051         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7052         Do implicit button grabs, even if the window doesn't
7053         want the event.
7054         (gdk_fb_window_send_crossing_events): If there is a
7055         grab, only the grabbed window gets normal enter/leave
7056         notifications. On ungrab go from grabbed window to current.
7057         Don't send any notification to b when propagating from c -> b.
7058         If setting a grab on window, don't set prev_window.
7059         (handle_mouse_input): Send enter/leave events to the window the
7060         mouse is over, not the grabbed one.
7061         
7062 2000-11-28  Elliot Lee  <sopwith@redhat.com>
7063
7064         * gdk/gdkregion-generic.c: Zap warning.
7065         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
7066         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
7067
7068 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
7069
7070         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
7071         The cursor should be hidden if it is part of either the
7072         source or destination region. Not only if it is in both.
7073         (gdk_window_set_transient_for): Silence warnings.
7074
7075 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7076
7077         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
7078         The default mode in X is Pie Arcs, therefore that is
7079         what Gtk+ uses.
7080
7081 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7082
7083         * gdk/linux-fb/gdkinput-ps2.c:
7084         Implement correct EnterNotify/LeaveNotify:
7085         (gdk_fb_window_send_crossing_events): New function that sends
7086         all GdkCrossingEvents from the last mouse-window to the specified
7087         destination.
7088         (gdk_fb_window_visibility_crossing): Removed function.
7089         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
7090         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
7091         instead of gdk_window_get_pointer() for better readability.
7092
7093         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
7094         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
7095
7096         * gdk/linux-fb/gdkprivate-fb.h:
7097         removed gdk_fb_window_visibility_crossing, added
7098         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
7099
7100         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
7101         New function that finds the least common ancestor of two windows.
7102         (gdk_window_show, gdk_window_hide):
7103         Use gdk_fb_window_send_crossing_events.
7104         (gdk_fb_window_move_resize): Send configure events to toplevel
7105         windows. Use gdk_fb_window_send_crossing_events.
7106
7107 2000-11-27  Havoc Pennington  <hp@redhat.com>
7108
7109         * gtk/gtkprivate.h (enum): Remove a trailing comma
7110
7111 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
7112
7113         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
7114         the "changed" callback of the adjustment.  We need to redraw the
7115         spin button's arrows when the adjustment's range changes.
7116         (adjustment_changed_cb): Draw the arrows.
7117         (gtk_spin_button_value_changed): Draw the arrows.
7118
7119 2000-11-23  Alexander Larsson  <alexl@redhat.com>
7120
7121         * gdk/linux-fb/gdkselection-fb.c:
7122         Initial selection implementation.
7123
7124         * gtk/gtkselection.c:
7125         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
7126         requestor in gtk_selection_request.
7127         
7128         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
7129         Added gdk_selection_property atom.
7130
7131         * gdk/linux-fb/gdkprivate-fb.h:
7132         Export _gdk_selection_window_destroyed.
7133         Removed mask_off_x/y from GdkCursorPrivateFB.
7134         Removed hbearing, added top, left to PangoFBGlyphInfo.
7135
7136         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7137         Call _gdk_selection_window_destroyed
7138         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
7139         the root window has been created.
7140         (static_dx_hack, static_dy_hack, compare_draw_rects,
7141         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
7142         in region. They are already sorted. Instead just traverse them in
7143         reverse if draw_direction < 0.
7144         
7145         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7146         Double-clicks must be sent after the normal button_press.
7147         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
7148         
7149         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
7150         Pass _gdk_fb_screen_gc instead of NULL.
7151
7152         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
7153         Initialize gdk_selection_property.
7154         (gdk_event_make): Remove unused code.
7155
7156         * gdk/linux-fb/gdkcursor-fb.c:
7157         Make the pixmap for the cursor the same size as the mask. Also remove
7158         the mask_off_x/y fields in GdkCursorPrivateFB and combine
7159         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
7160         Now the whole cursor is visible.
7161
7162         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7163         Fix bug where xdest+height instead of ydest+height was used
7164         to calculate if the source and dest overlapped. This fixes the
7165         redraw bug when the main window in testgtk was scrolled when
7166         partially covered by a tall window.
7167         Copy rectangles in region in order depending on draw_direction.
7168         Also moved the draw_direction flipping of start_y and end_y into
7169         the gc functions, as this might not be what all of them want.
7170         (gdk_fb_draw_lines): Support dashed lines.
7171         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
7172         so that the text is positioned correctly (was 1 pixel high).
7173
7174         gdk/linux-fb/gdkgc-fb.c:
7175         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
7176         all lines were drawn a pixel to short. Also checked the default of
7177         the rest of the values, and they're the same as X now.
7178
7179         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
7180         Clean up pixel positioning of the glyphs. Just use bgy->top and
7181         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
7182         to all divisions to get correct rounding behaviour.
7183
7184         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
7185         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
7186         Moved start_y/end_y flip into draw_drawable implementations.
7187         Flip also x rendering when draw_direction < 0.
7188         Remove unneccesary multiply with draw_direction.
7189
7190 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
7191
7192         * docs/tutorial/gtk-tut.sgml:
7193           - get rid of gtk_toggle_button_toggled FUD
7194           - start DND section - needs work - based on:
7195                 http://wolfpack.twu.net/docs/gtkdnd/
7196
7197 2000-11-22  Alexander Larsson  <alexl@redhat.com>
7198
7199         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7200         Correct calculation of font metrics. Now GtkEntrys have sane
7201         size.
7202
7203 2000-11-22  Alexander Larsson  <alexl@redhat.com>
7204
7205         * gdk/gdktypes.h:
7206         Add new type GdkSpan
7207         
7208         * docs/reference/gdk/gdk-sections.txt,
7209         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
7210         gdk/gdkregion.h:
7211         Implement and document gdk_region_spans_intersect_foreach.
7212
7213         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
7214         Add new file gdkrender-fb.c which contains all core
7215         rendering code.
7216         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
7217         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
7218         (optimized rectangle fillers).
7219
7220         * gdk/linux-fb/gdkdrawable-fb2.c:
7221         Move all rendering code to gdkrender-fb.c.
7222         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
7223         Use the new span intersection functions in gdk_fb_fill_spans.
7224         gdk_fb_draw_rectangle() clips filled rectangles and calls
7225         gc->fill_rectangle with the result.
7226         gdk_fb_fill_spans() gets extra argument "sorted".
7227
7228         * gdk/linux-fb/gdkevents-fb.c:
7229         Remove unused includes and defines.
7230         New function gdk_fb_get_time() to get correct time for events.
7231
7232         * gdk/linux-fb/gdkinput-ps2.c:
7233         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
7234         Make sure to set the time of all events.
7235
7236         * gdk/linux-fb/gdkmain-fb.c:
7237         Use gdk_fb_get_time ().
7238
7239         * gdk/linux-fb/gdkprivate-fb.h:
7240         New virtual GC calls: fill_span & fill_rectangle.
7241         Export gdk_fb_get_time().
7242         gdk_fb_fill_spans() gets extra argument "sorted".
7243
7244         * gdk/linux-fb/mi*.c:
7245         Use GdkSpan instead of GdkRectangle.
7246         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
7247         from XFree 4 source)
7248         
7249 2000-11-22    <jrb@redhat.com>
7250
7251         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
7252         reversing the order in an if statement will do.  Doing so managed
7253         to make the treemodelsort half work.  Other half will follow after
7254         I get the insert function fully fixed.
7255
7256 2000-11-21  Elliot Lee  <sopwith@redhat.com>
7257         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
7258         more than 2 bits. Besides, I need to implement an evil hack. :)
7259
7260 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
7261
7262         * docs/tutorial/gtk-tut.sgml: minor corrections
7263
7264 2000-11-20  Jonathan Blandford <jrb@redhat.com>
7265         * gtk/gtktreemodelsort.h: Add convertion functions to let you
7266           convert to and from relative path's and iters.
7267
7268         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
7269           testing sorting functions a bit better.  Currently broken -- will
7270           fix in morning.
7271
7272 2000-11-20  Havoc Pennington  <hp@redhat.com>
7273
7274         * gtk/gtkwidget.c: Documented a bunch of functions in here
7275         (gtk_widget_realize): Warn if you try to realize
7276         a widget with no parent that isn't a toplevel
7277         (gtk_widget_intersect): return a gboolean
7278
7279 2000-11-20  Havoc Pennington  <hp@redhat.com>
7280
7281         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
7282         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
7283         scrolling to be implemented in GDK to finish. Also, right now
7284         we just size_allocate all children on every layout change,
7285         which is pretty lame. Test commented out of testtext.c, 
7286         until it works better.
7287
7288 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
7289
7290         * gdk/linux-fb/gdkdrawable-fb2.c:
7291         Removed unused arguments from gdk_fb_drawable_get_pixel().
7292
7293         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
7294         Renamed fidur specific mouse packet data in MouseDevice to
7295         generic. Used it in ps2 mouse handling code to avoid blocking
7296         reads.
7297
7298 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
7299
7300         * demos/gtk-demo/main.c: Changed to have the list become
7301         non-italic when the demo window is destroyed through an external
7302         event (like a close button).  Doing so found three bugs in the
7303         widget.
7304
7305         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
7306
7307         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
7308         we actually set the cell.
7309
7310         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
7311
7312         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
7313         free a leaked path.  Thanks memprof.
7314
7315 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
7316
7317         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
7318         off-by-one error when destroying allocated segments
7319         on failure. (Elliot)
7320
7321 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
7322
7323         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
7324         memleaks found by Evan Martin.
7325
7326 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
7327
7328         * Released 1.3.2
7329         
7330         * NEWS: Updates for 1.3.2
7331
7332 2000-11-17  Tor Lillqvist  <tml@iki.fi>
7333
7334         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
7335         but in general for window system specific events.
7336
7337         * gtk/gtk.def
7338         * gtk/makefile.mingw.in
7339         * gtk/makefile.msc.in: Update.
7340         
7341         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
7342
7343 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
7344
7345         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
7346         distribute gtk.immodules.
7347
7348         * gtk/Makefile.am (install-data-local): Don't install the
7349         gtk.immodules file created for the uninstalled modules;
7350         instead run gtk-query-immodules after install
7351
7352 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
7353
7354         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
7355         -rpath to the right install location.
7356
7357         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
7358         -export-dynamic.
7359
7360         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
7361         properly.
7362
7363 2000-11-15  Havoc Pennington  <hp@pobox.com>
7364
7365         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
7366         patch from Mikael Hermansson to temporarily stop blinking while
7367         the user is using the keyboard to type or navigate. 
7368
7369         Also, when blinking, stay on for longer than we stay off. Also,
7370         return from start_cursor_blink if !cursor_visible, to save
7371         checking that flag all over the place before we call
7372         start_cursor_blink.
7373
7374 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
7375
7376         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
7377         only contain a "fontset" line, which is now ignored.
7378
7379         * gtk/gtkentry.c (gtk_entry_button_release): Make 
7380         double-click-to-select-word work.
7381         
7382 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
7383
7384         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
7385         Don't move back one char when we are actually at the end of the 
7386         paragraph.
7387
7388 2000-11-15  Robert Brady  <robert@suse.co.uk>
7389
7390         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
7391         'o' < 'p'.
7392         
7393         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
7394         bind_textdomain_codeset.
7395
7396         (gtk_init_check): Make the warning about translating default:LTR
7397         sterner.
7398         
7399 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
7400
7401         * **/Makefile.am : remove unecessary rules for win32-specific
7402         config-substituted targets. If you want these rules, use
7403         --enable-maintainer-mode (called automatically by autogen.sh).
7404         Stops a lot of unneccessary make-time warnings.
7405
7406         * gtk/gtktext{layout,display}.c: Factor in total width as
7407         well as screen when figuring alignment for word-wrap as well as
7408         no wrap; this is necessary to handle lines that cannot be wrapped
7409         at all.
7410
7411 2000-11-15  Havoc Pennington  <hp@redhat.com>
7412
7413         * gtk/testtext.c: Implement essential color cycling feature
7414
7415 2000-11-15  Havoc Pennington  <hp@redhat.com>
7416
7417         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
7418         when we invalidate the main window.
7419
7420         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
7421         GtkTextView will now invalidate the side windows for us when text
7422         changes.
7423
7424 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
7425
7426         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
7427         unconditionally, since we may need to update the horizontal
7428         scrollbars even if the height didn't change.
7429
7430         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
7431         the extra attrs, since some of them affect size.
7432
7433         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
7434         x_offset correctly.
7435
7436 2000-11-15  Havoc Pennington  <hp@redhat.com>
7437
7438         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
7439         don't move the first line out into the margin, instead move the
7440         whole paragraph in order to make space for the first line within 
7441         the margin
7442
7443 2000-11-15  Havoc Pennington  <hp@redhat.com>
7444
7445         * gtk/gtktextview.c (changed_handler): offset redraw rect by
7446         xoffset in addition to yoffset, so horizontal scrolling doesn't
7447         break redraws
7448
7449 2000-11-15  Havoc Pennington  <hp@redhat.com>
7450
7451         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
7452         from the cursor
7453         (render_layout_line): fix reversed test that caused weird
7454         underlines to get drawn
7455
7456 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
7457
7458         * gdk/linux-fb/gdkprivate-fb.h:
7459         Fix debug macros.
7460         
7461 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
7462
7463         * gdk/linux-fb/gdkprivate-fb.h:
7464         Added virtual functions set_pixel, get_color,
7465         fill_span and draw_drawable to the GC.
7466         Added global _gdk_fb_screen_gc to use instead of
7467         NULL when drawing to the screen.
7468         Added _gdk_fb_gc_calc_state() prototype.
7469
7470         * gdk/linux-fb/gdkgc-fb.c:
7471         Call _gdk_fb_gc_calc_state() on any gc state change.
7472
7473         * gdk/linux-fb/gdkglobals-fb.c:
7474         Add _gdk_fb_screen_gc
7475                 
7476         * gdk/linux-fb/gdkdrawable-fb2.c:
7477         _gdk_fb_gc_calc_state() calculates best functions
7478         for the GC state and depth.
7479         Moved bpp specialized code to separate functions.
7480         Added optimized 24 bpp AA draw_drawable.
7481
7482         * gdk/linux-fb/gdkevents-fb.c:
7483         Silence gcc warning.
7484
7485         * gdk/linux-fb/gdkimage-fb.c:
7486         Use _gdk_fb_screen_gc
7487
7488         * gdk/linux-fb/gdkwindow-fb.c:
7489         Init and use _gdk_fb_screen_gc
7490
7491         * gdk/linux-fb/mitypes.h:
7492         Remove unused types.
7493
7494 2000-11-14  Havoc Pennington  <hp@pobox.com>
7495
7496         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
7497         to pixels
7498
7499 2000-11-14  Havoc Pennington  <hp@pobox.com>
7500
7501         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
7502
7503         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
7504         unknown char, no real reason we were using a variable. 
7505         Remove gtk_text_unknown_char variable. Fix all the text widget
7506         files accordingly.
7507
7508         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
7509         since the Unicode spec seems to prefer that character for our
7510         purposes.
7511
7512 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
7513
7514         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
7515         value of g_getenv() isn't freeable, so g_strdup it.
7516
7517         * modules/input/inuktitut.c: Inuktitut input method.
7518
7519         * modules/input/Makefile.am: Build this.
7520         
7521 2000-11-14  Elliot Lee  <sopwith@redhat.com>
7522
7523         * gtk/Makefile.am: Install gtk.immodules, needed for operation
7524         of gtk programs.
7525
7526 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
7527
7528         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
7529         reversed > that was causing Home to go to end of previous line.
7530
7531         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
7532         modified-keypresses (leave for bindings.)
7533
7534         * modules/input/Makefile.am: Remove useless -export-dynamic
7535         from module LDFLAGS.
7536
7537 2000-11-14  Havoc Pennington  <hp@redhat.com>
7538
7539         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
7540         higher.
7541
7542         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
7543         account. Also, render rise, underline, background, etc. for
7544         pixbufs as well as text. Also, draw underlines one pixel higher.
7545
7546         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
7547         PangoAttribute for the rise, so it gets drawn properly. Also,
7548         add the GtkTextAppearance attribute for pixbuf/widget segments
7549         as well; we should go ahead and have rise, underline, background,
7550         stipple work for those
7551
7552         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
7553         Pango
7554
7555 2000-11-15  Tor Lillqvist  <tml@iki.fi>
7556
7557         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
7558
7559         * gtk/gtk.def: Update.
7560
7561         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
7562         included.
7563         (gtk_rc_get_im_module_file): Use run-time installation directory
7564         on Win32.
7565
7566         * gdk/win32/rc/gdk.rc: Remove.
7567         * gdk/win32/rc/gdk.rc.in: New file.
7568         * gdk/win32/rc/Makefile.am: New file
7569         * gdk/win32/Makefile.am: Corresponding changes.
7570
7571         * gtk/gtk.rc: Remove.
7572         * gtk/gtk-win32.rc.in: New file.
7573         * gtk/Makefile.am: Corresponding changes.
7574
7575         * configure.in: Corresponding changes.
7576
7577         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
7578         has a built gtkcompat.h. Developers using CVS code on Win32 can
7579         hand-edit it from gtkcompat.h.in.
7580
7581         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
7582         gtkcompat.h from gtkcompat.h.win32.
7583
7584 2000-11-14  Havoc Pennington  <hp@redhat.com>
7585
7586         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
7587         to default to GDK_ACTION_MOVE if the drag is within a single
7588         widget. Defaults to GDK_ACTION_COPY between widgets.
7589
7590 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
7591
7592         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
7593
7594         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
7595
7596         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
7597         srcdir != builddir
7598
7599         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
7600
7601         * configure.in (GTK_VERSION): Up to 1.3.2
7602
7603         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
7604         gtkimcontextxim.h
7605
7606         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
7607         missing doc comment.
7608
7609 2000-11-14  Alexander Larsson  <alexl@redhat.com>
7610
7611         * modules/linux-fb/basic.c:
7612         Use the glib iconv wrappers.
7613
7614 2000-11-13  Havoc Pennington  <hp@pobox.com>
7615
7616         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
7617         still more bugs.
7618
7619         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
7620         scroll the GdkWindows before realization.
7621
7622 2000-11-13  Havoc Pennington  <hp@redhat.com>
7623
7624         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
7625         where GC didn't always get updated properly
7626
7627         * demos/gtk-demo/textview.c (create_tags): Use subattributes
7628         of fonts instead of setting the entire font
7629
7630         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
7631         setting entire font
7632
7633         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
7634
7635         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
7636         a bunch of individually-settable font attributes. You can still 
7637         use the "font" and "font_desc" args, they just set all the font
7638         attributes at once.
7639
7640 2000-11-13 Elliot Lee <sopwith@redhat.com>
7641
7642         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
7643
7644 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
7645
7646         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
7647         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
7648
7649         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
7650         work better.
7651
7652 2000-11-13  Havoc Pennington  <hp@redhat.com>
7653
7654         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
7655         the module file.
7656
7657         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
7658         dest->language
7659
7660         * gtk/testtext.c: Test pixels above/below/inside paragraphs
7661         settings
7662
7663         * gtk/gtktextview.c: Implement object args and setters/getters for
7664         all the aspects of the GtkTextAttributes that are not set from
7665         GtkWidget attributes. This is spacing, justification, margins,
7666         etc.
7667
7668         (gtk_text_view_set_arg)
7669         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
7670         args
7671         (gtk_text_view_class_init): Add args for justify, left_margin,
7672         right_margin, indent, and tabs
7673         
7674
7675         * gtk/gtktextlayout.c (set_para_values): fix to display indent
7676         attribute properly
7677
7678         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
7679         replace with indent attribute
7680
7681         * gtk/gtktextlayout.c (set_para_values): multiply indent by
7682         PANGO_SCALE
7683
7684         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
7685         rearranging code to do that
7686         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
7687         i.e. don't subtract the top_margin first, just to keep
7688         all margin-futzing in one place.
7689
7690         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
7691
7692         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
7693         special case of last line, Pango now handles this itself.
7694         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
7695         Y coordinate
7696         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
7697         (find_display_line_above): wasn't moving the byte index as it
7698         iterated over lines, so always returned byte 0. Also, port to use
7699         PangoLayoutIter.
7700         (find_display_line_below): same problem as
7701         find_display_line_above. Also, port to use PangoLayoutIter.
7702
7703 2000-11-13  Alexander Larsson  <alexl@redhat.com>
7704
7705         * gdk/linux-fb/*.[ch]:
7706         Massive reindent to gtk+ standard. My hands hurt.
7707
7708         * gdk/linux-fb/gdkcolor-fb.c:
7709         Move GdkColorPrivateFB from inherited to windowing_data
7710
7711         * gdk/linux-fb/gdkcursor-fb.c:
7712         _gdk_cursor_new_from_pixmap made static
7713
7714         * gdk/linux-fb/gdkdnd-fb.c:
7715         GdkDragContextPrivate moved to windowing_data
7716
7717         * gdk/linux-fb/gdkdrawable-fb2.c:
7718         Removed endian.h, use glib endianness macros instead
7719         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
7720         and GDK_DRAWABLE_IMPL_FBDATA
7721
7722         * gdk/linux-fb/gdkfont-fb.c:
7723         Add empty gdk_font_load(). Needed for linking of Gtk+.
7724
7725         * gdk/linux-fb/gdkimage-fb.c:
7726         Removed endian.h, use glib endianness macros instead
7727         Moved GdkImagePrivateFB to windowing_data
7728         gdk_image_new_bitmap didn't always allocate enough
7729         memory.
7730
7731         * gdk/linux-fb/gdkinput-ps2.c:
7732         Added semi-working support for MS serial mice.
7733
7734         * gdk/linux-fb/gdkprivate-fb.h:
7735         s/GdkWindowPrivate/GdkWindowObject/
7736         Removed GdkWindowPrivate typedef
7737         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
7738         Removed GDK_DRAWABLE_P
7739         Move GdkColorPrivateFB from inherited to windowing_data
7740         Moved GdkImagePrivateFB to windowing_data
7741
7742         * gdk/linux-fb/gdkvisual-fb.c:
7743         Removed some unused debug code.
7744
7745         * gdk/linux-fb/gdkwindow-fb.c:
7746         Use stock cursors instead of including X headers.
7747         s/GdkWindowPrivate/GdkWindowObject/
7748
7749         * gdk/linux-fb/mitypes.h:
7750         Removed unused types.
7751
7752         * modules/linux-fb/basic.c:
7753         Use the pango fribidi wrappers.
7754
7755 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
7756
7757         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
7758         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
7759         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
7760         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
7761         GEqualFunc where applicable.
7762         
7763         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
7764         pango_font_description_equal as changed in pango.
7765         
7766         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
7767
7768         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
7769
7770         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
7771
7772         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
7773
7774         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
7775
7776         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
7777
7778         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
7779         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
7780
7781         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
7782         gtk_rc_styles_compare -> gtk_rc_styles_equal.
7783
7784 2000-11-12  Havoc Pennington  <hp@pobox.com>
7785
7786         * demos/gtk-demo/Makefile.am (democodedir): change demo install
7787         dir to datadir/gtk+-2.0/demo
7788
7789         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
7790         sorts of text widget and Pango font bugs. Urgh.
7791
7792         * demos/gtk-demo/Makefile.am (demos): Add textview.c
7793
7794         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
7795         tree that you should double click to see the demo. Fix 
7796         types of variables to reflect changed return values from 
7797         GtkTreeStore and GtkTreeViewColumn constructors.
7798
7799         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
7800         newly-created buffer to prepare for GObject semantics
7801
7802         * gtk/testtext.c: don't leak the buffer with GObject semantics
7803
7804         * gtk/testtextbuffer.c: ditto
7805         
7806 2000-11-12  Havoc Pennington  <hp@pobox.com>
7807
7808         Rename this testgtk to gtk-demo to avoid confusion, and 
7809         install it so people can use it as a supplement to 
7810         the documentation.
7811         
7812         * demos/gtk-demo: Moved from demos/testgtk
7813
7814         * demos/testgtk: Removed
7815
7816         * configure.in: make Makefile in gtk-demo
7817         
7818         * demos/gtk-demo/Makefile.am: Install sample source to 
7819         datadir/gtk-demo (maybe there's a better place?), and 
7820         rename the binary to gtk-demo
7821         
7822         * demos/gtk-demo/main.c (load_file): Load installed sample
7823         source if source isn't found in pwd.
7824
7825 2000-11-09  Havoc Pennington  <hp@pobox.com>
7826
7827         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
7828         argument to set the char displayed when visibility == FALSE
7829         (gtk_entry_create_layout): If !entry->visible, replace 
7830         all chars with the "invisible char"
7831
7832         * gtk/testgtk.c: Test the invisible_char deal
7833         
7834 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
7835
7836         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
7837         can't get a native font in the right encoding.
7838
7839 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
7840
7841         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
7842         respectively.
7843
7844 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
7845
7846         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
7847         Fix warning when moving between paragraphs.
7848
7849         * gtk/gtkentry.[ch]: Change move => move_cursor, 
7850         delete => delete_from_cursor, insert => insert_at_cursor
7851
7852 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
7853
7854         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
7855
7856         * modules/input/imthai-broken.c: A Thai input method for use if
7857         Thai keys are really generating Latin1 keysyms.
7858
7859         * modules/input/Makefile.am: Build these.
7860
7861 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
7862
7863         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
7864         g_filename_{to,from}_utf8 now takes an extra parameter.
7865
7866         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
7867         strftime into UTF-8.
7868
7869         (column_from_x, gtk_calendar_paint_day_names): Support RTL
7870         calendars.
7871
7872         (gtk_calendar_paint_day_names): Draw day names in the right 
7873         place.
7874         
7875 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
7876
7877         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
7878         problem with using result of g_get_charset() backwards -
7879         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
7880
7881         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
7882         negative min_width/height and max_width/height to
7883         mean "requisition"; this allows setting a window
7884         to be user-resizable in only one direction easily.
7885
7886         * gtk/testgtk.c (create_main_window): Remove hard-coded
7887         usize - set a default size in the vertical direction.
7888
7889 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
7890
7891         * gtk/gtkrange.c: Add some missing casts. Support 
7892         2 and 3 button clicks on the arrows to mean 
7893         "move by pages" and "jump to end". (Like gtkspinbutton)
7894
7895 2000-11-12 Hans Breuer <Hans@Breuer.Org>
7896
7897         * gdk/win32/makefile.msc : reflect build module changes
7898
7899         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
7900         from GdkPixmap*, cast implementation member instead.
7901
7902         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
7903         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
7904         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
7905         more Gdi functions return value checking. 
7906         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
7907         GdkImagePrivateWin32 *.
7908
7909         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
7910         menus useable again. Add #pragma message to keep reminded on this issue.
7911         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
7912         windows. This allows to enable backing store on Win32!
7913
7914         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
7915         in drawable is of impl type. Correct specific type checks appropriate.
7916  
7917         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
7918         GDK_WINDOW_DESTROYED before allocating new resources.
7919
7920         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
7921
7922         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
7923         (gdk_window_foreign_new) initialize parent handle.
7924         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
7925
7926         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
7927         Let the GDI invalidate the window on MoveWindow call to fix scrolling
7928         problems (e.g. main buttons in testgtk). 
7929
7930 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
7931
7932         * gtk/gtkentry.c (gtk_entry_key_press): Call 
7933         gtk_widget_activate for GDK_Return.
7934
7935         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
7936         of preedit cursor position.
7937
7938 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
7939
7940         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
7941         static.
7942
7943 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
7944
7945         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
7946         out support for multiple locales; that simple doesn't
7947         work reliably with current Xlib
7948
7949         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
7950         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
7951         Add support for positioning the cursor within the preedit string.
7952
7953 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
7954
7955         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
7956         at XIM input method module.
7957
7958         * gtk/gtktextview.c: Check for bindings after passing
7959         events to im context filter.
7960
7961 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
7962
7963         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
7964         empty attribute lists properly.
7965
7966 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
7967
7968         * gtk/queryimmodules.c (main): Return non-zero exit
7969         status if errors were encountered querying any
7970         modules.
7971
7972         * modules/input/Makefile.am (moduledir): remove
7973         leftover bin program target.
7974
7975         * docs/make-todo: Fix typo in error message.
7976
7977 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
7978
7979         * configure.in: Add modules/input/Makefile
7980
7981 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
7982
7983         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
7984         don't include gtkthemes.h.
7985
7986         * gtk/testgtk.c gtk/testtext.c: Set environment variables
7987         to point
7988
7989         * gtk/Makefile.am: Add new .c and .h files, build 
7990         gtk-query-immodules and use it to create a gtk.immodules
7991         file for use of test programs.
7992
7993         * gtk/gtkpreview.c: remove extra blank line.
7994
7995 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
7996
7997         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
7998         Add the ability to add extra tables beyond the default
7999         one, and also the ability to have compose sequences 
8000         that are prefixes of other compose sequences. 
8001
8002         * gtk/gtkimcontextsimple.c: Export a preedit string which
8003         consists of possible candidates for keystrokes that have
8004         been entered but not yet committed.
8005
8006         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
8007         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
8008
8009         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
8010         Add a function to add input-method switching menu items
8011         to a menu.
8012
8013         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
8014         when switching input methods.
8015
8016         * gtk/gtkimcontextsimple.[ch]: Change the format of
8017         the compose table to allow compose tables of different
8018         lengths / sequence.
8019
8020 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
8021
8022         * gtk/gtkimmodule.[ch]: Support routines for loading
8023         GtkIMContext implementations dynamically at runtime.
8024
8025         * modules/input/imcyrillic-translit.c: A sample input
8026         method (based on GtkIMContextSimple with an extra table),
8027         which demonstrates preedit strings and the module
8028         system for input modules
8029
8030         * gtk/queryimmodules.c: Program to query the available
8031         input modules and write the results into a file.
8032          
8033         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
8034         extra config options "im_module_file" (cache file for
8035         input method modules), and "im_module_path" - path
8036         to look for modules when generating cache file.
8037
8038         This doesn't scale.
8039
8040 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
8041
8042         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
8043         generic code from gtkthemes into a new abstraction
8044         GtkModule which has the logic for implementing
8045         a loadable module which implements a number of 
8046         GObject types.
8047
8048 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
8049
8050         * gtk/gtkeditable.[ch]: Convert GtkEditable from
8051         a class into an interface  
8052         
8053         * gtk/gtkoldeditable.[ch]: Move the old editable
8054         implementation into here, so legacy widgets can
8055         still rely on the implemenation. GtkOldEditable
8056         exports GtkEditable. Make selection handling
8057         code use new text conversion functions (and
8058         handle UTF-8 as a side-effect). Use GtkClipboard
8059         for CLIPBOARD.
8060
8061         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
8062         Adopt to match above changes.
8063
8064         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
8065         avoid GtkOldEditable implementation. Restructure
8066         to reduce number of places that modify state directly.
8067         Move to GtkBindingSet. Display the preedit string.
8068         Queue recomputation of PangoLayout and scroll position
8069         to improve effiency of doing complex changes naively.
8070         Add a menu with cut/copy/paste and input method selection.
8071
8072 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
8073
8074         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
8075         to set preedit string and attributes; display preedit string by
8076         inserting string and attributes at cursor when creating the
8077         GtkTextLineDisplay.
8078
8079         * gtk/gtktextlayout.c: Move all conversions between byte
8080         positions in PangoLayout and GtkTextIter into new functions
8081         line_display_iter_to_index/index_to_iter that properly
8082         handle the preedit string.
8083
8084         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
8085         it to return const char * (eventually will end up
8086         as GCONST char *, most likely.)
8087
8088         * gtk/gtktextview.[ch]: Handle the preedit string, call
8089         gtk_im_context_reset() as necessary, add a menu to switch
8090         input methods.
8091         
8092         * gtk/gtktextlayout.[ch]: Remove useless
8093         gtk_text_layout_get_log_attrs() function.
8094
8095 2000-11-11  Tor Lillqvist  <tml@iki.fi>
8096
8097         * gdk/gdk.def
8098         * gtk/gtk.def: Update.
8099
8100         * gdk/win32/*.c: Add last argument to g_type_register_static()
8101         calls.
8102
8103         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
8104
8105         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
8106         generated by older wheel mouse drivers. Get the correct y
8107         coordinate from WM_MOUSEWHEEL messages.
8108
8109         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
8110         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
8111         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
8112         Debugging functions.
8113
8114         * gdk/win32/gdkprivate-win32.h: Declare them.
8115
8116         * gdk/win32/gdkinput-win32.h: Add declaration for
8117         gdk_input_window_destroy().
8118
8119         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
8120
8121 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
8122
8123         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
8124         function to help handle keeping things in sync.
8125
8126 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
8127
8128         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
8129         BOXED marshallers.
8130
8131         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
8132         (gtk_list_store_class_init): use the new BOXED marshallers.
8133
8134         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
8135         new_with_values to new_with_types.
8136         (gtk_tree_store_get_column_type): add this.
8137         (gtk_tree_store_class_init): use the new BOXED marshallers.
8138
8139         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
8140         mirror some POINTER marshallers.
8141
8142 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
8143
8144         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
8145         allow more interesting iterators.  Also, made the lifecycle of
8146         iterators more explicit.
8147
8148         * gtk/gtktreemodelsort.[ch]: New model for sorting.
8149
8150         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
8151         types.
8152
8153 2000-11-09  Alexander Larsson  <alexl@redhat.com>
8154
8155         * demos/testgtk/menus.c:
8156         Changes to make the new testgtk compile after
8157         gtk_menu_append was removed.
8158
8159         * gdk/linux-fb/gdkdrawable-fb2.c
8160         (gdk_fb_get_depth, gdk_fb_get_visual,
8161         gdk_drawable_impl_fb_class_init): Implement
8162         these drawable functions. Now GtkImages work again.
8163
8164         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
8165
8166         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
8167         
8168         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
8169         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
8170         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
8171         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
8172
8173 2000-11-08  Havoc Pennington  <hp@pobox.com>
8174
8175         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
8176         visible_set args, don't know where these had gone, I thought they
8177         used to be there
8178
8179         * gtk/testtext.c: Add a menu item to apply invisibility tag;
8180         now we can test the feature and see that it's totally broken.
8181
8182 2000-11-08  Havoc Pennington  <hp@pobox.com>
8183
8184         Make DND copy pixbufs and tags when source and target share a 
8185         tag table.
8186         
8187         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
8188         in-process GTK_TEXT_BUFFER_CONTENTS target
8189         (gtk_text_view_drag_data_received): Paste from
8190         GTK_TEXT_BUFFER_CONTENTS if we receive it.
8191
8192 2000-11-08  Alexander Larsson  <alexl@redhat.com>
8193
8194         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
8195         API changes.
8196
8197         * gtk/gtkmenu.c: Add support for scrolling menus.
8198         Remove gtk_menu_append/prepend/insert, these have been moved to
8199         gtkcompat.h as #defines.
8200
8201         * gtk/gtkcompat.h.in:
8202         Add compatibility #defines for gtk_menu_append/prepend/insert
8203
8204         * gtk/gtkmenu.h: Add data needed for scrolling menus.
8205         GtkMenuPositionFunc gets an extra argument push_in.
8206         gtk_menu_append/prepend/insert removed.
8207         
8208         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
8209         positioning behaviour to fit to scrolling menus.
8210
8211         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
8212         into menuitem->submeny. That is wrong, and broke torn
8213         off submenus of torn off menus, since they were unrealized
8214         when the first menu was unrealized.
8215
8216         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
8217         gtk_menu_shell_select_item() since these need to be overridden in
8218         GtkMenu.
8219
8220         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
8221         positioning behaviour to fit to scrolling menus.
8222         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
8223         the current item so that it is prelighted when the menu pops up.
8224         This is a workaround to the fact that the menu doesn't get the
8225         initial enter event (due to grabs).
8226
8227         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
8228         s/gtk_menu_append/gtk_menu_shell_append/
8229
8230         * gtk/gtknotebook.c:
8231         s/gtk_menu_insert/gtk_menu_shell_insert/
8232
8233         * gtk/testgtk.c (create_menu, create_menus):
8234         Create the first menu with 50 items so that menu scrolling
8235         can be tested.
8236         
8237         
8238         Patch from Jonathan Blandford  <jrb@redhat.com>
8239
8240         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
8241         system to handle size requests.  First, we ask what the size of
8242         the toggle is.  Then, when allocating the size, we allocate the
8243         toggle_size first.  This way we can have multiple menu-item
8244         classes w/o needing a seperate class for each.
8245
8246         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
8247         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
8248
8249         * gtk/gtkcheckmenuitem.c
8250         (gtk_check_menu_item_toggle_size_request): New function to handle
8251         the toggle size-request.
8252
8253 2000-11-07  Havoc Pennington  <hp@redhat.com>
8254
8255         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
8256         Half-ass somewhat fix this function, so that scrolling to the
8257         insertion point works. Pango hacking is in the future to really
8258         fix it.
8259
8260         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
8261         length of data, no longer used.
8262
8263         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
8264         method contents in here, get rid of destroy method
8265         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
8266         that were backward. Remove debug spew.
8267         (cut_or_copy): Make the clipboard work with insert_range to
8268         preserve tags and pixbufs, not just the primary selection.
8269
8270 2000-11-07  Havoc Pennington  <hp@redhat.com>
8271
8272         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
8273         to gtk_text_mark_get_visible
8274
8275         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
8276         bug that was generating an invalid iterator
8277
8278         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
8279         ensure_char_offsets() in front of code placing the iter in an
8280         invalid state.
8281
8282         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
8283         make override_location arg const
8284         (paste): Replace the selection if we paste into the 
8285         current selection
8286
8287         * gtk/gtkselection.h: Remove "GtkSelectioData"
8288         (struct _GtkSelectionData): move the definition here.
8289
8290         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
8291         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
8292
8293         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
8294
8295         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
8296         (gtk_text_buffer_insert_range_interactive): implement
8297         (gtk_text_buffer_get_tags): Remove, replaced by
8298         gtk_text_iter_get_tags()
8299
8300         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
8301         limit parameter, to avoid infinite linear scan.
8302         (gtk_text_iter_backward_search): Add search limit
8303         (gtk_text_iter_forward_find_char): Add search limit
8304         (gtk_text_iter_backward_find_char): Add search limit
8305
8306 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
8307
8308         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
8309         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
8310         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
8311         gdk/linux-fb/gdkwindow-fb.c:
8312         use g_object_new() instead of g_type_create_instance() which
8313         is a private function for fundamental type implementations.
8314
8315         * gdk/linux-fb/gdkinput-ps2.c:
8316         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
8317         instead just store the current modifier state. Add a (somewhat broken)
8318         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
8319         Rename exported function gdk_input_ps2_get_mouseinfo to
8320         gdk_input_get_mouseinfo.
8321
8322         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
8323         gdk/linux-fb/gdkwindow-fb.c:
8324         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
8325         
8326
8327 2000-11-02  Havoc Pennington  <hp@redhat.com>
8328
8329         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
8330         use stock buttons. Should be 100% source compatible, appropriate
8331         filesel fields now point to dialog->vbox and dialog->action_area.
8332         On the bizarre side, dialog->action_area and filesel->action_area
8333         are not the same widget.
8334         (gtk_file_selection_init): Put some padding around the selection
8335         entry, so it isn't touching the GtkDialog separator.    
8336
8337         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
8338         use stock buttons, etc. Should also be source compatible.
8339         Set the dialog default title in _init not _new().
8340         
8341         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
8342         Use stock buttons; don't put a button box inside the existing
8343         dialog button box. Don't bother with push/pop colormap anymore.
8344
8345         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
8346         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
8347         for message dialog, and necessary for the font selection and color
8348         selection with help and apply buttons.
8349         
8350         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
8351         to the created button widget. Set GTK_CAN_DEFAULT on the button.
8352         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
8353         between buttons, put less padding around the action area.
8354         (gtk_dialog_run): Exit on unmap rather than on destroy. 
8355         This will also exit the loop if the widget is hidden.
8356         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
8357         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
8358         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
8359         special-case delete event.
8360
8361         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
8362         formatting
8363         
8364 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
8365
8366         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
8367         button to temporarily disable position recording in the
8368         "saved position" test.
8369
8370 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
8371
8372         * gtk/gtkthemes.c: added compat code that temporarily implements
8373         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
8374         going to be revamped by owen's upcoming GtkModule patches, but
8375         untill then people want gtk to build, right? ;)
8376
8377 2000-11-04  Havoc Pennington  <hp@pobox.com>
8378
8379         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
8380         list
8381
8382         * docs/Changes-2.0.txt: Add note about
8383         gtk_container_get_toplevels()
8384
8385         * gtk/gtktextview.h: formatting
8386         
8387         * gtk/gtktextview.c: don't start descriptions with "Returns",
8388         confuses gtk-doc
8389
8390 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
8391
8392         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
8393         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
8394
8395 2000-11-03  Havoc Pennington  <hp@redhat.com>
8396
8397         * gtk/gtktexttagtable.c: Docs
8398         (gtk_text_tag_table_size): return a signed int
8399
8400         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
8401         (gtk_text_tag_event): make the event_object a GObject
8402
8403         * gtk/gtktextview.c: Write API docs for all functions.
8404
8405         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
8406         for gtk_text_view_get_window_type() called on one of the private
8407         windows.
8408
8409         * gtk/gtktextview.c: Instead of accessing text_view->buffer
8410         directly, call get_buffer() which demand-creates a default
8411         buffer. So gtk_text_view_new() can be used to create a view with a
8412         default buffer in it, if you just want an empty text box users can
8413         put data in. Useful for GUI builders also.
8414
8415 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
8416
8417         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
8418         the charset encodign portion MUST be in lowercase.
8419         * gtk/gtkrc.az: added file for Azeri language
8420
8421 2000-11-03  Havoc Pennington  <hp@redhat.com>
8422
8423         Get widgets working on the btree/buffer side. Display of them 
8424         still doesn't work.
8425         
8426         * gtk/gtktextview.c: start implementing child widget stuff
8427
8428         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
8429
8430         * gtk/gtktextlayout.c: handle embedded widgets
8431
8432         * gtk/gtktextdisplay.c: handle embedded widgets
8433
8434         * gtk/gtktextchild.c: Implement all the child anchor goo
8435
8436         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
8437         function
8438
8439         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
8440         (insert_pixbuf_or_widget_segment): abstract out common portions of 
8441         creating a child anchor or a pixbuf segment.
8442         (gtk_text_btree_create_child_anchor): new function
8443         (gtk_text_btree_unregister_child_anchor): new function
8444
8445         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
8446         allocate_child signal on GtkTextLayout
8447
8448         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
8449         values
8450         (gtk_text_iter_get_child_anchor): new function
8451
8452         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
8453         default handler for the changed signal, which calls
8454         gtk_text_buffer_set_modified(), instead of just always emitting
8455         changed then calling set_modified() manually. I guess this is
8456         maybe more flexible. It seems logical.
8457
8458 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
8459
8460         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
8461         now.
8462
8463         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
8464
8465 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
8466
8467         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
8468         been marked static.
8469
8470 2000-11-02  Havoc Pennington  <hp@redhat.com>
8471
8472         * gtk/testgtk.c (create_labels): had a test backward
8473
8474         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
8475         fields, so the dest GC ends up with the correct clip origin, 
8476         etc. Fixes a bug where colored labels didn't redraw 
8477         properly.
8478
8479 2000-11-02  Alexander Larsson  <alexl@redhat.com>
8480
8481         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
8482         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
8483         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
8484         Add last argument to t_type_register_static call.
8485         
8486         * gdk/linux-fb/gdkdrawable-fb2.c:
8487         Add last argument to t_type_register_static call.
8488         export the get_image drawable virtual function.
8489
8490         * gdk/linux-fb/gdkimage-fb.c:
8491         Add last argument to t_type_register_static call.
8492         rename gtk_image_get to _gdk_fb_get_image and
8493         export it for use by gdkdrawable-fb2.
8494
8495         * gdk/linux-fb/gdkprivate-fb.h:
8496         export _gdk_fb_get_image.
8497
8498         * gdk/linux-fb/gdkselection-fb.c:
8499         Add new api call stubs.
8500
8501         * gtk/Makefile.am:
8502         Missing ( in linux-fb part.
8503
8504         * modules/linux-fb/Makefile.am:
8505         Must link with gdk_pixbuf or get unresolved symbol.
8506
8507 2000-11-01  Havoc Pennington  <hp@pobox.com>
8508
8509         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
8510         GTK_TYPE_TEXT_ITER and BOXED marshallers
8511
8512         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
8513
8514         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
8515         
8516         * gtk/gtk-boxed.defs: add GtkTextIter
8517
8518         * gtk/gtkmarshal.list: Add marshallers for text widget that 
8519         properly use OBJECT and BOXED
8520
8521 2000-11-01  Havoc Pennington  <hp@redhat.com>
8522
8523         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
8524
8525         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
8526         before returning it. 
8527         
8528 2000-11-01  Havoc Pennington  <hp@redhat.com>
8529
8530         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
8531         Clip the rectangle to be rendered to the drawable, since
8532         get_from_drawable() requires a region within the drawable
8533
8534 2000-11-01  Havoc Pennington  <hp@redhat.com>
8535
8536         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
8537         from coordinates.
8538
8539 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
8540
8541         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
8542         it isn't NULL.
8543
8544 2000-11-01  Havoc Pennington  <hp@pobox.com>
8545
8546         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
8547         on a label
8548         (gtk_label_finalize): unref the attr list if any.
8549
8550         * gtk/testgtk.c (create_get_image): close test on second click
8551         (make_message_dialog): close dialog if it exists
8552
8553         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
8554
8555         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
8556         gdk-pixbuf
8557
8558         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
8559         from Pango markup format
8560         (gtk_label_set_markup_with_accel): ditto but with accelerator
8561         parsing
8562
8563         * gtk/gtkimage.c (gtk_image_expose): reformatting.
8564
8565         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
8566         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
8567         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
8568         call gdk_window_get_origin().
8569
8570         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
8571         implement GDK_PIXBUF_ALPHA_FULL
8572         
8573 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
8574
8575         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
8576         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
8577         g_signal_handlers_disconnect_matched to block/unblock and disconnect
8578         multiple handlers respectively, instead of only treating the
8579         first handler found (bug reported by owen).
8580
8581 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
8582
8583         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
8584
8585         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
8586
8587         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
8588         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
8589         gtk/gtktreeviewcolumn.h: Fixed inline docs.
8590
8591         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
8592         widget.  Needs writing someday.
8593
8594         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
8595         the docs.
8596
8597 2000-10-30  Havoc Pennington  <hp@redhat.com>
8598
8599         * gtk/gtktextview.h, gtk/gtktextview.c:
8600         Rename delete_at_cursor delete_from_cursor, and 
8601         move to move_cursor.
8602
8603 2000-10-30  Havoc Pennington  <hp@redhat.com>
8604
8605         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
8606         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
8607         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
8608         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
8609         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
8610         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
8611         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
8612         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
8613         gtktexttypes.h, gtktextview.c, gtktextview.h:
8614
8615         Massive reindentation and reformatting. Arg alignment and comments
8616         still need fixing in various places.
8617
8618 2000-10-30  Havoc Pennington  <hp@redhat.com>
8619
8620         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
8621         to be named insert_at_cursor and delete_at_cursor so C++ can
8622         handle them.
8623
8624 2000-10-28  Tor Lillqvist  <tml@iki.fi>
8625
8626         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
8627         to get a double directory separator in case the home directory
8628         ends with one. This would cause trouble especially on Windows,
8629         where the path will be confused with the syntax for an an UNC
8630         (network share) path \\server\share\path.
8631         (gtk_rc_add_initial_default_files): Ditto.
8632
8633 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
8634
8635         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
8636
8637         * gtk/gtktextview.c: Use correct marshallers.
8638
8639 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
8640
8641         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
8642         use new iter stuff, and added all the appropriate signals et al.
8643
8644         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
8645         code is internal to gtk only.
8646
8647 2000-10-28  Tor Lillqvist  <tml@iki.fi>
8648
8649         * gtk/gtk.def
8650         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
8651         glib-genmarshal etc.
8652
8653 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
8654
8655         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
8656         parallel builds.
8657
8658 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
8659
8660         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
8661
8662 2000-10-27  Robert Brady  <robert@suse.co.uk>
8663
8664         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
8665         en_GB (British), ia (Interlingua).
8666
8667 2000-10-26  Havoc Pennington  <hp@redhat.com>
8668
8669         * gtk/gtktextiter.c (my_strrstr): fix constness warning
8670
8671         Fixed output of:
8672         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
8673         
8674         * gtk/gtktextsegment.c (char_segment_new): rename
8675         (_char_segment_new_from_two_strings): rename
8676         (_toggle_segment_new): rename
8677         
8678         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
8679         (make_clipboard_widget): make it static
8680         (text_get_func): static
8681         (text_clear_func): static
8682
8683         * gtk/gtkcolorsel.c (adjustment_changed): make this function
8684         static
8685         (hex_changed): make it static
8686         (hsv_changed): make it static
8687         (opacity_entry_changed): make it static
8688
8689         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
8690         (toggle_segment_check_func): rename with _gtk
8691
8692         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
8693         (_widget_segment_new): rename
8694         (_widget_segment_add): rename
8695         (_widget_segment_remove): rename
8696         (_widget_segment_ref): rename
8697         (_widget_segment_unref): rename
8698
8699         * gtk/gtktextmark.c (_mark_segment_new): Rename
8700         _gtk_mark_segment_new   
8701
8702 2000-10-26  Havoc Pennington  <hp@redhat.com>
8703
8704         * gtk/gtkmarshal.list: add new marshallers used by the text widget
8705         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
8706         types
8707
8708         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
8709         marshaller types
8710
8711         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
8712         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
8713         license on these files.
8714
8715         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
8716         work.
8717
8718         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
8719         runtime random number different for each tree, instead of 
8720         a constant I made up.
8721
8722 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
8723
8724         * gtk/Makefile.am: buncha cleanups, kludged build sources
8725         dependencies with a Makefile: oldest-source-stamp dependancy
8726         for the moment. automake is really fighting us here, with
8727         intentionally not allowing user-defined rules or dependancies
8728         prior to it's -include $(DEP_FILES) statement. sucks rocks!
8729
8730         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
8731         to public headers. tehy have a comment stating that they are
8732         "semi-public" aren't included by gtk.h and if enums popup there,
8733         they can be /*< skip >*/-ed.
8734
8735         * gtk/gtktextlayout.h: 
8736         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
8737         added LGPL... <SIGH>
8738
8739 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
8740
8741         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
8742         GtkTreeIter.  Added iterators everywhere.
8743
8744         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
8745
8746         * gtk/gtktreeviewselection.c: Changed to use the iterators.
8747
8748         * gtk/gtktreestore.c: Changed to use the iterators.
8749
8750         * gtk/gtkliststore.c: Commented out the code.  Will convert to
8751         iterators tomorrow.
8752
8753         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
8754         iterators tomorrow.
8755
8756         * gtk/treestoretest.c: Changed to use iterators.
8757
8758         * demos/testgtk/main.c: Moved to use the new iterator system.
8759
8760 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
8761
8762         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
8763         localization misbehaviour.
8764
8765         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
8766         a useless type without copy/free.
8767
8768         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
8769         of GTK_TYPE_CTREE_NODE.
8770
8771 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
8772
8773         * gtk/gtksignal.c:
8774         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
8775         applicable.
8776
8777         * gtk/gtk-boxed.defs (GtkSelectionData): specify
8778         gtk_selection_data_copy and gtk_selection_data_free
8779         do GtkSelectionData work as params in signals.
8780
8781 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
8782
8783         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
8784         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
8785         couldn't they at least give it a non-standard name?
8786         
8787         * gtk/gtktextlayout.c: arg! yet another implementation of
8788         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
8789
8790         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
8791         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
8792         home. now i know this _is_ a conspiracy.
8793
8794         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
8795         ::state-changed.
8796
8797         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
8798         (gtk_accel_group_create_add): marshaller signature fixups.
8799
8800         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
8801         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
8802
8803         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
8804         anymore.
8805
8806 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
8807
8808         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
8809         due to the signal system changes, it wouldn't build currently. to
8810         be fixed soon.
8811
8812         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
8813
8814         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
8815         so it needs gtk_marshal_VOID__ENUM() instead of
8816         gtk_marshal_NONE__UINT().
8817
8818         * gdk/gdk*.c: adapted type registration functions.
8819
8820         * gtk/gtkbindings.c:
8821         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
8822         gone.
8823
8824         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
8825
8826         * gtk/gtkobject.c:
8827         (gtk_object_destroy):
8828         (gtk_object_shutdown): fixed recursion guards. basically we have to
8829         catch the case where any of GObject.shutdown() or gtk_object_destroy()
8830         is called during ::destroy, and avoid recursion there.
8831
8832         * gtk/gtktypeutils.c:
8833         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
8834         boxed_copy/boxed_free. this needs a more general solution based on a
8835         publically installed code-generator utility.
8836
8837         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
8838         glib's gobject has support for that now.
8839         define GtkSignalMarshaller in terms of GSignalCMarshaller.
8840
8841 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
8842
8843         * gtk/gtksignal.[hc]:
8844         * gtk/gtkmarshal.[hc]:
8845         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
8846         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
8847         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
8848         care of that.
8849
8850         * *.c: marshaller name fixups.
8851
8852         * gtk/gtkmarshal.list: added a comment briefing the format.
8853
8854 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
8855
8856         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
8857         compatibility macros here now. more specifically, most of
8858         the API is preserved (yes, _most_, nonwithstanding the
8859         following exceptions listed, the API is stil lHUGE ;)
8860         things that got removed completely:
8861         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
8862         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
8863         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
8864         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
8865         gtk_signal_remove_emission_hook().
8866         non-functional functions variants:
8867         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
8868         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
8869         not supported anymore.
8870         (gtk_signal_compat_matched): new internal function to aid
8871         implementation of the compatibility macros, it  provides
8872         functionality to block/unblock/disconnect handlers based
8873         on func/data.
8874
8875         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
8876
8877         * *.c: adaptions to new type registration API signatures.
8878
8879 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
8880
8881         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
8882
8883 2000-10-25  Robert Brady  <robert@suse.co.uk>
8884
8885         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
8886         gdk_property_delete): If window == NULL, assume the root window.
8887         (restoring the behaviour that was in 1.2).
8888         
8889         * gtk/testtext.c (save_buffer): Allow creation of new files when
8890         saving.
8891
8892         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
8893         calls to read().
8894
8895 2000-10-25  Tor Lillqvist  <tml@iki.fi>
8896
8897         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
8898
8899         * gdk/win32/gdkdrawable-win32.c
8900         * gdk/win32/gdkimage-win32.c
8901         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
8902         X11 backend.
8903
8904         * gdk/win32/gdkcc-win32.c
8905         * gdk/win32/gdkcolor-win32.c
8906         * gdk/win32/gdkfont-win32.c
8907         * gdk/win32/gdkinput-win32.c
8908         * gdk/win32/gdkmain-win32.c
8909         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
8910
8911 2000-10-24  Havoc Pennington  <hp@redhat.com>
8912
8913         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
8914         it a static function
8915
8916         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
8917         redraw text when a tag is applied to it.
8918
8919         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
8920         (gtk_text_tag_affects_nonsize_appearance): private functions to
8921         see if a tag requires various kinds of redraw/layout to be queued
8922         up.
8923
8924         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
8925
8926         * gtk/testtext.c (fill_example_buffer): Put the cursor 
8927         at the start of the buffer, so search works by default
8928
8929         * gtk/gtktextiter.c (lines_match): init match_start always
8930
8931         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
8932         function, get iter at a line + a byte index
8933
8934         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
8935         to set byte position within a line
8936         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
8937
8938 2000-10-23  Havoc Pennington  <hp@redhat.com>
8939
8940         * gtk/testtext.c: Re-enable the "find" dialog
8941
8942         * gtk/testgtk.c: Add test for gdk_drawable_get_image
8943         
8944         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
8945         the arguments to gdk_draw_drawable were in the wrong order
8946         (gdk_window_paint_init_bg): This function was ignoring the
8947         init_region, instead of clipping to it, so the entire backing
8948         pixmap was cleared on every begin_paint()
8949         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
8950         was in here again, the loop kept using the same GtkWindowPaint
8951         over and over.
8952         (gdk_window_begin_paint_region): Fix a bug where we had two
8953         x_offset instead of x_offset and y_offset
8954
8955         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
8956         before we get the image.
8957         (gdk_draw_drawable): get the composite before we draw the drawable.
8958         (gdk_drawable_real_get_composite_drawable): default
8959         get_composite_drawable implementation that returns the drawable 
8960         itself
8961
8962         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
8963         get_composite_drawable virtual function
8964
8965         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
8966         list-walking bug
8967
8968         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
8969         make this work if the source drawable is a GdkDrawableImplX11
8970         instead of a public drawable type. This is really broken; the
8971         problem is that GdkDrawable needs a virtual method get_xid(), but
8972         of course that doesn't work in practice. Enter RTTI.
8973
8974         Also, improve mismatched depth message.
8975
8976         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
8977         GdkPixmap
8978
8979         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
8980         install _gdk_x11_get_image as our implementation of get_image
8981         
8982         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
8983         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
8984
8985         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
8986         gdk_drawable_get_image
8987
8988         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
8989
8990         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
8991         get_image
8992
8993         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
8994         trailing semicolon after for loop
8995
8996 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
8997
8998         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
8999         where font_desc for widget's context lagged widget's font_desc by
9000         one step.
9001
9002 2000-10-22  Tor Lillqvist  <tml@iki.fi>
9003
9004         * gdk/win32/gdkgc-win32.c
9005         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
9006
9007         * gtk/makefile.mingw.in
9008         * gtk/gtk.def: Updates.
9009
9010         * gtk/testgtk.c: sleep() is called _sleep in MS's C
9011         library.
9012
9013         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
9014
9015         * gtk/makefile.msc: Remove
9016
9017         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
9018
9019         * gtk/Makefile.am: Add it.
9020
9021         * configure.in: Generate it.
9022
9023         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
9024         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
9025         something even if not implemented, to satisfy picky MSVC.
9026
9027         Patches by Hans Breuer:
9028         
9029         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
9030         SetBkMode() and SetTextAlign() before calling
9031         pango_win32_render().
9032
9033         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
9034         Set hcliprgn to NULL after destroying it.
9035         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
9036
9037         * gdk/win32/gdkgeometry-win32.c
9038         (_gdk_windowing_window_queue_antiexpose): More effective
9039         implementation.
9040
9041         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
9042         depth as default, not the visual's.
9043
9044         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
9045         against empty title.
9046
9047         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
9048         IMAGE_PRIVATE_DATA.
9049
9050         * gdk/win32/gdkimage-win32.c: Use it.
9051
9052 2000-10-22  Robert Brady  <robert@suse.co.uk>
9053
9054         * configure.in: Check for bind_textdomain_codeset
9055
9056         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
9057         present, make use of it.
9058
9059         Add a translatable string "default:LTR" which, if translated
9060         to "default:RTL", will cause the default direction to be
9061         Right-to-Left.
9062
9063         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
9064         direction if marked as flippable.
9065
9066         * gtk/gtkhscale.c: Mark widget as flippable.
9067         
9068 2000-10-04  Havoc Pennington  <hp@redhat.com>
9069
9070         * gtk/testgtk.c (create_buttons): create some stock buttons
9071         with the default accel group
9072         (create_image): test some new GtkImage features
9073         (make_message_dialog): test GtkMessageDialog
9074         (create_modal_window): fix someone's bizzarro indentation
9075
9076         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
9077         GTK_WIN_POS_CENTER_ON_PARENT. 
9078         Add "destroy with parent" setting, which means the window goes
9079         away with its transient parent.
9080         (gtk_window_get_default_accel_group): get the default accel group
9081         for the window.
9082         (gtk_window_set_destroy_with_parent): set/unset destroy with
9083         parent flag
9084         (gtk_window_read_rcfiles): invalidate icon set caches
9085         after reloading rcfiles 
9086
9087         * gtk/gtkenums.h (GtkWindowPosition): add
9088         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
9089         on its parent window when the dialog is mapped for the first time.
9090
9091         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
9092         a simple message dialog class
9093         
9094         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
9095         handler to emit response signal, and maybe later it would
9096         honor a hide_on_delete flag - though that isn't there yet.
9097         Set border width on the vbox to 2, so we get some padding.      
9098         Use a button box for the action area.
9099         (gtk_dialog_key_press): synthesize a delete event if Esc
9100         is pressed and the GtkWidget key press handler didn't 
9101         handle the escape key.
9102         (gtk_dialog_new_with_buttons): new function creates a dialog
9103         with some default buttons in it.
9104         (gtk_dialog_add_action_widget): add an activatable widget
9105         as a button in the dialog - you can also add a non-activatable
9106         widget by accessing the action area directly.
9107         (gtk_dialog_add_button): add a simple button - stock ID or 
9108         label - to the action area
9109         (gtk_dialog_response): emit response signal
9110         (gtk_dialog_run): block waiting for the dialog, return 
9111         the response. Override normal delete_event behavior, so that 
9112         delete_event does nothing inside gtk_dialog_run().
9113
9114         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
9115         emitted when an action widget is clicked or the dialog gets
9116         delete_event
9117
9118         * gtk/gtk.h: add gtkmessagedialog.h
9119
9120         * gtk/Makefile.am: add gtkmessagedialog.[hc]
9121
9122 2000-10-18  Havoc Pennington  <hp@redhat.com>
9123
9124         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
9125         where any number of empty lines would get skipped
9126
9127         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
9128         edge.
9129
9130         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
9131         warning about invalid iterators (explain more thoroughly)
9132         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
9133
9134         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
9135         big
9136
9137         * demos/*.c: Add error handling
9138
9139         * gtk/gtktextbuffer.c: don't modify const iterators
9140
9141         * gtk/gdk-pixbuf-loader.c: Add full error handling here
9142
9143         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
9144         on file load
9145
9146         * gtk/gtkiconfactory.c: Update to reflect addition of error
9147         handling to gdk-pixbuf loaders
9148
9149 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
9150
9151         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
9152         move to new modularized testgtk.
9153
9154 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
9155
9156         * gtk/gtktreeview.c: Draw the arrows correctly.
9157
9158         * gtk/gtktreemodel.c: Added user docs.
9159
9160         * gtk/gtk.h: remove gtktreedatalist.h.
9161
9162         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
9163         parent when generating my type.
9164
9165         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
9166         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
9167
9168 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
9169
9170         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
9171         GtkTreeModel from object to interface.
9172
9173 2000-10-16  Havoc Pennington  <hp@redhat.com>
9174
9175         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
9176         compilation
9177
9178 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
9179
9180         * gtk/gtktreeselection.c: Add API documentation to all public
9181         functions.
9182
9183         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
9184         functions.
9185
9186 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
9187
9188         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
9189         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
9190         docs to all public functions.
9191
9192         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
9193         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
9194         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
9195         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
9196         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
9197         issue.
9198
9199 2000-10-14  Robert Brady  <robert@suse.co.uk>
9200
9201         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
9202
9203 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
9204
9205         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
9206         values other then G_TYPE_STRING.
9207         * gtk/gtktreeselection.c: Minor commenting updates.
9208         * gtk/gtktreeview.c: Format updates.
9209
9210 2000-10-09  Tor Lillqvist  <tml@iki.fi>
9211
9212         * README.win32: Update.
9213
9214         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
9215         lines that had been deleted by mistake (?).
9216
9217         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
9218         also the case fg==white and bg==black (but still not randomly
9219         coloured cursors). Thanks to Wolfgang Sourdeau.
9220
9221         * gdk/win32/*.c: Silence gcc -Wall.
9222
9223         * gtk/gtk.def: Add missing entry points.
9224
9225         Fixes by Hans Breuer:
9226
9227         * gdk/makefile.msc
9228         * gdk/win32/makefile.msc: Update.
9229
9230         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
9231         some MSVC thing, presumably), cause breakpoint on failures. Add
9232         GDK_NOR case. Call g_log_set_always_fatal.
9233
9234         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
9235         should be pased by reference.
9236         
9237         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
9238         
9239         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
9240
9241         * gdk/win32/gdkevents-win32.c
9242         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
9243
9244         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
9245         implementation object.
9246
9247         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
9248         not just windows.
9249         
9250         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
9251         Use the wrapper object.
9252         
9253 2000-10-06  Havoc Pennington  <hp@redhat.com>
9254
9255         * Makefile.am (SRC_SUBDIRS): contrib subdir
9256
9257         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
9258         so it can be used in Xlib version
9259
9260         * demos/testpixbuf.c (update_timeout): error checking from 1.0
9261         tree
9262
9263         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
9264         change from 1.0 tree that returns first frame of animation
9265         if the loaded file is an animation.
9266
9267         * contrib: add new directory to hold stuff that comes with GTK+
9268         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
9269         
9270         * configure.in: add contrib/*
9271
9272 2000-10-05  Havoc Pennington  <hp@redhat.com>
9273
9274         * demos/testpixbuf-save.c: add pixbuf save test
9275
9276         * demos/Makefile.am: add testpixbuf-save.c
9277
9278 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
9279
9280         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
9281         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
9282         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
9283         * gtk/gtktreeselection.[ch]: Replaced
9284         "node_selected"/"node_unselected" signal with "selection_changed"
9285         signal.
9286
9287 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
9288
9289         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
9290         tree widget.
9291
9292 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
9293
9294         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
9295         drawing.
9296
9297 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
9298
9299         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
9300         Move list pointer forwards before removing item from
9301         list. (Crash reported by Salmaso Raffaele)
9302
9303         * gdk/gdkwindow.h: Remove spurious trailing ,
9304
9305         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
9306         dependencies on uninstalled libraries, sorry folks.
9307
9308 2000-10-04  Havoc Pennington  <hp@redhat.com>
9309
9310         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
9311         gtk/gtkiconfactory.c: Fix copyrights    
9312
9313         * demos/testpixbuf.c: add inline pixbuf test
9314         
9315 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
9316
9317         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
9318         Add gdk_window_iconify.
9319
9320         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
9321         (gdk_window_set_geometry_hints): Add win_gravity
9322         to geometry structure.
9323
9324         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
9325         Implement _NET_WM_PING.
9326
9327         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
9328         Set _NET_WM_PID on the client leader.
9329
9330         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
9331         Handle UTF-8 better.
9332
9333         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
9334         UTF-8 better, set _NET_WM_NAME as well. Only set
9335         icon name if it hasn't previously been explicitely 
9336         set.
9337
9338 2000-10-03  Havoc Pennington  <hp@redhat.com>
9339
9340         * gtk/testtextbuffer.c: clean up trailing whitespace,
9341         add extensive tests for tag toggle iteration.
9342         
9343         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
9344         distance
9345
9346         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
9347         optimize case where the tag root is on level 1
9348         (gtk_text_line_previous_could_contain_tag): attempt to implement
9349         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
9350         functionality
9351
9352         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
9353         Implement this, though not very efficiently.
9354
9355         * gtk/gtktextiterprivate.h: reformat
9356
9357         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
9358         iterator
9359
9360         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
9361         this to properly revalidate the iterators.
9362
9363         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
9364         properly at the end of the line (and therefore on empty lines)
9365
9366         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
9367         maybe we should return a value...
9368
9369 2000-10-03  Tor Lillqvist  <tml@iki.fi>
9370
9371         * config.h.win32: Guard definition of alloca(). glib.h now handles
9372         that.
9373
9374         * gdk/gdk.def
9375         * gtk/gtk.def: Add new entry points.
9376
9377         Changes just to make GTK+ build without errors on Win32. No hope
9378         of it working in its current state, though...:
9379         
9380         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
9381         some functions from the X11 backend, just to make GTK+ build.
9382
9383         * gdk/makefile.mingw.in
9384         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
9385         number. Add new object files.
9386
9387         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
9388         GetMessageTime to get timestamp (where on X11 uses
9389         gdk_x11_get_server_time()).
9390
9391 2000-10-02  Havoc Pennington  <hp@pobox.com>
9392
9393         * gtk/gtktextview.c: text_window_* weren't static and should have
9394         been.
9395         Start work on child widgets; not yet complete, syncing to 
9396         office computer.
9397
9398         * gtk/gtktextchild.h: change this to contain a public interface,
9399         starting work on child interfaces.
9400         * gtk/gtktextchildprivate.h: move private interfaces here
9401
9402         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
9403
9404         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
9405         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
9406         gtk/gtktextmark.c: copyright notices
9407
9408         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
9409         internal functions      
9410
9411         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
9412         internal function
9413
9414         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
9415         Reformatting    
9416
9417 2000-09-30  Havoc Pennington  <hp@pobox.com>
9418
9419         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
9420         NULL start/end pointers
9421
9422         * gtk/gtktextbuffer.c: Write some docs
9423         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
9424         NULL, so you can just check whether there's a selection.        
9425
9426         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
9427         cleanup_line or segments_changed ourselves, it gets done 
9428         in unlink_segment
9429
9430         * gtk/gtktextmark.h:
9431         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
9432         
9433         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
9434
9435         * gtk/gtktextmark.c: delete some more old Tk cruft
9436
9437         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
9438         mark before removing it, so we can emit MARK_DELETED with a valid
9439         pointer.
9440         (gtk_text_buffer_mark_set): hold ref across signal emission
9441
9442         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
9443         whining about attempts to delete special marks
9444
9445         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
9446         underscore, since it's internal.
9447
9448         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
9449         now implemented in terms of iterators in gtktextiter.h
9450
9451         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
9452         New function, destructively sets contents of buffer. Also 
9453         a convenient way to clear the buffer by setting text to ""
9454
9455         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
9456         multiline string literal
9457
9458         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
9459         text changes.
9460
9461         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
9462         is not dereferenceable
9463         (gtk_text_iter_forward_lines): fix return value
9464
9465 2000-09-29  Havoc Pennington  <hp@redhat.com>
9466
9467         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
9468
9469         * gtk/gtktextview.c: Implement drag thresholding; change functions 
9470         that set border window size to have nicer name
9471         (gtk_text_view_mark_set_handler):  Fix this to have the 
9472         right signature.
9473
9474         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
9475
9476         * gtk/testtext.c: Update with API changes, put line numbers on 
9477         both sides.
9478         
9479         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
9480         with this
9481
9482         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
9483         pixbuf; delete a big block of #if 0 Tk code
9484
9485         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
9486         insert_pixmap with insert_pixbuf
9487
9488 2000-09-29  Martin Baulig  <baulig@suse.de>
9489
9490         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
9491         confusion with the GdkPixbuf of the GNOME 1.x platform.
9492
9493 2000-09-29  Havoc Pennington  <hp@pobox.com>
9494
9495         * gtk/gtktextview.c: Implement the side windows.
9496
9497         * gtk/testtext.c: Implement simple line numbering in the 
9498         left side window; seems to make scrolling sloooow. Oops.
9499         Also, cursor blink is for some reason causing redraws
9500         of the line numbers. Should investigate...
9501
9502 2000-09-28  Havoc Pennington  <hp@redhat.com>
9503
9504         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
9505         scrolling child windows, and draw focus rectangle properly.
9506         
9507         (gtk_text_view_buffer_to_window_coords):
9508         Coordinate transformation to deal with all these freaking windows
9509         and offsets
9510         (gtk_text_view_window_to_buffer_coords): transform the other way
9511
9512         * gtk/testtext.c (create_buffer): Update to match Pango API change
9513
9514         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
9515         anonymous tags
9516         (foreach_unref): don't emit remove signal from finalize, just
9517         set tag's parent to NULL
9518
9519 2000-09-26  Havoc Pennington  <hp@redhat.com>
9520
9521         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
9522         Fix some warnings       
9523
9524 2000-09-26  Havoc Pennington  <hp@redhat.com>
9525
9526         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
9527         headers into the private header list
9528
9529         * Makefile.am (pkgconfig_DATA): install pkg-config files
9530
9531         * configure.in: add pkg-config files
9532
9533         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
9534
9535         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
9536         outstanding icon caches on theme change.
9537
9538         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
9539         important types:
9540
9541         (GtkIconSource): Specification for creating a pixbuf 
9542         appropriate for a direction/state/size triplet from 
9543         a source pixbuf or filename
9544
9545         (GtkIconSet): List of GtkIconSource objects that are used to
9546         create the "same" icon (e.g. an OK button icon), and cache for
9547         rendered icons
9548
9549         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
9550         up the icon set for a given stock ID.  GTK maintains a stack of
9551         GtkIconFactory to search, and applications or libraries can add
9552         additional icon factories on top of the stack
9553         
9554         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
9555         the set of GtkIconSource specified for a given stock ID into 
9556         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
9557         RcStyle, under the specified stock ID.
9558
9559         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
9560         render_icon used to derive a GdkPixbuf from a GtkIconSource.
9561         This allows people to theme how prelight, insensitive, etc. are
9562         done.
9563
9564         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
9565         icon factories for a style, and return the resulting 
9566         icon set if any.
9567
9568         (gtk_style_render_icon): Render an icon using the render_icon 
9569         method in the GtkStyleClass.
9570
9571         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
9572         Use the style for a given widget to look up a stock ID, get the
9573         icon set, and render an icon using the render_icon method 
9574         of the style
9575
9576         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
9577         (contains information about a stock item), the built-in stock item
9578         IDs, and functions to add/lookup stock items.
9579
9580         * gtk/stock-icons/*: Stock icons that come with GTK
9581
9582         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
9583         a button based on a GtkStockItem
9584         (gtk_button_new_accel): Takes a uline string and accel group, and
9585         installs the accelerator.
9586
9587         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
9588         image-display widget.
9589
9590 2000-09-25  Havoc Pennington  <hp@redhat.com>
9591
9592         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
9593
9594         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
9595         Fix a bug when removing node data, we didn't properly 
9596         re-splice the linked list after removing the data.
9597
9598         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
9599         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
9600
9601         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
9602
9603         * gtk/gtktextlayout.c (set_para_values): Set tab array 
9604         for the layout from the GtkTextTag.
9605
9606         * gtk/gtktexttypes.h: delete tab and search cruft, 
9607         remove g_convert() in favor of GLib version
9608
9609         * gtk/gtktexttypes.c: remove tab implementation from here,
9610         move to Pango
9611
9612         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
9613         tab stuff using new PangoTabArray from Pango
9614
9615         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
9616         unused border_width stuff
9617
9618 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
9619
9620         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
9621         glib) and now useless utf_to_latin1() latin1_to_utf()
9622
9623         * gtk/gtktextview.[ch]: Change ::move_insert and
9624         ::delete_text action signals to ::move and ::delete;
9625         create the signals with the right enumeration type,
9626         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
9627         C-v bindings, change Home, End to move to beginning/end
9628         of line, Add C-Home C-End to move to beginning/end
9629         of buffer. Change ::cut_text to ::cut_clipboard, etc;
9630         combine ::scroll_text into ::move; use new GtkSelectionData
9631         functions to simplify DND text handling.
9632         
9633         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
9634         deletion enumerations here, rename enumeration values to 
9635         be consistently plural.
9636
9637         * gtk/gtktextbuffer.c: Use new clipboard interfaces
9638         for cut/copy/paste and primary selection.
9639
9640         * gtk/gtktextbuffer.[ch]: Remove excess time and
9641         'interactive' arguments from cut/copy/paste;
9642         rename cut to cut_clipboard, etc; remove
9643         gtk_text_buffer_get_clipboard_contents().
9644
9645         * gtk/gtktextlayout.[ch]: Add 
9646         gtk_text_layout_move_iter_to_line_end() to move the iter to 
9647         line ends.
9648
9649         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
9650         Functions to set or get a UTF-8 string on the selection
9651         data.
9652
9653         * gtk/gtkclipboard.[ch]: New, simplified selection handling
9654         interfaces.
9655
9656         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
9657         created widgets - one of these is useless if we don't.
9658
9659         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
9660         a public function clear all targets registered for the
9661         widget.
9662
9663         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
9664         Never call gtk_widget_realize() - that was just asking
9665         for bizarre side-effects.
9666
9667         * gtk/gtkselection.c (gtk_selection_owner_set): Call
9668         gdk_selection_owner_set even if the widget is the
9669         same so that we reliably update the timestamp on
9670         the server.
9671
9672         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
9673         gdk_x11_get_server_time() function.
9674         
9675         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
9676         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
9677         Add some tricky filtering on serial numbers for
9678         selection clear events to fix up long-standard
9679         race condition FIXME's in gtkselection.c.
9680
9681         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
9682         routines to convert from utf8 to compound text or
9683         STRING and from a text property to UTF-8.
9684
9685         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
9686         a convenience function gdk_get_current_event_time().
9687
9688         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
9689         and free selection_data->data properly
9690
9691 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
9692
9693         * gtk/gtkthemes.c: Remove some unecessary includes.
9694
9695 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
9696
9697         * gtk/gtktextdisplay.c
9698         * gtk/gtktextlayout.c
9699         * gtk/gtktexttag.c
9700         * gtk/gtktexttag.h
9701         * gtk/testtext.c: Change the overstrike property to strikethrough,
9702         to closer match pango.
9703
9704 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
9705
9706         * gtk/gtktextview.c: Fix up visibility so that focus,
9707         cursor_visible and blink interact properly.  Reenable cursor blink
9708         which had been roughly disabled. Make blink and focus
9709         properly per-view.
9710
9711         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
9712         Add a flag for whether to display insertion cursor and
9713         a function to set the flag.
9714
9715         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
9716         get_line_y() to get_line_yrange(), to be a bit more generally
9717         useful.
9718
9719 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
9720
9721         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
9722           do stop_navigating_submenu, to clear last timeout properly.
9723           Also in gtk_menu_motion_notify move ignore_enter above
9724           the conditional to make it always happen as suggested by Owen
9725
9726 2000-09-07  Tor Lillqvist  <tml@iki.fi>
9727
9728         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
9729
9730         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
9731         w32api headers.
9732
9733         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
9734         declarations.
9735
9736         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
9737         (gdk_win32_get_colormap): A line had been deleted by mistake.
9738
9739         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
9740         (gdk_event_translate): Handle more virtual keycodes to be able to
9741         generate GDK events for Control-comma, Control-period, etc.
9742
9743         * gtk/gtk.def: Add some missing entry points.
9744
9745 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
9746
9747         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
9748         Doc comment fixing. (Mostly non-matching parameter names.)
9749
9750         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
9751         comments a little to avoid looking like a doc comment.
9752
9753         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
9754         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
9755         conversions be changed to GError?)
9756
9757         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
9758         Move private #defines into .c file.
9759
9760         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
9761         order of argument addition, remove duplicates.
9762
9763         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
9764         parent class is FrameClass, not BinClass.
9765
9766         * gtk/gtk.h: Add gtkinvisible, which was missing.
9767         (It's occasionalyl useful for client apps, if seldom.)
9768
9769         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
9770         #define.
9771
9772 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
9773
9774         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
9775         coordinates when creating window, instead of GDK-space
9776         coordinates. (Avoid BadValue on too large windows.)
9777
9778 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9779
9780         * configure.in (use_mmx_asm): Remove conftest* after use along the
9781         lines of AC_TRY_COMPILE.        
9782         
9783         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
9784         of g_dirname, which is deprecated.
9785         (gtk_rc_parse_any): Removed calls to
9786         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
9787
9788         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
9789         Removed calls to g_hash_table_{freeze,thaw}, as they are
9790         deprecated now.
9791
9792         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
9793         instead of g_basename.
9794         
9795 2000-09-04 Elliot Lee <sopwith@redhat.com>
9796         
9797         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
9798         ANSI warning.
9799
9800 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
9801
9802         * gtk/gtkwidget.h:  Add some documenting comments about 
9803           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
9804           just as owen said on irc.
9805
9806         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
9807           set HAS_DEFAULT.  Only set it if there isn't another window
9808           holding it (a focus window which RECEIVES_DEFAULT) and only unset
9809           it if the widget is not the focused window with RECEIVES_DEFAULT.
9810           This fixes weird double default bugs in dialogs which has things
9811           call gtk_window_set_default at times.
9812
9813 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
9814
9815         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
9816         Nils Barth and David Santiago to improve submenu
9817         navigation. The patch does this by creating a triangular
9818         region from the point where the pointer leaves the
9819         menu to the submenu.  While the pointer is in
9820         that region and a timeout has not expired, events 
9821         that would cause the active submenu to change are
9822         ignored.
9823
9824 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
9825
9826         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
9827         moving a toplevel window immediately after sizing it would
9828         result in it being sized back to the old size since 
9829         impl->width, impl->height aren't updated until we hear
9830         back from the server. There is still a (longstanding) bug
9831         here that gdk_window_get_size() will give the wrong size
9832         until we do hear back.
9833
9834 2000-08-31  Havoc Pennington  <hp@redhat.com>
9835
9836         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
9837         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
9838         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
9839         Rename GtkTextStyleValues to GtkTextAttributes
9840
9841 2000-08-31  Havoc Pennington  <hp@pobox.com>
9842
9843         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
9844         for rapid testing whether an iterator is the end iterator
9845         (gtk_text_btree_new): init end line cache
9846         (gtk_text_line_is_last): use fast cached line to 
9847         see if we're the last line.
9848         (get_last_line): use cached line here too, should 
9849         speed up some random unrelated code.
9850         
9851 2000-08-30  Havoc Pennington  <hp@pobox.com>
9852
9853         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
9854         signals.
9855
9856         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
9857         delete_text signals. This allows the signals to be used for
9858         implementing undo.
9859
9860         * gtk/gtktextbuffer.c: Change signal handler signatures; 
9861         provide "interactive" argument when emitting insert_text or
9862         delete_text signal.
9863         
9864 2000-08-30  Havoc Pennington  <hp@pobox.com>
9865
9866         * gtk/gtktextbuffer.c: Docs
9867
9868 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
9869
9870         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
9871         from switch statements, since Tor removed the enumeration
9872         value.
9873         
9874         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9875         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
9876
9877 2000-08-29 Elliot Lee <sopwith@redhat.com>
9878         * */*.h: Use G_GNUC_CONST.
9879
9880 2000-08-27  Havoc Pennington  <hp@pobox.com>
9881
9882         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
9883         minor indentation fixes, inserted some FIXME about stuff I
9884         realized was broken while documenting it.
9885         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
9886         GTK convention  
9887
9888 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
9889
9890         * gtk/testgtk.c (create_styles): Fix double free of
9891         font desc.
9892
9893 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9894
9895         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
9896         
9897         * gtk/testgtk.c (create_styles): Add a test for modifying
9898         the style through gtk_widget_modify_*.
9899
9900         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
9901         a function to get the current modifier style.
9902
9903         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
9904         of the passed in GtkRcStyle instead of ref'ing it.
9905
9906         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
9907
9908 2000-08-20  Tor Lillqvist  <tml@iki.fi>
9909
9910         * gdk/gdkimage.h
9911         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
9912         shared memory image+pixmap GdkImage type, or
9913         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
9914         I am dropping that.
9915
9916         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
9917         actually call gtk_init_abi_check(), passing also
9918         sizeof(GtkWindow). Ditto for gtk_init_check(). 
9919
9920         * gtk/gtk.def
9921         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
9922         New functions, used to check that the GTK+-using code has been
9923         compiled using the correct compiler and switches. In particular,
9924         with gcc one has to use the -fnative-struct switch as GTK+ is
9925         compiled with that.
9926
9927 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
9928
9929         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
9930         ->prev fields when merging lists. (Found simultaneously
9931         by Pawel Salek and Jakub Jelinek)
9932
9933 2000-08-12  Tor Lillqvist  <tml@iki.fi>
9934
9935         * gdk/gdk.def
9936         * gtk/gtk.def: Add missing entries.
9937
9938         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
9939         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
9940
9941         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
9942         function. Dummy implementation at this point.
9943
9944         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
9945         rules. Undefine GTK_COMPILATION when compiling the test programs.
9946         
9947         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
9948
9949 2000-08-11  Tor Lillqvist  <tml@iki.fi>
9950
9951         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
9952         to convert back and forth from UTF-8 and the "system" (or "current
9953         locale") charset when necessary. Indentation/spacing cleanup.
9954
9955 2000-08-10  Havoc Pennington  <hp@redhat.com>
9956
9957         * Makefile.am (snapshot): Change the format of the snapshot
9958         version to match glib
9959
9960         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
9961         from EXTRA_DIST since it doesn't seem to exist
9962
9963 2000-08-10  Tor Lillqvist  <tml@iki.fi>
9964
9965         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
9966         version of the directory name (not the UTF-8 one) when building
9967         the path name to stat().
9968
9969 2000-08-03  Elliot Lee  <sopwith@redhat.com>
9970
9971         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
9972         PANGO_ATTR_SHAPE set.
9973
9974 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
9975
9976         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
9977         Peter Osterlund to simplify the code while keeping the
9978         functionality the same.
9979
9980 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
9981
9982         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
9983         is_viewable() test further inside the function, since removing the 
9984         window from the redraw list without clearing ->update_area
9985         was also very broken.
9986
9987 2000-08-02  Tor Lillqvist  <tml@iki.fi>
9988
9989         * configure.in: Check for <unistd.h>.
9990
9991 2000-08-01  Martin Baulig  <baulig@suse.de>
9992
9993         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
9994         to display the message that this is a development version of GTK+.
9995
9996 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
9997
9998         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
9999         was depending on widget->allocation instead of the width of text_area,
10000         which was incorrect for subclasses like GtkSpinButton.
10001
10002         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
10003         with width == 1 tests that should be width == -1.
10004
10005 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
10006
10007         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
10008         (broken, Elliot, every single window blank on X) custom code with call
10009         to gdk_window_is_viewable() which a) prevents code duplicate and
10010         b) works. 
10011
10012 2000-07-31  Elliot Lee  <sopwith@redhat.com>
10013
10014         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
10015         to get the GDK_PARENT_ROOT() macro to work.
10016         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
10017         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
10018         of, windows that aren't shown.
10019         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
10020         pointer grab stuff.
10021
10022 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
10023
10024         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
10025           s/gtk_main_iteration/g_main_iteration/
10026
10027           Did this already in change:
10028                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
10029           don't know how it got reverted.
10030
10031 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
10032
10033         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
10034         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
10035
10036         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
10037         not gdk_pixbuf.
10038
10039 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
10040
10041         * configure.in,po/{sp,sr}.po: Added Serbian files
10042
10043 2000-07-30  Tor Lillqvist  <tml@iki.fi>
10044
10045         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
10046
10047         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
10048         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
10049         GIOChannel implementation.
10050
10051         * gdk/win32/gdkinput.c
10052         * gdk/win32/gdkpango-win32.c: Update license name here, too.
10053
10054         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
10055         definition to match prototype.
10056
10057         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
10058
10059 2000-07-27  Elliot Lee  <sopwith@redhat.com>
10060
10061         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
10062         function, to allow handling image formats that cannot be detected
10063         by looking at content alone.
10064
10065 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
10066
10067         * docs/tutorial/*.gif *.jpg *.eps
10068           Update these to the same look-n-feel.
10069           Why does including images in DocBook suck so badly?
10070
10071 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
10072
10073         * gtk/gtktable.c: applied patch from Phil Thompson
10074         <phil@river-bank.demon.co.uk> that enables space settings for
10075         the last row/columns as well.
10076
10077 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
10078
10079         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
10080         updates the license headers to the GNU Lesser General Public License,
10081         as well as updating the copyright year to 2000.
10082
10083 2000-07-26  Robert Brady  <rwb197@zepler.org>
10084
10085         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
10086           and po/Makefile, was installing and looking for them under gtk20
10087           and gtk2 respectively.
10088
10089 2000-07-25  Havoc Pennington  <hp@redhat.com>
10090
10091         * gtk/testtext.c: Comment out some stuff that depends on the rest
10092         of my patches.
10093
10094 2000-07-25  Havoc Pennington  <hp@redhat.com>
10095
10096         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
10097         buffer
10098
10099 2000-07-25  Havoc Pennington  <hp@redhat.com>
10100
10101         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
10102         widget changes.
10103
10104         * gtk/gtktextview.h: To be consistent with usage of "line"
10105         throughout the API to mean "newline-terminated thingy", change
10106         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
10107         to MOVEMENT_LINE.
10108
10109         (GtkTextView): Add flags for default editability, and whether to
10110         show the cursor. Add functions to get/set that. Add 
10111
10112         (gtk_text_view_get_iter_location): new function
10113
10114         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
10115         gtktextlayout.h
10116         (g_convert): Add g_convert temporarily, will go in glib in a bit
10117         
10118         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
10119         GtkTextTagTableForeach instead of brokenly using GHFunc.
10120         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
10121
10122         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
10123         moved to public header.
10124
10125         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
10126         "invisible", since "elide" was a bad name.
10127         (gtk_text_tag_get_priority): Added
10128
10129         (GtkTextStyleValues): put this in public header, along with
10130         functions to use it.
10131
10132         * gtk/gtktextmarkprivate.h: Include more headers, since we no
10133         longer include gtktextbtree.h.
10134
10135         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
10136         gtk_text_mark_deleted
10137
10138         * gtk/gtktextlayout.h: Don't include the "really private" headers,
10139         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
10140         to make this possible. Now we only need to install
10141         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
10142         (However the Makefile.am isn't changed yet because of the
10143         logistics of merging gtk-hp-patches piecemeal)
10144
10145         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
10146         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
10147         gtk_text_iter_get_line is now used in the public API for a
10148         different purpose.
10149
10150         * gtk/gtktextiter.h: Clean up function names to be more
10151         consistent. Always call char offset "offset" and byte index
10152         "index". A "line" is always a line number. 
10153
10154         (gtk_text_iter_is_last): new function, more efficient than 
10155         the existing way to check
10156         (gtk_text_iter_is_first): new function, also more efficient
10157
10158         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
10159
10160         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
10161         gtk_text_iter_forward_char, etc.
10162
10163         (gtk_text_iter_forward_to_tag_toggle): Renamed from
10164         forward_find_tag_toggle, since this isn't a linear search
10165
10166         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
10167
10168         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
10169         New functions, search for a buffer substring.
10170
10171         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
10172         interactive and default editable (since we need to store that info
10173         until we receive the selection data).
10174
10175         Remove all the _at_char and at_line etc. versions of functions;
10176         only have iterator versions.
10177
10178         Add _interactive() versions of functions, that consider the
10179         editability of text. (FIXME add interactive flag to the 
10180         insert/delete signals per Darin's suggestion)
10181
10182         (gtk_text_buffer_get_tag_table): new function, demand-creates the
10183         tag table if necessary
10184
10185         Remove declaration of gtk_text_buffer_get_iter_from_string
10186
10187         (_gtk_text_buffer_get_btree): private/internal function, added.
10188         
10189
10190         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
10191         (gtk_text_line_is_last): new function
10192
10193 2000-07-25  Havoc Pennington  <hp@redhat.com>
10194
10195         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
10196         using GtkProgressBar. See Changes-2.0.txt for details.
10197
10198         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
10199         "pulse_step" which are the equivalent of
10200         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
10201         Implement new API.
10202         
10203         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
10204         (use_text_format) to mark whether text set on the progress bar is
10205         a format string. Deprecate entire GtkProgress interface.
10206
10207         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
10208         (gtk_progress_build_string): make this a no-op if use_text_format
10209         is FALSE
10210
10211         * docs/Changes-2.0.txt: Describe progress bar changes.
10212
10213 2000-07-25  Tor Lillqvist  <tml@iki.fi>
10214
10215         * Makefile.am: Include the build directory.
10216
10217         * configure.in: Generate build/Makefile, build/win32/Makefile,
10218         gdk/, gdk/win32/, and gtk/makefile.mingw.
10219
10220         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
10221         Add GETTEXT_PACKAGE.
10222         
10223         * gdk/gdk.def
10224         * gtk/gtk.def: Updates.
10225
10226         * gdk/gdkfont.h
10227         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
10228         need them any longer.
10229
10230         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
10231
10232         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
10233         PANGOWIN32_LIBS and gdk_pixbuf.
10234
10235         * gdk/win32: Compiles, but no doubt doesn't work at all.
10236
10237         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
10238
10239         * gdk/win32/gdkinput.c: New file, temporarily.
10240         
10241         * gdk/win32/gdkinput-win32.h: New file
10242
10243         * gdk/win32/gdkinputprivate.h: Remove.
10244
10245         * gdk/win32/gdkpango-win32.c: New file.
10246
10247         * gtk/makefile.mingw.in: New file
10248
10249         * gtk/makefile.cygwin: Removed
10250         
10251         * gtk/Makefile.am: Update accordingly.
10252
10253         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
10254         made externally visible.
10255
10256         * gtk/gtkmain.c: Use it.
10257         
10258         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
10259         is enough.
10260
10261         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
10262
10263 2000-07-24 Elliot Lee <sopwith@redhat.com>
10264         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
10265         individual backends already.
10266         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
10267         again. Yes, there really is a good reason for this, if you are using the gdkregion
10268         internals, and if you're not, why do you care?
10269         * gdk/gdkwindow.c: Fix inverted condition
10270         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
10271         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
10272         * gtk/gtkrange.c: Redraw trough when moving.
10273         * gtk/gtktypeutils.c: Fix warning by adding const cast.
10274         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
10275
10276 2000-07-23  Tor Lillqvist  <tml@iki.fi>
10277
10278         * configure.in: Check for mkstemp and sigsetjmp. Output
10279         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
10280
10281         More work on GDK for Win32. Still in an intermediate state.
10282
10283         * gdk/makefile.cygwin
10284         * gdk/win32/makefile.cygwin: Removed.
10285         
10286         * gdk/makefile.mingw.in
10287         * gdk/win32/makefile.mingw.in: New files.
10288
10289         * gdk/Makefile.am
10290         * gdk/win32/Makefile.am: Generate and distribute them.
10291
10292         * gdk/win32/gdkwindow-win32.h
10293         * gdk/win32/gdkdrawable-win32.h
10294         * gdk/win32/gdkpixmap-win32.h: New files.
10295
10296         * gdk/win32/gdkcolor-win32.c
10297         * gdk/win32/gdkcursor-win32.c
10298         * gdk/win32/gdkdrawable-win32.c
10299         * gdk/win32/gdkgc-win32.c
10300         * gdk/win32/gdkimage-win32.c
10301         * gdk/win32/gdkprivate-win32.h
10302         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
10303         Rename fields and variables called xcursor, xid, etc (these names
10304         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
10305
10306 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
10307
10308         * gtk/gtkentry.[ch]: Fix some problems with vertical
10309         alignment.
10310
10311         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
10312         char/byte confusion.
10313
10314 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
10315
10316         * gtk/gtktextview.c (changed_handler): Fix bug where
10317         redraw wasn't being done properly when height of
10318         dirty region changed.
10319
10320         * demos/Makefile.am: Remove various references to
10321         -lgmodule
10322
10323 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
10324
10325         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
10326         PangoAttrShape to reserve space for pixmaps, add 
10327         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
10328         in the display functions.
10329         
10330         * gtk/testgtk.c (create_layout): Set some more exotic
10331         scrolled window options
10332
10333         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
10334         Add function to set the shadow type of a window, to allow
10335         putting a shadow around widgets such as GtkLayout or GnomeCanvas
10336         which don't draw their own frame.
10337
10338 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
10339
10340         * docs/tutorial/package-db-tutorial.sh: New file for
10341           packaging DocBook format tutorial
10342
10343 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
10344
10345         * docs/tutorial/gtk-tut.sgml: Minor updates
10346
10347         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
10348
10349 2000-07-19  Tor Lillqvist  <tml@iki.fi>
10350
10351         * gtk/gtksignal.c: Fix C++ comment.
10352
10353         * gtk/gtkimmulticontext.c
10354         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
10355         don't return value from void functions.
10356
10357         * gtk/gtk.def: Add gtk_rc_style_unref.
10358
10359 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10360
10361         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
10362         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
10363         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
10364         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
10365         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
10366         gtk/gtktypeutils.h: Include files outside of the extern "C"
10367         block. Makes some C++ compiler happy. Reported by Denis Vakatov
10368         <vakatov@peony.nlm.nih.gov>.
10369
10370 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
10371
10372         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
10373           Completes first pass. Hurrah!
10374
10375 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
10376
10377         * docs/tutorial/gtk-tut.sgml: More clean ups.
10378
10379 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
10380
10381         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
10382         paint the background of the text area which was accidentally
10383         removed at some point.
10384
10385         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
10386           
10387          - Move most of the functionality from the theme vtable
10388            into GtkRcStyleClass and GtkStyleClass. The moved
10389            vtable functions were changed a bit in the move to
10390            work better in their new home.
10391
10392          - Get rid of the engine and engine_data fields from
10393            GtkRcStyle and GtkStyle; instead the theme
10394            engine derives theme-specific subclasses of GtkRcStyle
10395            and GtkStyle
10396
10397          - Add extra dlsym() found entry point to themes,
10398            theme_create_rc_style().
10399
10400         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
10401         in gtk_style_real_copy.
10402
10403         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
10404         to register a type associated with an engine. (The engine
10405         won't be unloaded as there is an instance of the type.)
10406
10407
10408 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
10409
10410         * docs/tutorial/gtk-tut.sgml: Clean ups.
10411
10412 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
10413
10414         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
10415           of cleaning up to do.
10416
10417 2000-07-15  Tor Lillqvist  <tml@iki.fi>
10418
10419         * gdk/testgdk.c: New file, quick hack to test backends for
10420         pixel-by-pixel correctness of the most simple graphic operations.
10421
10422 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
10423
10424         * Really release 1.3.1
10425         
10426         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
10427         include structure.
10428
10429 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
10430
10431         * Released 1.3.1
10432
10433 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
10434
10435         * gtk/gtktextlayout.c: use FALSE for size_only most
10436         of the time when calling gtk_text_layout_get_line_display()
10437         to avoid causing double reshapes when a redraw follows
10438         immediately after.
10439
10440 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
10441
10442         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
10443         appropriate region and gdk_window_process_updates() so trough
10444         updating doesn't lag behind the window being scrolled.
10445
10446         * gdk/gdkgc.c: Make parent_class pointer static.
10447          
10448 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
10449
10450         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
10451         include <string.h>.
10452          
10453         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
10454         cut-and-paste error in computing memory offset for 4 channels.
10455
10456 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
10457
10458         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
10459         gtk_rc_append_default_pixmap_path(), since it wasn't
10460         adding an interesting path and we don't have a meaningful
10461         default for this value.
10462
10463 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
10464
10465         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
10466         gtk-config to gtk-config-2.0 move gtk_.m4 to
10467         gtk-2.0.m4
10468
10469         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
10470         gdk/Makefile.am demos/Makefile.am: Change 
10471         library names to libgtk-1.3.la, etc, so that we
10472         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
10473
10474         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
10475         gdk/Makefile.am gdk/x11/Makfile.am
10476         Move include files into /usr/include/gtk-2.0, 
10477         /usr/lib/gtk-2.0/include/
10478          
10479         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
10480         gtk/gtkintl.h: Change package for gettext from 
10481         gtk+ to gtk20. Put hack in autogen.sh to modify
10482         po/Makefile.in.in after gettextize to make this
10483         possible.
10484
10485         * gtk+.spec: Some updates, not tested.
10486
10487         * gdk-pixbuf/Makefile.am: Move loaders into
10488         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
10489
10490         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
10491         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
10492         to THEMENAME/gtk-2.0/. Move engine directory  to
10493         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
10494         
10495 2000-07-12  Tor Lillqvist  <tml@iki.fi>
10496
10497         Win32 changes, still doesn't build though.
10498
10499         * gdk/makefile.cygwin
10500         * gdk/win32/makefile.cygwin
10501         * gtk/makefile.cygwin: Updates.
10502
10503         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
10504         default values for fg and bg pixel as X11 does (0 and 1), not
10505         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
10506         Use 0 for pen width by default (treated as 1 anyway later, but for
10507         apps that might check the value in the GdkGC).
10508         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
10509         interface to gdk_gc_predraw and _postdraw.
10510
10511         * gdk/win32/gdkwin32.h
10512         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
10513
10514         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
10515         extraneous semicolon.
10516
10517         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
10518
10519         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
10520         not the Win32 bitspixel value.
10521
10522         * gdk/win32/gdkcc-win32.c:
10523         * gdk/win32/gdkcolor-win32.c 
10524         * gdk/win32/gdkprivate-win32.h
10525         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
10526         GDK object structure.
10527
10528 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
10529
10530         * docs/tutorial/gtk_tut_12.es.sgml (name): 
10531         * docs/tutorial/gtk_tut_it.sgml (name): 
10532         * docs/tutorial/gtk_tut_fr.sgml (name): 
10533         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
10534         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
10535
10536 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
10537
10538         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
10539           small changes.
10540
10541 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
10542
10543         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
10544         a bug here, never been here and never fixed anything ;(
10545         (don't segfault if tree->root_tree is NULL, which happens prior
10546         to widget realization, but puke instead).
10547
10548 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
10549
10550         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
10551         add the necessary tokens.
10552
10553         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
10554         (gtk_rc_style_to_style): copy thicknesses.
10555         (gtk_rc_init_style): apply thicknesses.
10556         (gtk_rc_parse_style): parse xthickness and ythickness.
10557
10558         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
10559
10560         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
10561         (gdk_window_new): 
10562         (_gdk_windowing_window_init): 
10563         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
10564         (gdk_pixmap_create_from_data): 
10565         (gdk_bitmap_create_from_data): 
10566         (gdk_pixmap_new): 
10567         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
10568         (gdk_image_new): 
10569         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
10570         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
10571         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
10572         (gdk_colormap_get_system): 
10573         (gdk_colormap_new): 
10574         * gdk/gdkwindow.c (gdk_window_init): 
10575         * gtk/gtkstyle.c (gtk_style_new):
10576         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
10577         * gdk/gdkpixmap.c (gdk_pixmap_init): 
10578         * gtk/gtkrc.c (gtk_rc_style_new):
10579         use g_object_new() instead of g_type_create_instance() which
10580         is a private function for fundamental type implementations.
10581
10582 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
10583
10584         * configure.in: Add check for db2html
10585
10586 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
10587
10588         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
10589         hack to set glib_debug_objects based on gtk_debug_flags.
10590
10591 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
10592
10593         * INSTALL.in: Update the Prerequisites section.
10594
10595         * Makefile.am demos/Makefile.am docs/Makefile.am
10596         docs/tutorial/Makefile.am gdk/x11/Makefile.am
10597         gdk/linux-fb/Makefile.am: Dist fixes
10598
10599 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
10600
10601         * NEWS: 10,000 foot view of 1.3.1 changes.
10602
10603 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
10604
10605         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
10606         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
10607         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
10608         gdk/x11/gdkmain-x11.c: 
10609
10610         Patch from George Lebl to add a GdkGrabStatus enumeration to use
10611         as a return value of gdk_*_grab(). Previously, we just
10612         returned the X11 values directly.
10613
10614 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
10615
10616         * gdk/x11/Makefile.am: Patch from George Lebl to 
10617         install all the headers in the right place.
10618
10619 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
10620
10621         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
10622           initial conversion to DocBook.
10623
10624 2000-07-04  Tor Lillqvist  <tml@iki.fi>
10625
10626         * README.win32: Improve a bit.
10627
10628         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
10629         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
10630         Alt+0nnn on the numpad (used to enter characters by numeric code
10631         from current DOS or ANSI codepage) working correctly, as in other
10632         Windows apps.
10633
10634         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
10635         same argument validity tests as in X11 version.
10636         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
10637
10638         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
10639         definitions in case missing from headers.
10640
10641         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
10642         destroy the window-specific cursor.
10643         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
10644         calling GetModuleHandle(NULL).
10645         (gdk_window_set_cursor): Reworked to always copy the passed cursor
10646         with CopyCursor before setting it as the window-specific
10647         cursor. It is OK for the caller to destroy the GdkCursor (and thus
10648         also its Windows cursor) after calling this function. Destroy any
10649         previous window-specific cursor.
10650
10651 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
10652
10653         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
10654         font charset is iso8859-1, not iso-8859-1.
10655
10656 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
10657
10658         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
10659         Use g_get_charset() instead of g_get_codeset().
10660
10661         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
10662         Comment out some strdup'ing functions to keep timj
10663         happy until we finish fighting this out.
10664
10665 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
10666
10667         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
10668         <= width or height.
10669
10670         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
10671         from 1.2 for parent/child states.
10672
10673         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
10674         of typos.
10675
10676         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
10677         event structures, replace with a generic axes field. Replace 
10678         deviceid/sourec with GdkDevice *device.
10679
10680         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
10681         to extract particular axis use value from event. (Also
10682         can be used for normal X/Y.)
10683
10684         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
10685         allow for arbitrary number of axes, namespace everything
10686         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
10687         everywhere.
10688
10689         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
10690         Get rid of the gdk_input_vtable setup if favor of simply
10691         defining the functions in gdkinput-none/gxi/xfree.c in
10692         a similar fashion to the way that the port structure is 
10693         done.
10694
10695         * gtk/gtkdnd.c: Fix fields of synthesized button press event
10696         for new event structures. 
10697
10698         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
10699         new device interfaces.
10700
10701 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
10702
10703         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
10704         set the initial text.
10705
10706         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
10707         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
10708         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
10709         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
10710
10711         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
10712         pango_layout_set_font_description to simplify.
10713
10714 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
10715
10716         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
10717         pango_layout_set_font_description to simplify.
10718
10719 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
10720
10721         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
10722         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
10723         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
10724
10725         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
10726         PANGO_PIXELS() macro.
10727
10728 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
10729
10730         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
10731         that returns a PangoContext owned by the widget and updated to
10732         match future changes in the widget. Also, make 
10733         gtk_widget_create_pango_layout() use this context. If we ever
10734         add a ::changed signal to PangoContext, this will make things
10735         much more convenient. 
10736
10737         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
10738         in the appropriate places instead of destroying the layouts and
10739         creating new ones.
10740
10741         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
10742         in a few strategic places.
10743
10744 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
10745
10746         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
10747         gtk_widget_size_request() on reparented child, if one. Otherwise,
10748         queue_resize() on the child never results in it getting size-requested
10749         at all.
10750
10751         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
10752         in option menus, so that (with luck) people won't copy it into
10753         their apps in the future.
10754
10755         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
10756         to gtk_option_menu_calc_size. This isn't perfect, but should fix
10757         a lot of problems with changing the size of the menu's menu
10758         items after adding it to the option menu.
10759
10760         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
10761
10762         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
10763         the text direction for a widget changes.
10764
10765         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
10766         ::direction_changed to get rid of various hacks.
10767
10768 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
10769
10770         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
10771         name.
10772
10773 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
10774
10775         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
10776         flag to the structure. Do not call XFreePixmap on pixmaps created
10777         by gdk_pixmap_foreign_new().
10778
10779 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
10780
10781         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
10782         value using GdkRGB functionality given GdkColormap and GdkColor.
10783         (name not final, waiting for inspiration.)
10784         
10785         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
10786         set the foreground/background of a GC using the GC's colormap
10787         and GdkRGB. (name not final, waiting for inspiration.)
10788
10789         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
10790         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
10791
10792         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
10793         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
10794         purely a function of the corresponding colormap. Make
10795         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
10796
10797         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
10798         gdk_pixbuf_*create_from_xpm_* in terms of
10799         gdk_pixbuf_new_from_xpm_data(), move into platform independent
10800         code.
10801
10802         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
10803         advantage of the new draw_rgb_32_image_dithalign.
10804
10805         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
10806
10807         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
10808         on each created GC.
10809
10810         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
10811
10812         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
10813         which we initialize from the drawable when the GC is created,
10814         if the drawable has a colormap.
10815
10816         * gdk/x11/gdkgc-x11.c: include string.h for memset.
10817
10818         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
10819
10820         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
10821
10822 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
10823
10824         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
10825         actually returning expose events, make sure to set
10826         the count field properly.
10827
10828         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
10829         accidentally reintroced bug which always cleared
10830         the graphics_exposures value. 
10831
10832 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
10833
10834         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
10835
10836 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
10837
10838         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
10839
10840 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
10841
10842         * docs/faq/gtk-faq.sgml: Start of Section 6.
10843
10844 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
10845
10846         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
10847         
10848         (Fixes problem with drawing childless frames. Pointed out
10849         by and a first patch from Anders)
10850         
10851         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
10852         compute a child_allocation, even if we don't have a child.
10853
10854         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
10855         Always chain to the parent's impl, even if we don't have a child.
10856
10857 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10858
10859         * gdk/gdkrgb.c: If possible, create only a single shm segment and
10860         use multiple parts of it instead of creating a bunch of separate
10861         segments, since the maximum number of segments per system is not
10862         large. (This might be worth backporting to GTK+-1.2.x if we make a
10863         new release )
10864
10865         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
10866         structure in preparation for per-colormap GdkRGB.
10867
10868         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
10869         to False when we get EINVAL from shmget so that the caller of
10870         gdk_image_new can retry with a smaller segment size.
10871
10872 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
10873
10874         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
10875
10876 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
10877
10878         * configure.in: make the current version number 1.3.1 (binary age 0,
10879         interface age 0).
10880         
10881         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
10882         gtkcompat.h is all we want.
10883
10884         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
10885         GLib primitive types. fixed g_type_register_fundamental() argument
10886         ordering.
10887
10888         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
10889         compiles.
10890
10891         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
10892         object code cleanup, comment trigraph fixes, etc...
10893
10894 2000-06-23  Havoc Pennington  <hp@redhat.com>
10895
10896         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
10897         instead of making up a bogus name for first_para_mark
10898
10899         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
10900         0 as a context ID
10901
10902 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
10903
10904         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
10905
10906 2000-06-21  Havoc Pennington  <hp@pobox.com>
10907
10908         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
10909         we didn't check window->bg_pixmap != GDK_NO_BG.
10910
10911         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
10912         gdk-pixbuf
10913
10914 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
10915
10916         * docs/faq/gtk-faq.sgm: Move file to here.
10917           TODO: Update Makfile.am 
10918
10919 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
10920
10921         * docs/gtk-faq.sgm: Add Section 2
10922
10923 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
10924
10925         * docs/gtk-faq.sgm: New file. Start of DocBook
10926           version of the FAQ.
10927
10928 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
10929
10930         * configure.in (GDK_PIXBUF_MAJOR): Define version
10931         numbers for GDK_PIXBUF_*, as they get substituted
10932         into a header file. Need to consider versioning
10933         for gdk-pixbuf more carefully later.
10934
10935 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
10936
10937         Work with srcdir != builddir.   
10938         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
10939         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
10940         * demos/testpixbuf.c: Likewise.
10941         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
10942         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
10943         <gdk/x11/gdkx.h>.
10944         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
10945         "gdk-pixbuf.h".
10946         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
10947
10948 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
10949
10950         * TODO.xml: Change 1.4 version numbers to 2.0.
10951
10952 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
10953
10954         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
10955         fixups to GTK+ standard.
10956
10957 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
10958
10959         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
10960         gdk-pixbuf.
10961
10962         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
10963         fixups for GObject.
10964
10965         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
10966         gdk-pixbuf with GDK dependencies moved into GDK.
10967         
10968         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
10969         move gdk-pixbuf-loader here until GObject has signals.
10970
10971         * demos/: New directory of demos. Move demos from
10972         gdk-pixbuf here.
10973
10974         * demos/pixbuf-init.c: Small bit of code to check for
10975         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
10976         set GDK_PIXBUF_MODULEDIR appropriately.
10977
10978         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
10979         define which no longer makes sense.
10980
10981 2000-06-21  Havoc Pennington  <hp@redhat.com>
10982
10983         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
10984         gtk_get_default_language
10985
10986         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
10987         new function to get the default language
10988
10989         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
10990         s/gtk_text_view_style_values/gtk_text_style_values/
10991
10992         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
10993         Add a "language" field to tags.
10994
10995         (gtk_text_tag_set_arg): Fix bug in setting
10996         "bg_full_height_set" tag.
10997
10998 2000-06-21  Havoc Pennington  <hp@redhat.com>
10999
11000         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
11001         in the interfaces
11002
11003         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
11004         stuff instead when possible.
11005
11006         * gtk/gtktexttypes.h: Delete some unused constants
11007
11008         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
11009         testtextbuffer.c: use glib instead of custom unicode routines
11010
11011 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
11012
11013         * docs/es/: Removed mistakenly added generated sgml
11014
11015         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
11016         Remove outdated info files.
11017
11018         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
11019         Moved tutorial files into subdir
11020
11021         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
11022         subdir.
11023
11024         * docs/man/gtk_button.pod: Remove. (contents will be
11025         integrated into gtk-reference button page.)
11026
11027         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
11028         docs/faq/Makefile.am: Adjust for new organization
11029
11030 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
11031
11032         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
11033         not $(MKINSTALLDIRS)
11034
11035 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
11036
11037         * gtk/testgtk.c (create_text): Finish the job Elliot started
11038         of removing font setting test for text widget. (Since text widget
11039         and GdkFont are not deprecated, and cause portability problems.)
11040
11041 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
11042
11043         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
11044         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
11045         Remove use of libunicode in favor of new GLib functions.
11046
11047         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
11048         nano-x, framebuffer. The X11 include is just a hack until we get
11049         the necessary functions in gdkcolor.h, so there is no reason to
11050         add other includes of platforms.
11051
11052         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
11053         window bigger than the screen change.
11054
11055         * gtk/testgtk.c: Revert some random changes from Elliot
11056         that had no particular point and were causing testgtkrc
11057         not to function correctly.
11058         
11059         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
11060         because GdkSegment and GdkRegionBox have the same fields,
11061         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
11062         results in clearer code.
11063
11064         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
11065         gdk_input_translate_coordinates): Fix missed GdkObjectification
11066
11067 2000-06-18  Elliot Lee  <sopwith@redhat.com>
11068
11069         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
11070         * gtk/gtk{plug,socket}.h: Missed commits from previous.
11071
11072 2000-06-20  Havoc Pennington  <hp@redhat.com>
11073
11074         * modules/linux-fb/Makefile.am: Make this compile
11075         without framebuffer enabled
11076
11077         * gdk/linux-fb/Makefile.am: Add conditional to not build
11078         framebuffer unless specified in configure
11079
11080         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
11081         the size of the target instead of source if -1 was passed for
11082         width/height
11083
11084         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
11085         width/height confusion.
11086
11087 2000-06-19  Havoc Pennington  <hp@redhat.com>
11088
11089         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
11090         GDK_DRAWABLE_XID. In the future, we probably want to make it
11091         faster with G_DISABLE_CHECKS turned on.
11092
11093 2000-06-14  Havoc Pennington  <hp@redhat.com>
11094
11095         * gdk/Makefile.am: add gdkpixmap.c
11096
11097         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
11098         s/gdk_image_init/_gdk_windowing_image_init
11099
11100         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
11101         ref/unref
11102
11103         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
11104
11105         * gdk/gdkcompat.h: remove GdkWindowType compat, since
11106         GdkWindowType is now non-deprecated; 
11107         change gdk_window_get_type() compat to be
11108         gdk_window_get_window_type().
11109
11110         * gdk/gdkdnd.h: make GdkDragContext a GObject.
11111
11112         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
11113         virtual GObject. Make all functions call into the vtable.
11114         Move gdk_image_put() guts in here. Remove GdkDrawableType
11115         and gdk_drawable_get_type(), these are now GdkWindow-specific.
11116         draw_image, get_depth, get_size, set_colormap, get_colormap,
11117         get_visual added to the vtable.
11118         
11119         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
11120         GObject. Virtualize everything. 
11121         (gdk_gc_new_with_values): remove check for destroyed window,
11122         because now GdkWindow::create_gc will check this.
11123         (gdk_gc_set_values): New function to set GC values, this 
11124         was already implemented but wasn't in the header
11125
11126         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
11127
11128         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
11129         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
11130         remove _gdk_window_class; add _gdk_window_impl_get_type() and
11131         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
11132         _gdk_windowing_window_init, rename gdk_image_init to
11133         _gdk_windowing_image_init.
11134         
11135         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
11136         (gdk_draw_layout): Remove check for destroyed window, 
11137         because all the drawable methods already check it.
11138         
11139         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
11140         Add gdkpixmap.c which contains implementation of GdkDrawable
11141         virtual table (by chaining to a platform-specific implementation
11142         object).
11143         
11144         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
11145         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
11146         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
11147         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
11148         GdkColormapPrivate. 
11149
11150         * gdk/gdktypes.h: #include <glib-object.h>
11151
11152         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
11153         Move most functionality to platform-specific implementation
11154         object. GdkWindow itself now handles the backing store, then
11155         chains to the platform-specific implementation.
11156         (gdk_window_get_window_type): return GdkWindowType of the window.
11157         (gdk_window_peek_children): New routine, returns the children of 
11158         a GdkWindow
11159         (gdk_window_get_children): Was in X11-specific code and did 
11160         XQueryTree. Changed to simply return a copy of window->children; 
11161         so it can go in cross-platform code.
11162         
11163         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
11164
11165         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
11166         GdkColormap; just changed to use the new private data instead
11167         of casting to GdkColormapPrivate.
11168
11169         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
11170         gdk_cursor_new().
11171
11172         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
11173         (private data member in the GObject). 
11174         (xdnd_manager_source_filter): Function had broken 
11175         error handling, fix it (use gdk_error_trap_push).
11176
11177         * gdk/x11/gdkdrawable-x11.c: This file now implements
11178         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
11179         base class is purely for the convenience of the X port,
11180         and not part of the interface to cross-platform GDK.
11181
11182         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
11183         
11184         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
11185         specific to X, and returned by the create_gc virtual method
11186         of GdkDrawableImplX11. 
11187         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
11188         rather than gchar, this was also changed in the GdkGC vtable.
11189         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
11190         mask is 0, return immediately, instead of checking every flag.
11191         This is faster, and keeps us from segfaulting if values is NULL
11192         and the mask contains some nonzero flags.
11193
11194         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
11195         GdkWindow.
11196
11197         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
11198         GdkWindowPrivate is gone.
11199
11200         * gdk/x11/gdkim-x11.c: rename things that got renamed.
11201
11202         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
11203         remove the image_put stuff that got transferred to GdkDrawable.
11204         
11205         * gdk/x11/gdkinput.c: renamings
11206
11207         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
11208
11209         * gdk/x11/gdkpixmap-x11.c: GObject conversion
11210
11211         * gdk/x11/gdkprivate-x11.h: indentation fixes
11212
11213         * gdk/x11/gdkproperty-x11.c: renamings
11214
11215         * gdk/x11/gdkselection-x11.c: renamings
11216
11217         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
11218         implements the platform-specific "impl" object.
11219         Moved gdk_window_get_children to gdk/gdkwindow.c
11220
11221         * gdk/x11/gdkx.h: Remove all the private structs and private datas
11222         that no longer exist. Add declaration of GdkGCX11 object here.
11223         Fix all the macros to still work. 
11224
11225         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
11226         GdkDragContext from the boxed types since they are now GObjects.
11227
11228         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
11229         moved xthickness/ythickness into the instance. GtkStyleClass
11230         functions are now in the standard vtable for GtkStyle, so you have
11231         to create a GObject subclass to write a theme engine.
11232         (gtk_style_copy): fixed a leaked PangoFontDescription
11233         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
11234         can be the standard GObject function.
11235         
11236         * Throughout GTK:
11237         s/style->klass->[xy]thickness/style->[xy]thickness
11238         s/pango_layout_unref/g_object_unref/
11239
11240         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
11241         
11242         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
11243         accessing GDK internals.
11244
11245         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
11246         accessing GDK internals.
11247
11248 2000-06-18  Elliot Lee  <sopwith@redhat.com>
11249
11250         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
11251
11252         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
11253         problem by calculating event position relative to the trough
11254         rather than the slider.
11255         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
11256
11257         * gdk/gdkgc.h: Add GDK_NOR.
11258
11259         * configure.in, Makefile.am: Add modules top level dir
11260         * configure.in: Only use pangox library if building x11 target.
11261         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
11262
11263 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
11264
11265         * gtk/gtkcolorsel.c: Change private class member to be named
11266         private_data throughout the file.
11267
11268         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
11269         private_data to avoid clashing with keyword.
11270
11271 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
11272
11273         * gdk/gdkdnd.h: Add comment to remove warning.
11274
11275 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
11276
11277         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
11278         Byelorussian language; changed the Makefile and file names 
11279         to reflect that.
11280
11281 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
11282
11283         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
11284         rather than gdk_window_hide; this makes things work
11285         correctly if the window is programmatically hidden while
11286         iconified.
11287
11288 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
11289
11290         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
11291         cut and paste typo where wrong pixmap was being
11292         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
11293
11294 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
11295
11296         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
11297         Add helper function to compute format / bytes 
11298         relationship. Use in a couple places to fix up
11299         errors which assume 8 * format.
11300
11301         * gtk/gtkselection.c (gtk_selection_request): Use 32
11302         rather than 8 * sizeof (GdkAtom), to work correctly
11303         on Alpha.
11304
11305 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
11306
11307         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
11308         libgtk.la
11309         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
11310         versions
11311
11312         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
11313         checking macros return NULL since the function has a return value.
11314
11315 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
11316
11317         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
11318         GTK+ from building at all.
11319
11320         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
11321
11322 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
11323
11324         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
11325         gtk/Makefile.am: make it possible to configure gtk for different
11326         targets on the same platform. The library name is now 
11327         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
11328         flag. Only the x11 target compiles right now.
11329         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
11330         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
11331         * gdk/nanox/gdk*generic*: delete generic region code.
11332         * gdk/linux-fb/gdk*generic*: delete generic region code.
11333         * README.nanox: update information.
11334         
11335 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
11336
11337         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
11338         prepend not append. (Pointed out by Brett Hall.)
11339
11340 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
11341
11342         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
11343
11344 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
11345
11346         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
11347         need this later, and this makes sure that the atexit for
11348         glib gets called after that for GDK, so atexits are
11349         properly ordered for object leak checking.
11350
11351         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
11352
11353         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
11354         pango_x_shutdown_display()
11355
11356         * gtk/simple.c (main): Close window on destroy.
11357
11358 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
11359
11360         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
11361         to treat initial creation different from setting with 
11362         regards to the graphics-exposures parameter, so add a parameter
11363         indicating whether this is initial or not.
11364
11365 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
11366
11367         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
11368         to sort of work by adding an extra return_exposes arg
11369         to gdk_event_translate() - it might be better to simply
11370         deprecate the function altogether and force people to rewrite
11371         without it. gdk_window_scroll() handles most of it, and where
11372         gdk_window_scroll() doesn't work, simply redrawing more does.
11373
11374         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
11375         assertion.
11376
11377         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
11378
11379         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
11380         bunch of pretty much useless /* Print debugging info */ comments 
11381         which had drifted away from the code they were commenting.
11382
11383 2000-06-02  Havoc Pennington  <hp@pobox.com>
11384
11385         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
11386         is in working order.
11387         
11388         * gtk/testtext.c: Change to reflect anonymous mark API
11389
11390         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
11391
11392         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
11393         field, which was unused.
11394
11395         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
11396         saves some typing.
11397
11398         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
11399
11400         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
11401         flag on the insertion point and selection bound
11402
11403         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
11404         make mark-manipulation functions take a GtkTextMark* instead of a
11405         mark name.
11406         
11407         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
11408         GtkTextMarkBody; will be used to detect attempts to delete
11409         the permanent marks (insert and selection bound)
11410
11411         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
11412
11413 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
11414
11415         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
11416         flag to on.
11417
11418         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
11419         Honor DOUBLE_BUFFRED_FLAG
11420
11421         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
11422         function to set the DOUBLE_BUFFERED flag.
11423
11424         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
11425         or not exposes done on the widget should be double-buffered.
11426
11427         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
11428         to be what would be expected. (Fixes problem with a
11429         g_return_if_fail() validating a TextDirection enumeration)
11430
11431 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
11432
11433         * gtk/gtkwidget.c: Remove all references to 
11434         offscreen flag which was no longer used.
11435
11436         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
11437
11438         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
11439         for non-null label_widget->parent.
11440
11441         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
11442         which no longer was used.
11443
11444         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
11445
11446         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
11447         for null arguments.
11448
11449         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
11450         check for destroyed windows.
11451
11452 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
11453
11454         * gtk/gtkimmulticontext.c: Add a finalize method and unref
11455         the slave context there.
11456
11457         * gtk/gtkinvisible.[ch]: Make reference counting behavior
11458         identical to GtkWindow.
11459
11460 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
11461
11462         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
11463         pangox to here, so we can write them independent of rendering
11464         system, using GDK primitives.
11465
11466         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
11467         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
11468         since we have a rendering-system independent implementation in
11469         terms of draw_glyphs().
11470         
11471         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
11472         function to render a single line.
11473
11474         * gdk/x11/gdkpango.c: Move the guts of this file mostly
11475         into ../gdkpango.c, which simplifies things, since we
11476         don't have to deal with raw X gc's.
11477
11478 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
11479
11480         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
11481         get the logical attributes for a given GtkTextLine.
11482
11483 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
11484
11485         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
11486         g_locale_get_codeset() to g_get_codeset() change.
11487
11488 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
11489
11490         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
11491         descriptions.
11492
11493         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
11494         the entry.
11495
11496         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
11497         redoing (vastly simplifying) for Pango. Still needs quite
11498         a bit of work. (Size selection is currently poor. List of 
11499         predefined sizes is not a good idea, since all of these
11500         sizes won't necessarily be distinct.)
11501
11502 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
11503
11504         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
11505         CODESET results for LANG=C.
11506
11507 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
11508
11509         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
11510         which takes a stringized pango font description;
11511         ignore the older 'font' and 'fontset' declarations.
11512
11513         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
11514         field with a GdkFont derived via gdk_font_from_description(),
11515         for compatibility. (Should we just remove it entirely?
11516         Probably too much compatibility breakage, but people
11517         should be migrating to the new Pango stuff as quickly
11518         as possible.)
11519
11520 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
11521
11522         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
11523
11524 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
11525
11526         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
11527         redoing; there are some bugs in size allocation right
11528         now, the semi-existant distinction between header / day
11529         fonts was removed, but, with Pango, could actually
11530         be made functional in a nice way.
11531         
11532         * gtk/testcalender: Move calender from examples into this
11533         directory as a test program. (We really need to restrcture
11534         testgtk into a whole directory full of tests for every
11535         widget or functionality group, separated into multiple .c
11536         files.)
11537
11538 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
11539
11540         * gtk/testgtk.c (file_exists): Fix stupid typo that
11541         was keeping RC file from being loaded.
11542
11543         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
11544         RC file font code.
11545
11546 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
11547
11548         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
11549         Add function to load a GdkFont from a PangoFontDescription.
11550
11551 2000-05-29  Tor Lillqvist  <tml@iki.fi>
11552
11553         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
11554         variable should be of type GdkEventPrivate.
11555
11556 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
11557
11558         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
11559         to have any widget for the label, use a GtkLabel widget
11560         to display the text. (Based partially on a patch from
11561         Anders Carlson.)
11562
11563         (Quite a bit of code reorganization - strip 90% of the
11564         guts out of gtkaspectframe and add a single virtual
11565         func to GtkFrameClass - compute_child_allocation.)
11566
11567 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
11568
11569         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
11570         (Removed clist->row_center_offset field because caching
11571         it wasn't saving time or code, added private function
11572         _gtk_clist_create_cell_layout()).
11573
11574 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
11575
11576         * gtk/gtkaccellabel.c: Pangoized.
11577
11578         * gtk/[hv]ruler.c: Pangoized
11579
11580 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
11581
11582         * gtk/gtkfilesel.c (gtk_file_selection_init):
11583         Use gtk_clist_set_column_auto_resize() to remove need
11584         need for manual column width computations.
11585
11586 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
11587
11588         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
11589         ensuring Pango correctness, and considerably simplifying the
11590         code.
11591         
11592         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
11593
11594         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
11595         getting of numbers of lines.
11596
11597         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
11598         to the actual requested width of the lable, not to the wrap
11599         width we set.
11600
11601         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
11602
11603         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
11604           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
11605
11606         * gtk/gtktextview.c: Fix structure inheritance.
11607
11608         * gtk/gtkprogressbar.c: Pangoize.
11609
11610 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
11611
11612         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
11613         in a function.
11614
11615         * gtk/gtktextlayout.c (find_display_line_above): Fixed
11616         bug with computing line tops.
11617
11618         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
11619
11620 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11621
11622         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
11623         and y_offset coordinates to do what we need now. (The offset between
11624         buffer and layout coordinates has been reintroduced, but is a 
11625         bit different than before.)
11626
11627         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
11628         handle the adjustments ourselves, and scroll as necessary using
11629         the new gdk_window_scroll().
11630         
11631         The advantage of this is that when we are incrementally revalidating,
11632         we are essentially rearranging things around the visible portion
11633         of the screen. With the old setup, the visible portion of the
11634         screen was moved around in the layout, so scrolling and redrawing
11635         to track that caused jumping of the display. Since we now
11636         control the scrolling ourselves, we can suppress this and
11637         only redraw when things actually change.
11638
11639 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
11640
11641         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
11642         the region not just redisplay it after-all, since we store the
11643         cursors in the LineDisplay. (Ugly interactions here between
11644         GtkLayout and GtkTextBTree here.)
11645         
11646         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
11647
11648 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
11649
11650         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
11651         Added function to scroll contents of a window while keeping the
11652         window constant. Works by XCopyArea or guffaw-scrolling depending
11653         on the details of how the window is set up. (guffaw-scrolling
11654         still needs to be filled in.)
11655
11656 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
11657
11658         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
11659         move the debugging that was tied to a global variable
11660         to that.
11661
11662         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
11663
11664         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
11665         validated flag, in line data instead of setting height/width to
11666         -1. This allows us to perform operations with partially invalid
11667         buffer (using the old size for invalid lines) and thus to do
11668         incremental vaidation. Keep height/width aggregates up to date
11669         when deleting text and rebalancing the tree.
11670
11671         * gtk/gtktextbtree.[ch]: Add functions validate a line
11672         (gtk_text_btree_validate_line), and to validate up
11673         to a number of pixels (gtk_text_btree_validate).
11674
11675         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
11676         that indicates that something is changed and a revalidation
11677         pass is needed. Change ::need_repaint to ::changed, and
11678         make it take old and new yranges instead of a rectangle.
11679
11680         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
11681         the line_data_destroy() function from 
11682         gtk_text_btree_add_view() to a virtual function in 
11683         GtkTextLayout
11684
11685         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
11686         since we are handling partial repaints in a different fashion
11687         now.
11688
11689         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
11690         of the selection instead of queueing a repaint on the
11691         entire widget.
11692
11693         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
11694         get_selection_bounds() down to btree, make the function
11695         in buffer a wrapper around the btree function.
11696
11697         * gtk/gtktextlayout.[ch]: Add functions to check if the
11698         layout is valid and to recompute either a range of pixels
11699         aroudn a line or a certain total number of pixels.
11700
11701         * gtk/gtktextlayout.[ch]: Cache a single line display;
11702         now that we only redraw the needed portions, the hit rate
11703         for this cache is quite high.
11704         
11705         * gtk/gtktextview.[ch]: Keep track of the first paragraph
11706         on the screen so that when re-laying-out the buffer, we can
11707         keep the same place. This requires connecting to ::value_changed
11708         on the adjustments
11709
11710         * gtk/gtktextview.[ch]: Add idle functions to revalidate
11711         the buffer after we receive an ::invalidated signal.
11712         
11713 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
11714
11715         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
11716         to max of allocation and layout size, not just to the
11717         layout size.
11718
11719         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
11720         Invalidate window so it gets redrawn properly.
11721
11722         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
11723         to mean the entire window.
11724
11725         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
11726         into public header.
11727
11728 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
11729
11730         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
11731         to get the name of a mark.
11732
11733         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
11734         to find the paragraph from a y position.
11735
11736 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
11737
11738         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
11739         nodes have width/height >= 0, not > 0.
11740
11741 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
11742
11743         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
11744         Add a size_only flag, so when we only need the size, we don't create
11745         useless appearance attributes.
11746
11747         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
11748         duplicate setting of font description.
11749
11750         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
11751
11752 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11753
11754         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11755         EXTRA_DIST. It does not work well when the file that
11756         everything depends on is not in the tarball.
11757
11758 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11759
11760         * gtk/testgtk.c: Some hacks and fixes so that it basically
11761         works when not sitting in the GTK+ build tree.
11762
11763 2000-05-03  Havoc Pennington  <hp@redhat.com>
11764
11765         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
11766         Properly determine the ordering of the tag root and the current
11767         line within the tree. Previous algorithm only worked if the tag
11768         root's immediate parent was the common root of both the current
11769         line and the tag root.
11770
11771 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
11772
11773         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
11774         alignment.
11775
11776         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
11777         the widget text directional dynamically.
11778
11779         * gtk/gtktextview.[ch]: Added functions to get and set default
11780         wrap mode.
11781
11782 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
11783
11784         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
11785         in cursor location computation.
11786
11787 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
11788
11789         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
11790         vadjusment values properly when layout gets smaller.
11791
11792         * gtk/gtktextview.c (need_repaint_handler): Areas being
11793         passed in are far completely inaccurate, and sometimes
11794         too small, so, for now, just queue a redraw on the
11795         whole visible region.
11796
11797 2000-04-25  Havoc Pennington  <hp@redhat.com>
11798
11799         * gtk/gtktextbtree.c (summary_destroy): new function to 
11800         destroy tag summary nodes
11801         (gtk_text_line_next_could_contain_tag): this function was 
11802         totally broken if the line passed in wasn't below the tag
11803         root. Fix it.
11804         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
11805         "wildcard" case, we have to do a linear scan. Blah.
11806         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
11807         we have to do the linear scan
11808         (tag_removed_cb): When a tag is removed from the tag table, 
11809         remove the GtkTextTagInfo node from the btree.
11810         (gtk_text_btree_spew): Implement the spew function, for 
11811         our debugging pleasure.
11812
11813 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
11814
11815         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
11816         a problem with referring to the wrong buffer.
11817
11818         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
11819
11820         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
11821         font description to gtk_style_new() - otherwise things
11822         don't work without a .gtkrc file.
11823
11824         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
11825         tags table if we create it ourself, too.
11826
11827         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
11828         it was conflicting with XKB modifiers.
11829
11830         * gtk/gtktextview.[ch]: Add simple support for 
11831         GtkIMContext.
11832
11833 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
11834
11835         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
11836         with deletion from last commit.
11837
11838 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
11839
11840         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
11841         in the context from the current locale.
11842         
11843         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
11844         context, not hardcoded value.
11845
11846         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
11847         not logical.
11848
11849 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11850
11851         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
11852         attributes - that doesn't handle partial-glyph selection
11853         properly. Instead use new pango_layout_line_get_x_ranges()
11854         functionality to draw the selection.
11855
11856         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
11857         now properly handles out-of-range coordinates.
11858
11859         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
11860
11861         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
11862         public.
11863
11864         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
11865         for paragraphs opposite to the base direction of the widget.
11866
11867         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
11868
11869         * gtk/gtktextlayout.c: Don't split segments on marks, since that
11870         causes Arabic words to reshape as you cursor through.
11871
11872         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
11873         cursor position when moving vertically with the arrow keys and
11874         scrolling with page-up/page-down. (Arrow keys save only the X,
11875         scrolling saves both X and Y.)
11876
11877         This means you can line-up / line-down or page-up / page-down
11878         without losing your place, and also that moving vertically
11879         with the cursor keys keeps the same X position, not the same
11880         character count:
11881
11882         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
11883         arrow keys move by display lines, not paragraphs.
11884
11885 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11886
11887         * gtk/gtklayout.c: Make sure that the bin window is at least
11888         as big as the allocation. (Should we also make sure that the
11889         bin window is big enough to completely cover widget->window?)
11890
11891         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
11892         function to get the onscreen rectangle.
11893
11894         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
11895         for offsets in window coordinates.
11896
11897 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
11898
11899         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
11900         confusion.
11901
11902         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
11903         from the widget direction.
11904
11905         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
11906         Add a "direction" attribute.
11907
11908         * gtk/gtktextview.c: global s/tkxt/text_view/.
11909
11910         * gtk/testtext.c: Added long block of text in Arabic, to test out
11911         the direction attributes. (Some problems with the shaping system
11912         for arabic become obvious - like the fact the cursor splits words
11913         into unjoined pieces.)
11914
11915 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
11916
11917         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
11918
11919         * gtk/gtktextlayout.c: Fix up alignment.
11920
11921         * gtk/testtext.c: Add some tests for centering, wrapping.
11922
11923 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
11924
11925         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11926         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
11927         If we wrote GTK+-specific layout-render function this could just replace
11928         the draw_layout() operation in the vtable.
11929
11930         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
11931         pango_layout_get_cursor_pos() and use that function.
11932
11933         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
11934         is a non-static symbol.
11935
11936         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
11937         with gtk_text_btree_find_line_by_y()
11938
11939         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
11940         renderer that handles GtkTextAppearance attributes.
11941
11942         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
11943
11944           - Move the values in the style that don't affect geometry into a
11945             GtkTextAppearance structure.
11946           - Change underline to take a PangoUnderline and "font" a string
11947             representation of a font description
11948           - Add a "font_desc" attribute which takes a FontDescription structure.
11949
11950         * gtk/gtktextlayout.[ch]:
11951
11952           - Get rid of the display-line list per each line. Instead, we
11953             generate, on demand, a GtkTextLineDisplay structure which]
11954             contains a PangoLayout * and other necesary information
11955             (offsets, cursor locations) for displaying a paragraph.
11956           - Get rid of the code to wrap lines, create display chunks,
11957             etc. Instead, we just go through a paragraph and convert
11958             it into the necessary inputs to a PangoLayout.
11959           - Implement a new attribute type, GtkTextAttrAppearance. This
11960             holds a GtkTextAppearance, and is used to pass colors, 
11961             stipple, etc, through from the layout to the display without
11962             having to use lots and lots of individual attributes.
11963           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
11964             in terms of PangoLayout functions.
11965         
11966         * gtk/gtktextview.c: 
11967          
11968           - Handle passing the necessary PangoContext to the layout
11969           - Some fixups in painting to deal with the automatic backing store
11970             and offsetting of GTK+-1.4
11971           - Add a style_set handler so that the default style reacts
11972             properly to theme changes.
11973         
11974         * gtk/gtktext?*.[ch]: Random code-style fixes.
11975
11976         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
11977
11978 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
11979
11980         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
11981         in original form preparatory to Pango-ization and gdkimcontext-ization.
11982
11983 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
11984
11985         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
11986         so that we can derive from gtkimcontext in language bindings properly.
11987
11988 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
11989
11990         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
11991         Add a compose table including (almost) all the compose combinations
11992         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
11993         data in the XIM implementation.
11994
11995         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
11996         Moved functions to convert keyvalues from and to unicode here from
11997         the win32 port and made them public.
11998
11999 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12000
12001         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
12002
12003 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
12004
12005         * gtk/gtkimcontext.[ch]: Base class for new input context system
12006
12007         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
12008         the real input context implementation to be loaded from modules
12009         and switched on the fly.
12010
12011         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
12012         context that just does direct keysymbol => unicode translation.
12013
12014         * gtk/gtkentry.[ch]: Start switching editing over to using
12015         GtkInputContext. (No handling of preedit yet.)
12016
12017 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
12018
12019         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
12020         many substitutions. (klass should not be subsituted.)
12021
12022 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
12023
12024         * configure.in: Add checks for Pango
12025
12026         * configure.in docs/Makefile.am: Add test for sgml2html
12027         and allow 'make dist' without building html, but print out
12028         warnings in that case. (For making snapshots)
12029
12030         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
12031         Add Pango libraries and C flags
12032
12033         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12034         Add function (gdk_draw_layout) to draw a pango layout.
12035
12036         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
12037         for getting Pango contexts for GDK.
12038
12039         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
12040
12041         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
12042         editing.
12043
12044         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
12045         keysym => unicode translations. More languages can be added
12046         here, but real input-method support is needed.
12047
12048         * docs/Changes-1.4.txt: Added note about entry behavior.
12049         
12050         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
12051         to set the reading direction for a widget and the global direction.
12052         Add test which allows toggling the global direction. Two private
12053         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
12054
12055         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
12056           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
12057
12058         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
12059
12060         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
12061         underlining now handled by Pango.
12062
12063         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
12064         to RCStyle and Style. (Having both this and the old font name and GdkFont 
12065         is temporary.)
12066
12067         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
12068         convenience functions for creating contexts and layouts for widgets.
12069
12070         * gtk/testgtk.c: Enhance label tests with multilingual labels.
12071
12072 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
12073
12074         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
12075         titles to be active, even if they aren't visible.
12076         (gtk_clist_column_titles_passive):  Ditto.
12077
12078 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
12079
12080         * gtkmenu.c:
12081         * gtkmenu.h:
12082         * gtktypeutils.h: Spelling/grammar fixes in comments.
12083
12084 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
12085
12086         * gdk/nanox/*.h: add missing header files.
12087
12088 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
12089
12090         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
12091         send_event to TRUE.
12092         (gtk_drawing_area_size): queue a resize.
12093
12094 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
12095
12096         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
12097         the handlers, also invalidate them. bug nailed down by Karl Nelson
12098         <kenelson@ece.ucdavis.edu>.
12099
12100 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
12101
12102         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
12103         "(nil)" foundries, patch from Grigorios Magklis.
12104
12105         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
12106         on non-available fonts, based on a patch by Grigorios Magklis
12107         <maglis@cs.rochester.edu>.
12108
12109 2000-05-18  Elliot Lee  <sopwith@redhat.com>
12110
12111         * gdk/x11/gdkregion-generic.c: If a region does not have any
12112         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
12113         instead of GDK_OVERLAP_RECTANGLE_IN.
12114
12115 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
12116
12117         * gtk/gtklayout.c (gtk_layout_map): Remove references to
12118         OFFSCREEN, as it is no longer necessary.
12119
12120 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
12121
12122         * gtk/gtkcolorsel.c: Patch from David Santiago
12123         <mrcooger@cyberverse.com> to change things so that the 
12124         indicator of the active palette entry is done independently,
12125         not via the focus, since it should always be visible.
12126
12127 2000-05-17  Tor Lillqvist  <tml@iki.fi>
12128
12129         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
12130         refcount leaks as in the X11 backend.
12131
12132         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
12133         cosmetics.
12134
12135         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
12136         backend. Add _gdk_windowing_window_destroy().
12137
12138         * gtk/gtkcolorsel.c: Include correct backend-specific header.
12139         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
12140         either, but these probably do exist on nanox?)
12141         
12142         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
12143         which isn't necessarily defined by <math.h>.
12144
12145         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
12146         ancestry past GtkObject.
12147
12148         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
12149         from DLL on Win32.
12150
12151         * gtk/gtk.def: Update corresponding to recent changes.
12152
12153         * gtk/makefile.{cygwin,msc}: Updates.
12154
12155 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
12156
12157         * docs/Changes-1.4.txt: A bit of editing.
12158
12159         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
12160         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
12161         to clear the update area for the window, and clear it
12162         when hiding a window.
12163
12164         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
12165         if window destroyed.
12166
12167         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
12168
12169         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
12170         gdk_window_destroy() to the generic code, since there was a lot of 
12171         window-system-independent logic it in. Add a function:
12172         
12173          _gdk_window_destroy() 
12174
12175         to the internal API to destroy a window without unreferencing it.
12176         Add a function:
12177
12178          _gdk_windowing_window_destroy()
12179
12180         That does the windowing-system-dependent part of destroying 
12181         the window.
12182
12183 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
12184
12185         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
12186
12187 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
12188
12189         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
12190         Make gtk_widget_shape_combine_mask() keep a reference count on
12191         the pixmap since it keeps it around.
12192
12193 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
12194
12195         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
12196         leak.
12197
12198         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
12199         leak with event filters.
12200
12201 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
12202
12203         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
12204         signal handlers with the right data arguments. (Fixes
12205         some warnings when a widget was repeatedly set as a drag
12206         destination.)
12207
12208         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
12209         window so we can avoid avoid setting the DND properties on the
12210         toplevel window repeatedly.
12211
12212 2000-05-13  Tor Lillqvist  <tml@iki.fi>
12213
12214         * gdk/win32/gdkwin32.h: Define more message types missing from
12215         mingw headers.
12216
12217         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
12218         call gdk_window_destroy_notify(). It was never called. This
12219         probably meant that the GdkWindow was never freed. Thanks Owen for
12220         noticing (!).
12221
12222         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
12223         window as destroyed before calling DestroyWindow(). DestroyWindow()
12224         causes a call to the window procedure (gdk_WindowProc), which
12225         calls gdk_event_translate(), which calls
12226         gdk_window_destroy_notify(), which gets confused unless the window
12227         is set as destroyed.
12228
12229         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
12230         this function to indicate it's win32 only. Put inside #ifdef
12231         G_ENABLE_DEBUG.
12232
12233         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
12234         debugging function. (gdk_event_translate:) Add a default branch
12235         that uses the above function to print debug messages with all
12236         Windows messages symbolically.
12237
12238         * gdk/win32/gdkprivate-win32.h: Declare it, and
12239         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
12240
12241 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
12242
12243         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
12244         public header file.
12245
12246 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
12247
12248         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
12249
12250         * gtk/gtktext.c: made the adjustments no-construct args, simply
12251         provide default adjustments.
12252         (gtk_text_destroy): release adjustments.
12253
12254         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
12255         adjustment argument non-construct.
12256
12257         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
12258         instead of in finalize.
12259         (gtk_progress_get_text_from_value): 
12260         (gtk_progress_get_current_text): 
12261         (gtk_progress_set_value): 
12262         (gtk_progress_get_percentage_from_value): 
12263         (gtk_progress_get_current_percentage): 
12264         (gtk_progress_set_percentage): 
12265         (gtk_progress_configure): ensure an adjustment is present.
12266
12267 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
12268
12269         * gtk/gtkcolorsel.[hc]:
12270         * gtk/gtkcolorseldialog.[hc]:
12271         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
12272         their parent implementation, use bit fields for boolean values, don't
12273         create unused widgets, usage of glib types, braces go on their own
12274         lines, function argument alignment, #include directives etc. etc. etc..
12275
12276         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
12277
12278 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
12279
12280         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
12281
12282         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
12283         of NULL.
12284
12285         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
12286         to freed data.
12287         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
12288
12289         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
12290         to NULL when the toplevel is getting destroyed.
12291         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
12292         (gtk_menu_destroy): 
12293         (gtk_menu_init): store the information of whether we have to
12294         readd the initial child ref_count during destruction in a new
12295         GtkMenu field needs_destruction_ref_count.
12296
12297         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
12298         here, those reading: learn from my mistake! ;)
12299         in order for set_?adjustment to support a default adjustemnt if
12300         invoked with an adjustment pointer of NULL, the code read (pseudo):
12301         if (v->adjustment) unref (v->adjustment);
12302         if (!adjustment) adjustment = adjustment_new ();
12303         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
12304         now imagine the first unref to actually free the old adjustment and
12305         adjustment_new() creating a new adjustment from the very same memory
12306         portion. here, the latter comparision will unintendedly fail, and
12307         all hell breaks loose.
12308         (gtk_viewport_set_hadjustment):
12309         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
12310         after unreferencing it.
12311
12312         * gtk/gtkcontainer.[hc]: removed toplevel registration
12313         functions: gtk_container_register_toplevel(),
12314         gtk_container_unregister_toplevel() and
12315         gtk_container_get_toplevels() which had wrong semantics
12316         anyways: it didn't reference and copy the list.
12317
12318         * gtk/gtkwindow.c: we take over the container toplevel registration
12319         bussiness now. windows are registered across multiple destructions,
12320         untill they are finalized. the initial implicit reference count
12321         users are holding on windows is removed with the first destruction
12322         though.
12323         (gtk_window_init): ref & sink and set has_user_ref_count, got
12324         rid of gtk_container_register_toplevel() call. add window to
12325         toplevel_list.
12326         (gtk_window_destroy): unref the window if has_user_ref_count
12327         is still set, got rid of call to
12328         gtk_container_unregister_toplevel().
12329         (gtk_window_finalize): remove window from toplevel list.
12330         (gtk_window_list_toplevels): new function to return a newly
12331         created list with referenced toplevels.
12332         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
12333
12334         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
12335         adjustment a non-construct arg.
12336         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
12337         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
12338         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
12339
12340         * gtk/gtkrange.c: added some realized checks.
12341         (gtk_range_destroy): get rid of the h/v adjustments in the
12342         destroy handler instead of finalize. remove timer.
12343         (gtk_range_get_adjustment): demand create adjustment.
12344
12345         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
12346         we simply create them on demand now and get rid of them in
12347         the destroy handler.
12348         (gtk_viewport_destroy): get rid of the h/v adjustments in the
12349         destroy handler instead of finalize.
12350         (gtk_viewport_get_hadjustment): 
12351         (gtk_viewport_get_vadjustment): 
12352         (gtk_viewport_size_allocate): demand create h/v adjustment
12353         if required.
12354
12355         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
12356         gtk_widget_real_destroy () functionality.
12357         (gtk_widget_real_destroy): reinitialize with a new style, instead
12358         of setting widget->style to NULL.
12359
12360 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
12361
12362         * gtk/gtkcalendar.c:
12363         * gtk/gtkbutton.c: ported _get_type() implementation over to
12364         GType, either to preserve memchunks allocation facilities,
12365         or because Gtk+ 1.0 GtkTypeInfo was still being used.
12366
12367         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
12368         over. prepare for ::destroy to be emitted multiple times.
12369         removed reference tracer magic. chain into GObjectClass.shutdown()
12370         to emit ::destroy signal.
12371
12372         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
12373         fundamental.
12374
12375         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
12376         cludge.
12377
12378         * gtk/gtksocket.c:
12379         * gtk/gtkplug.c:
12380         * gtk/gtklayout.c:
12381         * gtk/gtklabel.c:
12382         * gtk/gtkargcollector.c:
12383         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
12384         not being a fundamental anymore, and to work with the new
12385         type system (nuked fundamental type varargs clutter).
12386
12387         * gtk/*.c: install finalize handlers in the GObjectClass
12388         part of the class structure.
12389         changed direct GTK_OBJECT()->klass accesses to
12390         GTK_*_GET_CLASS().
12391         changed direct object_class->type accesses to GTK_CLASS_TYPE().
12392
12393         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
12394         GType. made most of the GTK_*() type macros and Gtk* typedefs
12395         simple wrappers around macros and types provided by GType.
12396         most notably, a significant portion of the old API vanished:
12397         GTK_TYPE_MAKE(),
12398         GTK_TYPE_SEQNO(),
12399         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
12400         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
12401         GTK_TYPE_ARGS,
12402         GTK_TYPE_CALLBACK,
12403         GTK_TYPE_C_CALLBACK,
12404         GTK_TYPE_FOREIGN,
12405         GtkTypeQuery,
12406         gtk_type_query(),
12407         gtk_type_set_varargs_type(),
12408         gtk_type_get_varargs_type(),
12409         gtk_type_check_object_cast(),
12410         gtk_type_check_class_cast(),
12411         gtk_type_describe_tree(),
12412         gtk_type_describe_heritage(),
12413         gtk_type_free(),
12414         gtk_type_children_types(),
12415         gtk_type_set_chunk_alloc(),
12416         gtk_type_register_enum(),
12417         gtk_type_register_flags(),
12418         gtk_type_parent_class().
12419         replacements, where available are described in ../docs/Changes-1.4.txt.
12420         implemented compatibility functions for the remaining API.
12421
12422         * configure.in: depend on glib 1.3.1, use gobject module.
12423
12424 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
12425
12426         * TODO.xml: Various updates to current status.
12427
12428 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
12429
12430         * gtk.m4: Print out version when test succeeds.
12431
12432 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
12433
12434         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
12435         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
12436         
12437         (Original triangle color selector from Simon Budig
12438         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
12439         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
12440         Santiago <mrcooger@cyberverse.com>)
12441
12442         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
12443         out into a separate widget.
12444
12445         * gtk/testgtk.c: Add some checkbuttons for toggling palette
12446         and opacity controls.
12447
12448 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
12449
12450         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
12451         snuck in prematurely.
12452
12453 2000-05-07  Tor Lillqvist  <tml@iki.fi>
12454
12455         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
12456         had deleted a ! operator by mistake, which caused
12457         GDK_SELECTION_CLEAR events never to be generated, which caused
12458         only the first copy to the clipboard from an gtkeditable to
12459         actually cause a copy to the Windows clipboard.
12460
12461 2000-05-06  Tor Lillqvist  <tml@iki.fi>
12462
12463         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
12464         compilation, too. Current mingw gcc distributions include the
12465         necessary headers. Also the necessary IIDs are now in mingw
12466         headers/libraries, and own definitions unnecessary.
12467
12468         More hacking on OLE2 DND, still doesn't work though, and thus
12469         ifdeffed out.
12470
12471         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
12472         here, too.
12473
12474 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
12475
12476         * gdk/nanox/*: nano-X port work in progress.
12477         * gdk/simple.c: simple test for Gdk.
12478         * README.nanox: notes about the port: read this first!
12479         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
12480         with nano-X.
12481
12482 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
12483
12484         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
12485         gdk_window_clear() into common code, implement in terms of
12486         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
12487         not redirected to the backing rectangle.
12488
12489 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
12490
12491         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
12492         EXTRA_DIST. It does not work well when the file that
12493         everything depends on is not in the tarball.
12494
12495 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
12496
12497         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
12498         with recursion where process_updates() is called from
12499         an expose handler. (GtkTextView is highly broken in
12500         doing this, but it should work, so it is a nice test
12501         case.)
12502
12503 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12504
12505         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
12506         handle the case where updates are queued during processing of
12507         updates.
12508
12509 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
12510
12511         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
12512         window is on gdk_display - use that instead of segfaulting.
12513
12514 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
12515
12516         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
12517         broken and require an empty arg, give it to them.
12518
12519 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
12520
12521         * gtk/gtklabel.h: indentation fixes.
12522
12523 2000-05-02  Tor Lillqvist  <tml@iki.fi>
12524
12525         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
12526         draw too narrow or too low arcs, they seem to fail, at least with
12527         some display drivers.
12528
12529         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
12530
12531         Large changes to the Win32 backend, partially made necessary by
12532         the changes to the backend-independent internal
12533         structures. Attempts to implement similar backing store stuff as
12534         on X11. The current (CVS) version of the Win32 backend is *not* as
12535         stable as it was before the no-flicker branch was merged. A
12536         zipfile with that version is available from
12537         http://www.gimp.org/win32/. That should be use by "production"
12538         code until this CVS version is usable. (But note, the Win32
12539         backend has never been claimed to be "production quality".)
12540
12541         * README.win32: Add the above comment about versions.
12542
12543         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
12544
12545         * gdk/gdk.def: Update.
12546
12547         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
12548         presumably be replaced by some more better mechanism as 1.4 gets
12549         closer to release shape.
12550
12551         * gdk/makefile.{cygwin,msc}: Update.
12552
12553         * gdk/win32/*.c: Correct inclusions of the backend-specific and
12554         internal headers. Change code according to changes in these. Use
12555         gdk_drawable_*, not gdk_window_* where necessary.
12556
12557         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
12558         our old DND.
12559
12560         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
12561         to interpret single characters as UTF-8. Thanks to Hans Breuer.
12562         Use correct function name in warning messages.
12563
12564         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
12565         GSourceFuncs gdk_event_prepare and gdk_event_check.
12566         (gdk_event_get_graphics_expose): Do implement, use
12567         PeekMessage. Thanks to Hans Breuer.
12568         (event_mask_string): Debugging function to print an GdkEventMask.
12569         (gdk_pointer_grab): Use it.
12570
12571         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
12572         (old) book I used claimed was Hangul actually is CJK Unified
12573         Ideographs Extension A. Also, Hangul Syllables were missing.
12574         Improve logging.
12575
12576         * gdk/win32/gdkgc-win32.c: Largish changes.
12577
12578         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
12579         g_win32_getlocale() from GLib, and not setlocale() to get current
12580         locale name.
12581
12582         * gdk/win32/gdkprivate-win32.h
12583         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
12584         gdkwin32.h, similarily as in the X11 backend.
12585
12586         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
12587         assignment was used instead of equals in if test. Thanks to Hans
12588         Breuer.
12589
12590         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
12591         the X11 version.
12592
12593         * gdk/win32/makefile.{cygwin,msc}
12594         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
12595         path to the Win32 headers that works also with the mingw compiler.
12596
12597         * gtk/gtkstyle.c: Include <string.h>.
12598
12599 2000-04-26  Havoc Pennington  <hp@redhat.com>
12600
12601         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
12602         replacing the broken gtk_label_get ()
12603
12604 2000-04-15  Havoc Pennington  <hp@pobox.com>
12605
12606         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
12607         this keeps scanner scripts from getting confused.
12608
12609         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
12610         data, rather than void
12611
12612 2000-04-15  Tor Lillqvist  <tml@iki.fi>
12613
12614         * gtk/gtkclist.c (gtk_clist_motion)
12615         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
12616         with is_hint FALSE, get x and y from the event. They used to be
12617         used uninitialised. The Win32 backend never sends motion events
12618         marked as hints. This for instance fixes the annoying file and
12619         font selector behaviour in the Win32 version.
12620
12621 2000-04-14  Tor Lillqvist  <tml@iki.fi>
12622
12623         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
12624         gtk_private_n_signals variables, they are used by some software,
12625         sigh.
12626
12627         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
12628         installation directory from the Registry, where the installer
12629         should have put it.
12630
12631 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
12632
12633         * gdk/x11/Makefile.am: Fix problem with installation directory for
12634         gdkx.h
12635
12636         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
12637         <mrcooger@cyberverse.com> so that when selecting menus with the
12638         mouse, the first item will not be selected, but when selecting
12639         with an accelerator, or navigating left-right on a menubar with
12640         the menus popped up, the first item will be selected.
12641
12642 2000-04-05  Dan Damian  <dand@dnttm.ro>
12643
12644         * configure.in: Added "ro" to ALL_LINGUAS.
12645
12646 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
12647
12648         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
12649         indentation.
12650
12651         * Makefile.am (EXTRA_DIST): Fix typo.
12652
12653         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
12654         to catch gdkconfig.h
12655
12656         * gtk/gtkitemfactory.c: Added FIXME.
12657
12658 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
12659
12660         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
12661         s/return_if_fail/return_val_if_fail/g and add a return value.
12662
12663 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
12664
12665         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
12666         merge slipup.
12667
12668         * gdk/gdkinput.h: Fix missing line from merge.
12669
12670 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
12671
12672         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
12673         instead of gdkprivate.h.
12674
12675 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
12676
12677         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
12678         parent class to correctly be GtkDialogClass.
12679
12680 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
12681
12682         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
12683         toplevel windows and their immediate children by their parents,
12684         since the size of toplevel windows is out of our immediate
12685         control and we don't get any real benefit from trying to track
12686         this size for clipping.
12687
12688         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
12689         for input_only windows.
12690
12691         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
12692         to fix some hacks and make sure that we don't try to set the
12693         background of input only windows.
12694
12695 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
12696
12697         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
12698         the _really_ internal stuff, and leave gdkprivate.h for the fake private
12699         stuff that we've traditionally exposed.
12700
12701         * gdk/**.c: Use gdkinternals.h where appropriate.
12702
12703         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
12704         not include gdkprivate-x11.h, move all stuff of conceivable public
12705         interest into gdkx.h; keep all really private stuff in
12706         uninstalled header gdkprivate-x11.h.
12707
12708         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
12709         image->image_put on windows through a new function _gdk_window_draw_image()
12710         to allow us to do backing store for images. (Sort of ugly)
12711
12712         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
12713         contexts locally so that we can offset them properly when drawing 
12714         onto backing pixmaps.
12715
12716         * gdk/gdkinput.h: Reindented
12717
12718         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
12719         pixmap or color for the window, so we can properly initialize
12720         our double-buffer pixmaps, and also so that we temporarily set
12721         a background of None while scrolling.
12722
12723         * gdk/gdkregion.h: Revise region boolean operators to have an
12724         interface that is actually convenient - switch from creating new
12725         regions on every op, to "methods" that modify existing regions
12726         (A = A OP B). 3 argument forms which allow dest == src, would also
12727         be possible, but the current interfaces seem to map nicely
12728         onto what needs to be done. (There is quite a lot of region
12729         code in GDK now.)
12730
12731         * gdk/gdkregion.h: Add constructor from rectangle and a copy
12732         operator.
12733
12734         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
12735         gdkpoly-generic.h: Copy region code from Xlib, switch it over
12736         to 32 bit coordinates, modify it to be mostly GTK+ style
12737         and to have interfaces that match gdkregion.h.
12738
12739         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
12740         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
12741         create a backing pixmap and redirect all drawing to
12742         that backing pixmap until a matching gdk_window_end_paint().
12743
12744         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
12745         Create a special drawable class for GtkWindow's that 
12746         redirects the drawing to the backing pixmap as necessary
12747         and then calls the real operations in _gdk_windowing_window_class.
12748
12749         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
12750         Store invalid region for each window. Generate expose events for invalid
12751         region in an idle. This replaces both the expose compression
12752         and the redrawing queuing in GTK+. It is both more efficient and
12753         simpler than either one individually and far more so then the
12754         combination.
12755
12756         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
12757         Emulate 32 bit coordinates for windows with 16 bit coordinates
12758         by offsetting drawing, guffaw scrolling techniques and
12759         mapping/unmapping child windows as necessary.
12760
12761         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
12762         where, when invalid regions are processed, the region is stored,
12763         and if expose events come in that are detectably duplicate
12764         the processed exposes (by comparison of event serial numbers),
12765         the stored region is subtracted out of those exposes.
12766
12767         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
12768         regions newly exposed when scrolling or resizing windows.
12769         This, combined with forcing processesing of queued invalidated
12770         regions, gives nice flicker-free scrolling.
12771
12772         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
12773         invalidated regions after every scroll.
12774
12775         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
12776         emulation in GDK. Its, for all practical purposes just a
12777         GtkViewport/GtkFixed hybrid now.
12778
12779         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
12780         (16-bit) structures as necessary instead of just casting.
12781
12782         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
12783         in terms of the structures from gdkregion-generic.c, using appropriate
12784         offsets from GDK to X11 coordinates. Cache clip mask and
12785         origin and ts origin locally and only flush to the server
12786         when drawing, to avoid constantly setting and resetting these
12787         values when offsetting GC's for scrolling and backing pixmaps.
12788
12789         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
12790
12791         * gtk/gtkcontainer.c: Call process_all_updates at end
12792         of resizing to reduce flicker. (Avoids having redraw
12793         lag arbitrarily behind resize under some circumstances)
12794
12795         * gtk/gtkentry.c: Remove old backing store code, and simply take
12796         advantage of the new backing store capabilities of GDK.
12797
12798         * gtk/gtkmain.c: Simple implementation of widget backing
12799         store - simply push a paint while handling each expose.
12800         (Should really be configurable widget for widget.)
12801         
12802         * gtk/gtkwidget.c: Remove all the old complicated redraw
12803         code, and simply invalidate the GDK windows from
12804         gdk_window_queue_clear(), etc. (Sigh, so much carefully
12805         debugged complexity ... gone to the winds.)
12806
12807         Remove all the code for suppressing expose events while
12808         resizes are pending; this isn't needed since the invalid
12809         areas won't be processed until after the resizes are
12810         processed, since they are in a lower priority idle.
12811
12812 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
12813
12814         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
12815         and height of dest rectangle for non-intersecting rectangles.
12816
12817 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
12818
12819         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
12820         for GdkRectangle.
12821
12822 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
12823
12824         * gdk/gdk{events,image,private,types,window}.h
12825          gdk/x11/gdkinputprivate.h: Change all coordinates
12826          from int16 to int. Also, Change width and height from
12827          unsigned to signed to avoid all the stupid C 
12828          signedness bugs.
12829
12830 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
12831
12832         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
12833         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
12834         Add some more detailed checking.
12835
12836         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
12837         New function to retrieve the depth of a drawable.
12838
12839         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
12840         field, reorder fields to save memory. 
12841
12842 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
12843
12844         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
12845         of the background image instead of scaling the background down to
12846         a line.
12847
12848         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
12849         which temporarily set slider to wrong size.
12850
12851         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
12852         queue_clear().
12853
12854 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
12855
12856 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
12857
12858         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
12859
12860 2000-03-17  Tor Lillqvist  <tml@iki.fi>
12861
12862         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
12863         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
12864
12865         * gdk/win32/gdkfont-win32.c
12866         * gdk/win32/gdkproperty-win32.c
12867         * gdk/win32/gdkselection-win32.c
12868         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
12869         now declared such.
12870
12871 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
12872
12873         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
12874
12875 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
12876
12877         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
12878         is called without trapping X errors.
12879
12880 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
12881
12882         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
12883         way into the fontset lists.
12884
12885 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
12886
12887         * gtk/gtkthemes.h: add extern "C" scope.
12888
12889 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
12890
12891         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
12892         to make appends to the list constant. (gtk-guy-990901-0.patch)
12893
12894 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
12895
12896         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
12897         for the typename hash table.
12898
12899 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
12900
12901         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
12902         to make sure we never divide by zero. 
12903         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
12904
12905 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
12906
12907         * gtk/gtkfontsel.c: Apply patch from
12908         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
12909         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
12910
12911         Also, some cleanups in atom handling.
12912
12913 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
12914
12915         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12916         not GtkWidget.
12917
12918 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
12919
12920         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
12921         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
12922         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
12923         more guint wrap-around bugs before going to bed.
12924
12925 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
12926
12927         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
12928         guint wrap arounds in allocation.width.
12929
12930         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
12931         process untill we fit the allocation given.
12932
12933 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
12934
12935         * gtk/gtkwidget.c:
12936         (gtk_widget_unrealize): guard widget access with ref/unref
12937         around signal emission.
12938         (gtk_widget_hide): same here, but also check its destroyed
12939         state before queueing a resize.
12940
12941 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
12942
12943         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
12944         of gtk_default_insensitive_bg as insensitive base color.
12945
12946         * gtk/gtktext.c (gtk_text_style_set): set the background color according
12947         to the widget's state.
12948         (gtk_text_realize): same here.
12949         (gtk_text_state_changed): same here.
12950         (draw_bg_rect): compare background color against base[] from
12951         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
12952
12953 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
12954
12955         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
12956         grabs are active, unless a delete event is send to the toplevel
12957         of the currently grab holding widget.
12958
12959 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
12960
12961         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
12962         debugging g_print's.
12963
12964 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
12965
12966         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
12967         ever make the scrolled-window requisition ever depend on the 
12968         visibility state of the scrollbars for the AUTOMATIC policy. 
12969         This breaks the GTK+ requisition model, and causes loops.
12970
12971 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
12972
12973         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
12974         the default font to avoid problems with XFree86-4.0 where the
12975         default charset is iso10646-1, not iso8859-1.
12976
12977 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
12978
12979         * acinclude.m4
12980         * config.guess
12981         * config.sub
12982         * ltconfig
12983         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
12984
12985         * gtk/Makefile.am: minor cosmetic consistency tweak
12986
12987 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
12988
12989         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
12990         the activate_time to 0, so that we handle a quick
12991         press/release press/release properly and don't suppress
12992         the second release. (Red Hat bug #7545)
12993
12994 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
12995
12996         * gtk/gtkctree.c (row_delete):
12997         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
12998         bugs with destruction notifier, *always* update internal
12999         structures *before* calling user code.
13000
13001 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
13002
13003         A few more fixes for bug #5487, #2051, #2677.
13004         * gtk/gtkclist.c : 
13005         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
13006         not GDK_BUTTON_PRESS.
13007         (resync_selection): resync only if selection_mode is
13008         GTK_SELECTION_EXTENDED
13009         * gtk/gtkctree.c (resync_selection): same here
13010
13011 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
13012
13013         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
13014         gdk_drag_get_selection() and gtk_menu_detach().
13015
13016         [ From Jeroen Ruigrok/Asmodai ]
13017
13018 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
13019
13020         * gtk/gtknotebook.c (gtk_notebook_size_request): 
13021         page->tab_label can be NULL.
13022
13023 2000-01-25  Havoc Pennington  <hp@pobox.com>
13024         
13025         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
13026         arg is boolean
13027
13028         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
13029
13030         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
13031
13032         * gdk/gdkproperty.c (gdk_property_get): return boolean
13033
13034         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
13035
13036         * gdk/gdkim.c (gdk_im_ready): return boolean
13037
13038         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
13039
13040         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
13041         glib clash, should fix glib)
13042
13043         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
13044         (gdk_get_show_events): return gboolean, and canonicalize 
13045         to TRUE/FALSE
13046
13047         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
13048         colormap is private
13049         (gdk_colors_alloc): gboolean whether to be contiguous
13050         (gdk_color_equal): return gboolean since we are a predicate
13051         and not a qsort() (this looks semi-wrong due to glib breakage,
13052         IMO glib should be fixed)
13053         
13054         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
13055         (gdk_get_use_xshm): return gboolean
13056         (gdk_pointer_is_grabbed): return gboolean
13057
13058         * gdk/gdk.h: Change prototypes to match all the above changes,
13059         and re-run egtk-format-protos as required.
13060
13061 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
13062
13063         * gtk/gtkctree.c (resync_selection): 
13064         * gtk/gtkclist.c (resync_selection):
13065
13066         Return immediately if clist->drag_pos < 0. This is a workaround
13067         for the corrupt state that the clist gets into when a
13068         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
13069
13070         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
13071         
13072         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
13073         variable from recent commit.
13074
13075 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
13076
13077         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
13078
13079 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
13080
13081         * gtk/Makefile.am: prefix all autogenerated source that get build in
13082         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
13083         in builddir. since we subsequently cd into srcdir for autogeneration,
13084         the paths have to be stripped from the target file names, thusly we
13085         use $(@F) as target names now.
13086         put a comment about configure.in's --disable-rebuilds option,
13087         which can be used for non-writable source directories, for development
13088         setups though, srcdir has to be *writable*.
13089
13090 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
13091
13092         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
13093           Finish the job of allowing event to be NULL.
13094           (Fixes bug #4283, reported by Chris Blizzard)
13095
13096         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
13097           things so that the cursor appears on screen, properly
13098           take into account INNER_BORDER.
13099           (Fixes bug #4754, reported by Antonio Campos)
13100
13101 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
13102
13103         * gtk/gtknotebook.c (gtk_notebook_map): Don't
13104           show the tab_label unless it itself is visible.
13105
13106           gtk/gtknotebook.c (gtk_notebook_size_request):
13107           Do a better job of making sure that the visibility
13108           of the tab label corresponds to whether it should
13109           be mapped or not.
13110
13111 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
13112
13113         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
13114           Use the requisition, not the allocation, since the
13115           allocation has not necessarily been computed yet.
13116           (Pointed out by Eugene Osintsev)
13117
13118 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
13119
13120         * gtk/gtkstyle.c (gtk_style_new): Dont' set
13121           style/base[GTK_STATE_INSENSITIVE] both to
13122           gtk_default_insensitive_bg!
13123           (Bug #2187, reported by Jonathan Blandford)
13124
13125         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
13126           Add Alt_L, Alt_R to list of invalid accelerators.
13127           (Bug #3736, reported by Vlad Harchev)
13128
13129 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
13130
13131         * gtk/gtkfilesel.c (open_ref_dir): Fix several
13132         bugs which occured after an attempt to open 
13133         invalid home directory left cmpl_state->reference_dir == NULL.
13134
13135          - completion on files in home directory didn't work
13136          - completion on an empty string caused  segfault
13137
13138          (Bug #3678, reported by Steve Ratcliffe)
13139
13140         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
13141         cut and paste error that was causing scales to
13142         be incorrectly positioned.
13143         (Bug #2956,
13144          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
13145
13146 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
13147
13148         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
13149         when checking for dcgettext, if we've found we needed
13150         it for dgettext.
13151 +
13152 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
13153
13154         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13155         queue_clear on NO_WINDOW widgets during a reparent,
13156         since at that point the window and widget heirarchies
13157         are out of sync. This stops crashing in some cases
13158         (the scrolled window reparent test, for instance), and
13159         _probably_ won't cause drawing errors.
13160
13161         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
13162         test do what it was supposed to do and be robust against
13163         window closings, etc. (Bug #2443)
13164
13165 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
13166
13167         * gtk/gtkentry.c: Fix return values on mouse events.
13168         (Bug #2686, Sky <seb_sky@yahoo.com>)
13169
13170         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
13171         (pointed out by George Lebl)
13172
13173         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
13174         (From Ettore Perazzoli  <ettore@helixcode.com>)
13175  
13176 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
13177
13178         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
13179         clicks between rows or outside calender area correctly.
13180         (Patch from Damon Chaplin)
13181
13182         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
13183         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
13184           Call destroy function when overwriting existing data. 
13185           (Pointed out by Damon Chaplin)
13186
13187 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
13188
13189         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
13190           which was causing problems on various systems with Xmu.
13191           This hasn't been needed for a very long time.
13192           (Fixes #1185 3167)
13193
13194 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
13195
13196         * gdk/gdki18n.h: Include <ctype.h> when defining
13197           gdk_isw* in terms of is* as a fallback.
13198           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
13199
13200 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
13201
13202         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
13203           realize the widget when it is size allocated!
13204           (old, old bug)
13205
13206         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
13207           Removed unused call to gdk_window_get_size() that
13208           showed up when the above was fixed.
13209
13210 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
13211
13212         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
13213           fix up widget->window when the widget is a
13214           NO_WINDOW container widget.
13215
13216 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
13217
13218         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
13219           to account for the fact that feof() does _not_ 
13220           return TRUE on errors, and thus avoid infinite loops
13221           when trying to use gdk_pixmap_create_from_xpm()
13222           on unreadable values.
13223
13224 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
13225
13226         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
13227
13228 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
13229
13230         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
13231           gdk_gc_set_dashes to take gint8 instead of gchar to
13232           make it clearer that it is _not_ a NULL terminated string.
13233
13234         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
13235           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
13236           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
13237           arguments.
13238
13239 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
13240
13241         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
13242         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
13243         background size relative to our allocation, guard against small
13244         allocations, we may have not yet been size allocated.
13245
13246 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
13247
13248         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
13249         not just version == 3. We implement all 3 + most of 4 - 
13250         (we don't support matching text/plain;charset=iso-8859-1
13251         to a dest that expects text/plain). We'll still advertise
13252         3 to be safe, but any client implementing version >= 3
13253         must interoperate with 3.
13254         
13255 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13256
13257         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
13258         background and gc members, add a warning in gtk_tooltips_set_color()
13259         indicating that this function is deprecated.
13260
13261 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
13262
13263         * docs/gtkfaq.sgml: FAQ Update:
13264           - Minor cleanups (Emmanuel, me)
13265           - New questions:
13266                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
13267                 How can I retrieve the text from a GtkMenuItem? (timj)
13268                 How do I validate/limit/filter the input to a GtkEntry? (me)
13269                 Memory does not seem to be released when I free the list
13270                         nodes I've allocated (timj)
13271
13272 2000-03-07  Tor Lillqvist  <tml@iki.fi>
13273
13274         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
13275         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
13276         for which it is no use to call GetLastError onWin9x.
13277         (gdk_other_api_failed) New function, for general error
13278         reporting without calling GetLastError.
13279         (gdk_win32_api_failed) OTOH, this function always calls
13280         GetLastError. (gdk_win32_last_error_string) Remove this function,
13281         GLib has the equivalent now.
13282
13283         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
13284         call them with function name, file name and line number in the
13285         arguments.
13286
13287         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
13288         functions.
13289         
13290         * gtk/gtk.def: Add some missing entry points.
13291
13292         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
13293         gtk_paned_set_gutter_size, which don't exist any longer, as void.
13294         
13295         Fixes by Hans Breuer:
13296
13297         * gdk/makefile.msc: Update for debugging.
13298
13299         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
13300         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
13301         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
13302         in the dash_list.
13303
13304         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
13305         the x11 backend.
13306
13307         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
13308
13309         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
13310
13311 2000-03-04  Tor Lillqvist  <tml@iki.fi>
13312
13313         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
13314         just pixel value of background colour.
13315
13316         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
13317         containing code snippet previously duplicated in a couple of
13318         places.
13319         
13320         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
13321         gdk_colormap_color.
13322
13323         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
13324         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
13325         events for autorepeated Shift, Control and Alt keys. Use
13326         gdk_colormap_color.
13327
13328         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
13329         pointer is inside the window the cursor of which we are setting,
13330         call SetCursor immediately.
13331
13332         * gdk/win32/makefile.cygwin
13333         * gtk/makefile.cygwin: If we don't have the build number stamp
13334         file, use zero.
13335
13336         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
13337         gtk_paned_set_gutter_size as empty.
13338
13339         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
13340         
13341 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
13342
13343         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
13344           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
13345           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
13346           docs/gtk_tut.sgml docs/gtk.texi TODO:
13347
13348           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
13349
13350 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
13351
13352         * gtk/gtkcalendar.c: Implement num_marked_dates,
13353           and don't emit mutiple day_selected signals on
13354           month_prev.
13355
13356 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
13357
13358         * docs/make-todo (lineno): let title and logo be configurable so
13359         that GNOME can use this script too.
13360
13361         * TODO.xml: added logourl and a title
13362
13363 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
13364
13365         * TODO.xml: Added some UI items, and an explanatory
13366         comment at the top of the file.
13367
13368 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
13369
13370         * TODO.xml: some updates, added abunch of new entries.
13371         a note for those fiddeling with this file, when done
13372         with it, invoke:
13373         $ ./docs/make-todo TODO.xml >/dev/null
13374         and correct output errors before comitting changes.
13375
13376 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
13377
13378         * TODO.xml: Added XML-structured TODO file.
13379         * docs/make-todo: python script to turn TODO.xml into
13380           pretty XML output. 
13381
13382 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
13383
13384         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
13385         the function to let it draw the seven dots, instead of the old,
13386         much maligned, method.
13387         (draw_dot): New function to draw a dot.
13388
13389         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
13390         to draw the handle inside the border width as opposed to outside.
13391         Use paint function instead of gdk_draw_point.
13392
13393         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
13394         to draw the handle inside the border width as opposed to outside.
13395         Use paint function instead of gdk_draw_point.
13396
13397         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
13398         Change indenting to be more GTK like.
13399
13400 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
13401
13402         * docs/gtk_tut.sgml: New section on GtkCalendar
13403         * examples/calendar: Update example code
13404
13405 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
13406
13407         * docs/gtkfaq.sgml: FAQ Update
13408
13409 2000-02-19  Anders Carlsson  <andersca@gnu.org>
13410
13411         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
13412         to prevent the scroll event to be propagated upwards.
13413
13414 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
13415
13416         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
13417         OwnerGrabButtonMask from button entries for
13418         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
13419
13420         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
13421         to the event mask (which will result in button/press release
13422         being added to the event mask on Unix) so scrolling works
13423         for layouts in scroll windows.
13424
13425         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
13426
13427         Patch from Anders Carlsson  <andersca@gnu.org> to add
13428         a scroll event.
13429
13430         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
13431         scrolling to the "Test Scrolling" part of testgtk.
13432  
13433         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
13434  
13435         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
13436         it against GDK_SCROLL.
13437  
13438         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
13439         way of mouse wheel scrolling.
13440  
13441         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
13442  
13443         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
13444  
13445         * gtk/gtkmain.c: Removed previous mouse wheel hack.
13446  
13447         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
13448         gdk_event_mask_table.
13449  
13450         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
13451         GdkEventScroll handler.
13452  
13453         * gdk/gdkevents.h: Added GdkEventScroll structure.
13454  
13455 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
13456
13457         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
13458         and Anders Carlsson to change the Paned widgets so that they
13459         can be dragged from anywhere along the length. Also change
13460         the way that this is drawn to make this apparent.
13461
13462         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
13463         from George Lebl to check that option_menu->menu is present
13464         before getting history.
13465
13466 2000-02-14  Tor Lillqvist  <tml@iki.fi>
13467
13468         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
13469         before the assertion for non-NULL segment list.
13470
13471         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
13472         Seems that pattern brushes *must* be 8x8 pixels! At least on my
13473         machine, but it might be display driver dependent. Sigh, so make
13474         sure the stipple is that size. Does Windows suck or what?
13475
13476         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
13477         places.
13478
13479 2000-02-13  Havoc Pennington  <hp@pobox.com>
13480
13481         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
13482         refcount to 1
13483         (gdk_cursor_new): init refcount to 1
13484
13485         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
13486
13487 2000-02-13  Tor Lillqvist  <tml@iki.fi>
13488
13489         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
13490         so that we don't have to do unnecessary settings to the HDC.
13491
13492         * gdk/win32/gdkdrawable-win32.c
13493         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
13494         gdk_gc_predraw.
13495
13496         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
13497         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
13498         GDI paths, call WidenPath to get the outline of the stroken path,
13499         and then fill the outline (with the brush that was built from the
13500         stipple).
13501
13502         * gdk/win32/gdkgc-win32.c: Factor out common code from
13503         _gdk_win32_gc_new and gdk_win32_gc_set_values into
13504         gdk_win32_gc_values_to_win32values. Use correct colour for
13505         SetBkColor() (Until now the code actually used a random colour in
13506         the call to SetBkColor()... but that didn't show up as not many
13507         GDI APIs use the background colour. Pattern (opaque stippled)
13508         brushes do.)
13509
13510         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
13511         gdk_win32_api_failed): New functions for error logging.
13512
13513         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
13514         WIN32_API_FAILED to call them, passing function or file name and
13515         line number.
13516
13517         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
13518
13519         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
13520         GdkColor for foreground and background in GdkGCWin32Data.
13521
13522         * gdk/makefile.cygwin: Link in the resource object separately.
13523
13524         * gdk/win32/rc/gdk.rc
13525         * gtk/gtk.rc (New file)
13526         * gdk/win32/makefile.cygwin
13527         * gtk/makefile.cygwin: Update build number in DLLs automatically,
13528         as in GLib.
13529
13530 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
13531
13532         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
13533         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
13534         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
13535         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
13536         parameters given and cursor->ref_count. coding style fixups.
13537
13538         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
13539         not GtkWidget.
13540         
13541         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
13542         fix up widget macros and add _GET_CLASS() variant.
13543         
13544         * gtk/*.c: some GtkType fixups.
13545
13546 2000-02-09  Tor Lillqvist  <tml@iki.fi>
13547
13548         * gdk/win32/gdkproperty-win32.c
13549         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
13550         were reversed.
13551
13552 2000-02-04  Tor Lillqvist  <tml@iki.fi>
13553
13554         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
13555         g_filename_to_utf8 to convert the font names Windows gives us from
13556         whatever is the default codepage to UTF-8.
13557         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
13558         in the other direction.
13559
13560         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
13561         error in debugging output.
13562
13563 2000-02-02  Tor Lillqvist  <tml@iki.fi>
13564
13565         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
13566         and height parameters to gdk_window_clear_area(). Not minus one.
13567
13568 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
13569
13570         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
13571         checks if the widget passed to gtk_drag_get_data() was not the
13572         dest widget.
13573
13574 2000-02-01  Tor Lillqvist  <tml@iki.fi>
13575
13576         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
13577         g_filename_from_utf8 functions (which were added a moment ago to
13578         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
13579         size buffers.
13580
13581         gtk_file_selection_get_filename returns the filename in the C
13582         runtime encoding. It calls g_filename_from_utf8, but copies the
13583         returned string to a static buffer, which is returned. I think
13584         this is better than returning the result from g_filename_from_utf8
13585         directly, which would mean all apps that use it would have to free
13586         the return value. Or should this function care about this issue at
13587         all? Maybe a new function with clearly defined semantics.
13588
13589         * gtk/gtkfilesel.h: Add comment about
13590         gtk_file_selection_get_filename returning the filename in the C
13591         runtime's encoding.
13592
13593         * README.win32
13594         * gdk/gdk.def
13595         * gdk/makefile.{cygwin,msc}
13596         * gtk/gtk.def: Updates.
13597
13598         * gdk/gdkcursor-win32.c: Initialise refcount.
13599
13600 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
13601
13602         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
13603
13604 2000-01-30  Havoc Pennington  <hp@pobox.com>
13605
13606         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
13607         destroy
13608
13609         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
13610
13611         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
13612         implemented in platform-specific code
13613
13614         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
13615
13616         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
13617         underscore in front
13618
13619         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
13620         put an underscore in front
13621
13622         * gdk/gdkcursor.c: new file, implements
13623         gdk_cursor_ref/gdk_cursor_unref
13624
13625         * gdk/gdkcursor.h: Refcount GdkCursor
13626
13627         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
13628
13629 2000-01-29  Tor Lillqvist  <tml@iki.fi>
13630
13631         * gdk/gdkwindow.h
13632         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
13633
13634 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
13635
13636         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
13637         structures to properly inherit from GtkWidget not GtkBin.
13638
13639 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
13640
13641         * gtk+.spec.in: Added lib/gtk+/include/* to %files
13642         (bug #5178 - Peter Wainright)
13643         
13644         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
13645         so that it will be installed.
13646         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
13647
13648 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
13649
13650         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
13651         for the GtkStyleClass vtable const.
13652
13653         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
13654         take a const string argument like GtkTranslateFunc. This will
13655         require changes in use code.
13656
13657 2000-01-19  Tor Lillqvist  <tml@iki.fi>
13658
13659         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
13660         semantics (to mimic the X11 backend, which just calls XClearArea)
13661         is to check for zero width (and height), and in that case use the
13662         window's width minus x (height minus y). This fixes for instance
13663         some redraw problems with gtkclist, which were easily noticeable
13664         in the gtk file selection widget.
13665
13666         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
13667         windows.
13668
13669 2000-01-13  Tor Lillqvist  <tml@iki.fi>
13670
13671         * configure.in
13672         * gdk/Makefile.am
13673         * gdk/x11/Makefile.am
13674         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
13675         (bug #5177).
13676         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
13677         out later.
13678
13679 2000-01-09  Tor Lillqvist  <tml@iki.fi>
13680
13681         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
13682         WM_MOVE for iconified or invisible windows. This fixes various
13683         problems when minimising windows. Thanks to Bernd Herd.
13684
13685 2000-01-05  Tor Lillqvist  <tml@iki.fi>
13686
13687         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
13688         backend's draw_lines method, not draw_points.
13689
13690 2000-01-02  Tor Lillqvist  <tml@iki.fi>
13691
13692         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
13693         before Owen's reorganisation: Don't have queued_events and
13694         queued_tail statics in this file, but use gdk_queued_events and
13695         gdk_queued_tail. This makes exposure event compression work again.
13696
13697         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
13698         seem to be needed?
13699
13700 1999-12-30  Tor Lillqvist  <tml@iki.fi>
13701
13702         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
13703         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
13704         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
13705         doesn't do anything.
13706
13707         * gdk/gdk.def: Add gdk_xid_table_insert.
13708
13709         * gdk/win32/gdkprivate-win32.h
13710         * gdk/win32/gdkevents-win32.c
13711         * gdk/win32/gdkinput-win32.c
13712         
13713         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
13714         extension_events field in the GdkWindowWin32Data struct. Use only
13715         the extension_events field in GdkWindowPrivate. Previously one was
13716         set, and the other one tested, which broke tablet
13717         functionality. Thanks to Keishi Suenaga for pointing this out.
13718
13719 1999-12-18  Tor Lillqvist  <tml@iki.fi>
13720
13721         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
13722         When handling a single character (text length == 1), don't handle
13723         it as if it was UTF-8.
13724
13725 1999-12-11  Tor Lillqvist  <tml@iki.fi>
13726
13727         * Makefile.am: Distribute README.win32.
13728         
13729         * gdk/Makefile.am
13730         * gdk/win32/Makefile.am: Distribute Win32 files.
13731
13732         * gdk/makefile.msc: New file.
13733
13734         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
13735         after label).
13736
13737         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
13738         gdk_error_code as GDKVAR, as they are referred outside GDK.
13739
13740         * gdk/win32/makefile.msc: Update.
13741
13742         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
13743         tweaks. Check only if at least one of those Unicode subrange bits
13744         we care for is set. If no code page bits are set, guess (wildly)
13745         based on the charset.
13746
13747         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
13748
13749         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
13750         non-NULL.
13751
13752         * gtk/gtkdnd.c
13753         * gtk/gtklayout.c
13754         * gtk/gtkplug.c
13755         * gtk/gtkselection.c
13756         * gtk/gtksocket.c
13757         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
13758         appropriate. There must be a cleaner way to handle this?
13759
13760         * gtk/gtkrc.c: Must include windows.h on Win32.
13761
13762         * gtk/testgtk.c: No need to include gdkx.h.
13763
13764         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
13765
13766 1999-12-07  Tor Lillqvist  <tml@iki.fi>
13767
13768         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
13769         the rbearing is set to the same as the width, but this should be
13770         fixed.
13771
13772 1999-12-06  Tor Lillqvist  <tml@iki.fi>
13773
13774         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
13775         function. If Windows doesn't tell us what Unicode subranges a font
13776         covers, guesstimate based on the codepages it covers. This will
13777         hopefully help those Windows versions or fonts that don't give us
13778         any useful Unicode subrange information with GetTextCharsetInfo.
13779         Call this function in gdk_font_load_internal.
13780
13781         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
13782         minor changes.
13783
13784 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
13785
13786         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
13787         New function, long needed.
13788
13789 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
13790
13791         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
13792         only_if_exists argument of gdk_atom_intern to
13793         bool.
13794
13795 1999-11-25  Tor Lillqvist  <tml@iki.fi>
13796
13797         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
13798         Fix two copy&paste errors.
13799
13800         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
13801         win32 has changed.
13802
13803         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
13804         GdkWin32SingleFont struct.
13805
13806         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
13807         subranges of loaded fonts. Clear font signature first, in case
13808         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
13809         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
13810
13811         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
13812         Unoffset clip region.
13813
13814 1999-11-23  Tor Lillqvist  <tml@iki.fi>
13815
13816         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
13817         event->any.window before calling filter functions.
13818
13819 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
13820
13821         * gtk/gtkgamma.h: Adapt cast macros to standard.
13822
13823 [ Merges from 1.2 ]
13824
13825 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
13826
13827         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
13828         If translation does not include a '/', use entire
13829         translation instead of crashing.
13830
13831 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
13832
13833         * docs/gtk_tut.sgml:
13834         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
13835
13836 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
13837
13838         * gtk/gtkselection.c (gtk_target_list_remove): Use
13839         g_list_remove_link, not g_list_remove.
13840
13841         [ From Geert Bevin <gbevin@thunderstorms.org> ]
13842         
13843 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
13844
13845         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
13846         statement upon unselection (how the heck did that slip in?).
13847
13848 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
13849
13850         * gtk/gtktext.c (gtk_text_freeze): 
13851         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
13852         in frozen state (and aparently crashes). patch provided by Anders
13853         Melchiorsen <and@kampsax.dtu.dk>.
13854
13855 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
13856
13857         * fix insensitive default/focus widget activation,
13858         reported by Matt Goodall <mgg@isotek.co.uk>.
13859
13860         * gtk/gtkwindow.c (gtk_window_key_press_event): 
13861         (gtk_window_activate_default):
13862         (gtk_window_activate_focus):
13863         return handled=FALSE for actiavtion of insensitive default
13864         widgets. return handled=TRUE for activation of insensitive
13865         focus widgets. don't activate in either case.
13866
13867 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
13868
13869         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
13870         and $glib_cflags to match library order and in the
13871         theory that an old version of GLib is more likely to
13872         be in the include directory for X then vice-versa.
13873         (Bug #2776)
13874
13875 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
13876
13877         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
13878         to determine the locale for fontsets, not LC_MESSAGES;
13879         the user may want English messages with a handling
13880         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
13881         will still be broken) (Bug #2891)
13882
13883 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13884
13885         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
13886
13887 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13888
13889         * gtk/gtkrc.ko: Changed the Korean default fontset.
13890
13891 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
13892
13893         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
13894         where when scrolling to the left or top double exposes
13895         were done, causing major slowdowns.
13896
13897 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
13898
13899         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
13900         names to lowercase and alphanumeric, before looking
13901         them up.
13902
13903         * gtk/Makefile.am: Install codeset variant gtkrc files
13904         with normalized names.
13905
13906 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
13907
13908         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
13909         popup menus when the menu is already visible, but its parent
13910         is still hidden, (happens after tornoff window got hidden).
13911
13912 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
13913
13914         * gtk/Makefile.am (install-data-local): Fix
13915         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
13916         deleted, causing error messages on install.
13917
13918 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
13919
13920         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
13921         the handle as well, since we now sometimes ignore
13922         exposes on the handle while resizing.
13923
13924 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
13925
13926         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
13927         extra g_free introduced in one of the last one or two 
13928         commits.
13929
13930 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
13931
13932         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
13933         consistent, put each style that a gtkrc.* file creates
13934         in a unique namespace, remove old files before installing.
13935
13936 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
13937
13938         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
13939         gtk_rc_init is called multiple times. (Yes, people who
13940         do that have bugs in their code.)
13941
13942 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
13943
13944         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
13945         Remove it since it's generated by the Makefile anyway
13946
13947 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
13948
13949         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
13950         device->info.axes for core pointer.
13951
13952 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
13953
13954         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
13955         idle_id, to deal with obsolete, broken C libraries.
13956
13957 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
13958
13959         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
13960         allocation->x/y twice!
13961
13962         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
13963         consistent with gtk_vscale_pos_trough().
13964
13965 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
13966
13967         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
13968         be queueing a resize on a toplevel container between
13969         the time we show it and when we map it. So, we need
13970         to test GTK_WIDGET_VISIBLE() for toplevels, and only
13971         use GTK_WIDGET_DRAWABLE() for child windows.
13972
13973 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
13974
13975         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
13976         (fixes bug #2144)
13977
13978 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
13979
13980         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
13981         container DRAWABLE (instead of VISIBLE), so we don't queue
13982         resizes on non-toplevel containers.
13983
13984 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
13985
13986         * gtk/gtkselection.[ch]: Make the data argument
13987         const guchar *.
13988
13989 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
13990
13991         * gtk/gtkwindow.c: Try to behave sensibly if 
13992         the focus widget is the window itself. (Should
13993         we allow this at all?)
13994
13995 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
13996
13997         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
13998         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
13999         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
14000         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
14001         in prototypes and implementations consistent (Tomas Ogren).
14002
14003         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
14004         before the widget is unparented (reported by damon).
14005
14006         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
14007         since we provide unsigned data anyways.
14008
14009 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
14010
14011         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
14012         the call to gtk_tooltips_layout_text() until later.
14013
14014         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
14015         Call gtk_widget_ensure_style() before using the style.
14016
14017 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
14018
14019         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
14020         for old widgets that don't propagate draws to all
14021         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
14022
14023 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
14024
14025         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
14026         for a redraw but just the widget that requested the resize.
14027
14028 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
14029
14030         * gtk/gtkcontainer.c: added new widget level method
14031         gtk_container_set_reallocate_redraws() and a GtkContainer flag
14032         reallocate_redraws : 1 to reflect the setting, exported this through
14033         the argument system as a boolean ::reallocate_redraws.
14034
14035         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
14036         on the widget because the allocation changes, do so as well for
14037         widget->parent if the parent has reallocate_redraws set to TRUE.
14038         with that containers requesting reallocation redraws get automatically
14039         redrawn if their children changed allocation (this unfortunately
14040         affects also other children that didn't change allocation, but we
14041         cannot work around that before 1.3).
14042
14043 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14044
14045         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
14046         _and_ height are >0 (not _or_).
14047
14048         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
14049         instead of gtk_container_queue_resize(), which is a core gtk internal
14050         function (must have been on crack when i queued that).
14051
14052         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
14053         we can check more reliably if we want to discard expose events.
14054         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
14055         flag.
14056         
14057         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
14058         we simply trust these events. for deciding whether to discard exposes,
14059         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
14060         
14061 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
14062
14063         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14064         queues of areas that are completely off screen.
14065
14066         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
14067         logic for handleboxes.
14068
14069         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
14070         check on width/height.
14071
14072 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
14073
14074         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
14075         we are fine with using $@ the way we do (if we actually encounter
14076         brokeness with $@ in VPATH builds because of additional path prefixes,
14077         we need to use $(@F) actually).
14078
14079 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
14080
14081         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
14082         short lived bugs, that would allow language bindings to do surgeries
14083         to our guts.
14084
14085 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
14086
14087         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
14088         where comparison was being done against an uninitialized
14089         value causing intermittant results depending on
14090         compiler flags. Also make it clearer that we aren't
14091         ever initializing the child as 0x0 (though this will
14092         be caught in gtk_widget_size_allocate())
14093
14094 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
14095
14096         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
14097         gtk_window_unset_transient_for() call after we do checks
14098         involving the old transient parent.
14099         [ From Lance Capser <lmc@cyberhighway.net> ]
14100
14101 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
14102
14103         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
14104         an empty file.
14105
14106 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
14107
14108         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
14109         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
14110
14111 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
14112
14113         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
14114         `$@' is valid only in the build dir, not after we've done 
14115         `cd $srcdir'.  Also use `test -f' instead of less portable
14116         `test -e'.
14117
14118 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
14119
14120         * gtk/gtktext.c (correct_cache_insert): Rewrite
14121          for simplicity, and hopefully correctness.
14122          (Fixes bug #1322, which was a segfault when
14123           on some insertions with the properties around
14124           the insertion set up just wrong.)
14125
14126         * gtk/gtktext.c (gtk_text_adjustment): When we receive
14127          a "changed" signal, clamp the new value to the adjustment
14128          bounds to avoid segfaulting if someone tries to change
14129          the adjustment to a bogus value. (Bug #1795)
14130
14131 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14132
14133         * gtk/gtkmain.c: Ignore unexpected destroy notifies
14134         for children, for toplevel windows handle them
14135         like delete_event.
14136
14137         * gtk/gtkplug.c: Add an unrealize handler so that
14138         we unref plug->socket_window when we are done
14139         with it.
14140
14141 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
14142
14143         * gtk/gtktext.c (clear_area): Fix stupid signedness
14144          problem that was causing background to sometimes
14145          be misaligned.
14146
14147 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
14148
14149         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
14150         
14151         * gtk/gtkmenu.c (gtk_menu_position): Make
14152          sure we never position menus with negative x, y,
14153          since gtk_widget_set_uposition() can't handle that.
14154
14155         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
14156          Modify the positioning code a bit so that we always
14157          put the top-left corner onscreen. (This is for
14158          UI reasons, gtk_menu_position() now takes care of
14159          gtk_widet_set_uposition() brokeness.)
14160
14161 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
14162
14163         * gtk/Makefile.am: fixed up things for -jx, x > 1.
14164
14165 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
14166
14167         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
14168           RC style that is passed in. The lack of the ref
14169           before was a bug. If people worked around this
14170           bug, this will introduce a slight memory leak
14171           in their code. The code should typically look like:
14172
14173             rc_style = gtk_rc_style_new ();
14174             [...]
14175             gtk_widget_modify_style (widget, rc_style);
14176             gtk_rc_style_unref (rc_style);
14177
14178         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
14179           the style if it was already set.
14180
14181         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
14182           style if it was set before.
14183
14184 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14185
14186         * gtk/testgtk.c (main): Add a check to see if we
14187           are being run from the correct directory and
14188           to quit nicely if we are not.
14189
14190         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
14191           static.
14192
14193 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
14194
14195         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
14196
14197         * gtk/gtkwindow.c:
14198         queue resizes unconditionally (gtk_widget_queue_resize will figure
14199         what to do if the window is not realized).
14200         (gtk_window_move_resize): only recenter the window
14201         for GTK_WIN_POS_CENTER_ALWAYS.
14202         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
14203         the same way as GTK_WIN_POS_CENTER.
14204
14205 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
14206
14207         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
14208         with (!(info->last_flags & GDK_HINT_POS)) instead of
14209         (!info->last_flags & GDK_HINT_POS).
14210
14211         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
14212         new_height unconditionally, because we use these values even if
14213         !default_size_changed && !hints_changed.
14214         comented the (default_size_changed || hints_changed) case with
14215         respect to resize rejects from the window manager.
14216
14217         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
14218         in the zvt condition hack, since this includes the window hints, set
14219         the hints after the handling_resize case.
14220
14221         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
14222         window is initially shown with to the geometry.
14223
14224 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
14225
14226         * gtk/gtkwindow.c (gtk_window_move_resize):
14227         s/size_changed/default_size_changed/g so i know what's
14228         really going on (frying brain on smaller flame now).
14229
14230 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
14231
14232         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
14233         we have size_changed upon handling_resize. this is a gross
14234         workaround for the broken zvt widget and should be removed in
14235         1.3 again (search for FIXME).
14236         Owen provided an accurate comment for this:
14237
14238         /* We could be here for two reasons
14239          *  1) We coincidentally got a resize while handling
14240          *     another resize.
14241          *  2) Our computation of size_changed was completely
14242          *     screwed up, probably because one of our children
14243          *     is broken. It's probably a zvt widget.
14244          *
14245          * For 1), we could just go ahead and ask for the
14246          * new size right now, but doing that for 2)
14247          * might well be fighting the user (and can even
14248          * trigger a loop). Since we really don't want to
14249          * do that, we requeue a resize in hopes that
14250          * by the time it gets handled, the child has seen
14251          * the light and is willing to go along with the
14252          * new size. (this happens for the zvt widget, since
14253          * the size_allocate() above will have stored the
14254          * requisition corresponding to the new size in the
14255          * zvt widget)
14256          *
14257          * This doesn't buy us anything for 1), but it shouldn't
14258          * hurt us too badly, since it is what would have
14259          * happened if we had gotten the configure event before
14260          * the new size had been set.
14261          */
14262
14263 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
14264
14265         * gtk/gtkrc.c: deal properly with the fact that RC
14266           style lists may include rc styles more than once.
14267
14268         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
14269           unused static function.
14270
14271         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
14272           stack of directories of RC files currently being
14273           parsed and implicitely add them to pixmap path.
14274           
14275           This fixes a bug where the directory would get
14276           appended then overwritten by pixmap_path declarations.
14277
14278           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
14279
14280         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
14281           theme's exit function. (Patch from Peter Wainwright,
14282           bug #1454)
14283
14284         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
14285           Add a destroy() handler to take care of removing
14286           group for menu item. (Fixes bug #1197)
14287
14288         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
14289           in warning message.
14290
14291 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
14292
14293         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
14294         roundtrip to figure window's width and height, since we know that
14295         anyways from widget->allocation.
14296
14297 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
14298
14299         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
14300           the hints after we request the new size.
14301
14302 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
14303
14304         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
14305           GTK_WIDGET_REALIZED() assertion - we can compute the
14306           hints before we are realized.
14307
14308         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
14309           hint changing so that we have a value of hints_changed
14310           when we decide whether to constrain the window size.
14311
14312         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
14313
14314         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
14315         change back to G_MAXINT.
14316
14317 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
14318
14319         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
14320         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
14321         contain uncluttered values.
14322         (gtk_window_compute_hints): simply assert that window is realized
14323         and that geometry_info is valid, since we rely on this anyways.
14324         (gtk_window_constrain_size): major cleanups to the code.
14325         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
14326         for the base size, instead of the minimums. use 32767 as max width
14327         and height (like in gtkwindow.c) instead of G_MAXINT.
14328
14329 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
14330
14331         * cleaned up the GtkContainer.need_resize flag handling mess, we
14332         only need to force resize requests when we were prematurely
14333         realized, or our widget tree was modified when we were temporarily
14334         hidden. handling these cases directly upon showing the window (i.e.
14335         while the GdkWindow is still unmapped) avoids the need to wait for
14336         a configure event response and therefore makes the GUI more snappier
14337         and avoids blank windows during the roundtrip.
14338
14339         * gtk/gtkwidget.c:
14340         (gtk_widget_hide): 
14341         (gtk_widget_show): don't queue resizes on toplevels, they know how
14342         to deal with matters.
14343
14344         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
14345         flag directly for not visible resize containers and spare us unecessary
14346         signal emissions.
14347
14348         * gtk/gtkwindow.c:
14349         (gtk_window_realize): if we need to enforce premature size allocation,
14350         queue a container resize so we are correctly resized later on.
14351         (gtk_window_init):
14352         (gtk_window_size_request):
14353         don't freak around with the ->need_resize flag,
14354         gtk_container_queue_resize() will care about that.
14355         (gtk_window_show):
14356         handle initial resizing issues here, we can handle matters better in
14357         this place, especially since we know that our GdkWindow is still
14358         unmapped.
14359         (gtk_window_move_resize):
14360         don't care about ->need_resize at all.
14361         handle size changes properly that occoured while we waited for a
14362         configure event.
14363
14364 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
14365
14366         * gtk/gtkwidget.c (gtk_widget_set_uposition):
14367         * gtk/gtkwindow.[hc] (gtk_window_reposition):
14368         Move the hint setting code from gtk_widget_set_uposition
14369         to here; set the hints so that we respect any previously
14370         set geometry hints.
14371
14372         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
14373         change the window hints here or move the window here,
14374         let that happen in gtk_window_move_resize().
14375
14376 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
14377
14378         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
14379         to already queued resizes (and therefore redraws) on a widget, check
14380         its anchestry as well.
14381
14382         * gtk/gtkcontainer.c:
14383         (gtk_container_queue_resize): clear resize widgets for resize
14384         containers before aborting prematurely. this is especially important
14385         for toplevels which may need imemdiate processing or their resize
14386         handler to be queued.
14387         (gtk_container_dequeue_resize_handler): added new internal function for
14388         gtkwindow.c.
14389
14390         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
14391         configure event, take possible changes in window position into account
14392         as well.
14393         if we request a new window size, queue up a resize handler that will
14394         last until the configure event response arrives.
14395         combined the ->need_resize case (initial show) with the general size
14396         (hints) changed case and added even more comments.
14397         if !auto_shrink, only revert to the old allocation if the new size
14398         is smaller than the current allocation.
14399
14400 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
14401
14402         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
14403                            gtk_window_set_geometry_hints
14404                            gtk_window_set_default_size):
14405         When hints are set, queue a resize so that the hints will
14406         be eventually reset on the toplevel.
14407
14408         * gtk/gtkwindow.c (gtk_window_show): Use
14409         gtk_window_compute_default_size(). Clear the need_resize flag
14410         on the initail map so that we don't unnecessarily trigger the
14411         resize code.
14412
14413         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
14414         into separate functions. Compare the hints we are setting
14415         with what we set last time so that we can accurately
14416         tell when we need to reset the hints.
14417
14418         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
14419         function to figure out the size from requisition
14420         and default_size.
14421
14422         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
14423         from fvwm to constrain a size to the geometry hints.
14424
14425         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
14426         to compare two sets of geometry hints.
14427
14428         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
14429         from gtk_window_set_hints(), just compute the hints,
14430         don't set them.
14431
14432         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
14433         code from gtk_window_move_resize() to separate function,
14434         rationalize a bit.
14435
14436 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
14437
14438         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
14439         structure into a new private structure.
14440
14441         * gtkrc.c: Split GtkRcStyle into public/private.
14442         In the private part, add a list of pointers to the
14443         RcStyle lists this RcStyle participates in.
14444
14445         * gtkrc.c: When a RcStyle is free, remove all
14446         lists referencing it from the 
14447         realized_style_ht hash, and free those lists.
14448         
14449         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
14450         gtk_rc_init(), since that adds the default styles
14451         to the list of parsed RC files again.
14452
14453         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
14454         
14455 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
14456
14457         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
14458         checks that ensure that a widget's allocation is at least 1 in width
14459         and height. (GNOME note: this doesn't affect old panel code anymore,
14460         because GtkSocket will request width and height of at least 1 since
14461         Fri Jul 23).
14462
14463         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
14464         allocated yet (happens if the user realizes the window prematurely),
14465         size request and allocate it.
14466         (gtk_window_size_allocate): guard against guint underflows.
14467
14468 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
14469
14470         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
14471         in gtk_built_sources, so gtk.defs gets built prior to all other
14472         sources.
14473
14474 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14475
14476         * gtk/Makefile.am:
14477         invoke indent on gtkmarshal.*. 
14478         rewrote source generation rules, use COPYING as oldest source tag for
14479         a piggyback rule to generate all sources from (don't touch it ;).
14480         major cleanups, strip spaces on build rules for GNU Make.
14481
14482         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
14483         source and target files from commandline arguments. don't invoke indent.
14484
14485 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
14486
14487         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
14488         notebook after switch to avoid drawing problems.
14489         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
14490         
14491         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
14492         show them instead. 
14493         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
14494
14495 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
14496
14497         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
14498         notebook after switch to avoid drawing problems.
14499         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
14500         
14501         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
14502         show them instead. 
14503         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
14504
14505 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
14506
14507         * gtk/gtkwindow.c:
14508         we use window->need_resize from configure_event now, to indicate that
14509         the gtkwindow should keep its allocation (e.g. because the user resized
14510         the window through window manager handles). resize_count is now reliably
14511         used to figure whether we got the allocation we requested from the
14512         window manager.
14513         configure events get queued as resizes now, the real stuff (size
14514         computation and allocation) now only goes on in gtk_window_move_resize().
14515         GtkWindow's requisition now contains its *real* requisition (like all
14516         other widgets), *not* taking usize into account.
14517         geometry_info->last_{width|height} is now updated from set_hints() only
14518         so it always contains the last hints we set for the window manager.
14519         made some event handlers return TRUE instead of FALSE.
14520         the overall code should be much more straight forward now, and the
14521         significant code portions are accompanied by comments now.
14522         (gtk_window_set_hints):
14523         removed requisition argument and made it
14524         fetch the requisition through gtk_widget_get_child_requisition.
14525         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
14526         does that now.
14527         (gtk_window_show):
14528         ensure that the widget is realized before calling 
14529         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
14530         ensure that we got properly size requested and allocated before
14531         realization.
14532         (gtk_window_configure_event):
14533         ignore plain window moves, or reallocate the widget tree through the
14534         resize queue otherwise.
14535         (gtk_window_move_resize):
14536         mostly rewrote this function to figure window manager hints more
14537         reliably, coalesce window moves and resizes to reduce configure events
14538         and do actuall size allocations.
14539
14540 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
14541
14542         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
14543         that have a resize pending, because a redraw is already queued for them.
14544
14545         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
14546         hack to clear resize_widgets.
14547
14548         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
14549         for resize containers prior to size allocation. (this is also a bit
14550         ugly, but avoids side effects for stopped emissions and is thus more
14551         reliable).
14552         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
14553
14554         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
14555         function from gtk_tooltips_expose, as we connect to ::expose_event
14556         *and* ::draw now.
14557
14558 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
14559
14560         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
14561         checks.
14562         (gtk_target_list_unref): Likewise.
14563
14564         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
14565
14566 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
14567
14568         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
14569         guard against division by zero. (Fixes bug #1339)
14570
14571 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
14572
14573         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
14574         Prevent the trivial leak of information of allowing
14575         word motion when the entry is not visible.
14576
14577 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
14578
14579         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
14580         modality to error dialog as well as confirmation dialogs.
14581         (Bug #1803, reported by Rosanna Wing Sze Yuen)
14582
14583 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
14584
14585         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
14586         tree->view_lines.
14587         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
14588
14589         * gtk/Makefile.am (install-data-local): Solaris apparently
14590         has various troubles with ln -f; use rm first instead.
14591         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
14592
14593 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
14594
14595         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
14596         use `cp' followed by `rm' (the `rm' was already there).
14597
14598 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14599         
14600         * configure.in: Fix autoconf warnings about cross compilation by
14601         trying to provide sane defaults for AC_TRY_RUN.
14602         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
14603         put them into $(srcdir) when generated. Also add a dependency of
14604         gtksignal.h on gtkmarshal.h for -j builds. 
14605         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
14606
14607 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
14608
14609         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
14610         GDK_THREADS_{LEAVE,ENTER} pair.
14611         (From Paul Fisher <pnfisher@redhat.com>)
14612
14613 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
14614
14615         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
14616         width and height are always >0 (owen).
14617
14618 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
14619
14620         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
14621         change that assured that a widget's allocated with and height are
14622         always >1, since this breaks *buggy* panel code. unfortunately this
14623         back-breaks the gimp's color selector.
14624
14625         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
14626         allocation is always >0 in width and height, before sending the
14627         configure event; this is a *gross* hack to get the gimp back to work.
14628         
14629         * marked both cases with TODO-1.3
14630
14631 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
14632
14633         * gtk/gtktext.c: Don't display wrap indicators when
14634         text is not editable and word wrap is on.
14635
14636 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
14637
14638         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
14639         option menus here as they are not derived from menu shell, assure that
14640         the option menu has a menu we can add items to.
14641
14642 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
14643
14644         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
14645         width/height to (gint) before calculations and check against < 0 to
14646         avoid guint wraparounds.
14647
14648 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
14649
14650         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
14651         width and height is never zero. sanity check both dimensions against
14652         32767 and issue a warning if the allocation is greater than that.
14653
14654 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
14655
14656         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
14657         to g_main_pending() as well.
14658
14659 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
14660
14661         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
14662         call to g_main_iteration() - since that will regrab
14663         GTK+ lock to process events.
14664
14665 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
14666
14667         * gtk/gtkwindow.c
14668         - Regularize with the rest of GTK+ by making widget->requisition
14669           not reflect the set_usize()
14670         - Always recompute geometry hints, then check if they
14671           changed before sending them to the X server. The
14672           previous checks for changes would fail in a number
14673           of circumstances. 
14674
14675 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
14676
14677         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
14678
14679 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
14680
14681         * gtk/gtkdnd.c:
14682         - Code cleanups
14683         - Instantaneously update on modifier key presses
14684         - Allow cancellation of the drag with Escape.
14685
14686 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
14687
14688         * gtk/testgtk.c (create_handle_box): Set the policy
14689         to auto_shrink - otherwise the appearance is rather
14690         strange when flipping between horizontal and vertical.
14691
14692 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
14693
14694         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
14695         (gtk_window_set_default_size): don't change a value if it's < 0.
14696         queue a resize.
14697
14698 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
14699
14700         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
14701
14702 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
14703
14704         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
14705         add an extra "/" when concating "/" + filename.
14706         (From Matt Grossman <mattg@oz.net>)
14707
14708 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
14709
14710         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
14711         for fg_gc if we set it for drawing pixmap.
14712
14713 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
14714
14715         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
14716         
14717         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
14718         already set, call old engine's destroy function and
14719         unref the old engine.
14720
14721 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
14722
14723         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
14724
14725 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
14726
14727         * gtk/gtkaccelgroup.h: mark certain functions as internal.
14728
14729 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
14730
14731         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
14732         expand behaviour changed.
14733
14734         * gtk/gtklabel.c (gtk_label_set_pattern):
14735         (gtk_label_set_justify):
14736         (gtk_label_set_line_wrap):
14737         don't bother invoking queue_clear, the reallocation does
14738         that for us, always free_words so the upcoming resize will
14739         relayout the label's contents.
14740
14741 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
14742
14743         * applied argument implementation patches from Elena Devdariani
14744         <elena@cogent.ca>.
14745
14746         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
14747         ::space_style, ::relief
14748         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
14749         * gtk/gtkpreview.c: ::expand
14750         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
14751         * gtk/gtknotebook.c: ::homogeneous
14752         * gtk/gtklabel.c: ::wrap
14753         * gtk/gtklist.c: ::selection_mode
14754         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
14755         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
14756         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
14757         * gtk/gtkclist.c: ::sort_type
14758         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
14759         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
14760
14761 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
14762
14763         * gtk/gtkstyle.c: Removed ill-thought-out part of last
14764         comment.
14765
14766 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
14767
14768         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
14769         counting right when we have to attach a new style
14770         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
14771
14772         * gtk/gtkstyle.c: Documented the refcounting
14773         peculularities of gtk_style_attach.
14774
14775 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
14776
14777         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
14778         window types.
14779
14780         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
14781         of GTK_TOPLEVEL for creating the window.
14782
14783 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
14784
14785         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
14786         the last argument (reported by Per Winkvist).
14787         
14788 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
14789
14790         Fixes for invisible XOR lines (Frank Loemker
14791         <floemker@TechFak.Uni-Bielefeld.DE>)
14792         
14793         * gtk/gtkclist.c (gtk_clist_realize): Always use
14794         a non-zero pixel for GDK_XOR.
14795
14796         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
14797         Use GDK_INVERT instead of GDK_XOR.
14798
14799 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
14800
14801         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
14802         signals if h/voffsets differ from adjustment values.
14803         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
14804
14805 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
14806
14807         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
14808         ::selection-done emissions up to the topmost menu shell.
14809
14810 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
14811
14812         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
14813         the user data on the window before destroying it.
14814
14815         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
14816         unrealize handler to take care of destroying 
14817         notebook->panel properly. 
14818         (Bug #1198 - Morten Welinder <terra@diku.dk>)
14819
14820         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
14821         of g_new and g_realloc to stop memory leak. (Actually,
14822         we could just use g_realloc(), but I'm not 100% sure
14823         that is portable).
14824         (Bug #1196 - Morten Welinder <terra@diku.dk>)
14825
14826 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14827
14828         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
14829
14830         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14831         for fontsets.
14832
14833         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
14834         with bin/button confusion.
14835
14836 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
14837
14838         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
14839         and show how preselection of radio items is done.
14840
14841 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
14842
14843         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
14844         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
14845         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
14846         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
14847         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
14848         * gtk/gtktable.c (gtk_table_attach): 
14849         * gtk/gtklist.c (gtk_list_insert_items): 
14850         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
14851         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
14852         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
14853         * gtk/gtkbin.c (gtk_bin_add): 
14854         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
14855         * gtk/gtkfixed.c (gtk_fixed_put): 
14856         * gtk/gtklayout.c (gtk_layout_put):
14857         general fixups to container_add logic. always realize child if
14858         child->parent is realized, only map the child and queue a resize
14859         if child and child->parent are both visible.
14860
14861 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
14862
14863         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
14864         instead of gtk_container_foreach to walk and unrealize children, so
14865         composite children get also unrealized.
14866         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
14867         (gtk_widget_map): assert that the widget is visible (basic constrain).
14868         (gtk_widget_real_map): assert that the widget is realized (basic
14869         constrain).
14870
14871 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
14872
14873         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
14874
14875 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
14876
14877         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
14878         file for iso-8859-2 locales.
14879
14880         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
14881
14882 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
14883
14884         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
14885          (Pointed out by andy@rz.uni-karlsruhe.de and others).
14886          Remove some suspicious and useless lines. 
14887
14888 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
14889
14890         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
14891         width,height = 0, 0 to mean - here to edge of window,
14892         instead of -1, -1, since the former is all we support.
14893
14894 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
14895
14896         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
14897         when removing from quit_functions list.
14898
14899 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
14900
14901         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
14902
14903 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
14904
14905         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
14906          When redrawing characters on non-visible entry, use appropriate
14907          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
14908
14909 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
14910
14911         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
14912         from drag coordinates.
14913         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
14914         use drag_dest_cell.
14915
14916         * gtk/gtktree (drag_dest_cell)
14917         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
14918         (Bug #1129)
14919
14920 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
14921
14922         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
14923         translate_* fields.
14924         (gtk_item_factory_finalize): invoke translate_notify independant from
14925         translate_data.
14926         (gtk_item_factory_set_translate_func): likewise.
14927         (gtk_item_factory_destroy): only remove ifactory pointer from those
14928         widgets that belong to us (stupid me).
14929
14930 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
14931
14932         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
14933         rc_style list when lookup succeeeds.
14934
14935 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
14936
14937         * gtk/gtkctree.c (resync_selection): 
14938         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
14939         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
14940         bug.
14941
14942 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
14943
14944         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
14945         Add some missing GDK_THREADS_ENTER()/LEAVE around
14946         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
14947
14948 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
14949
14950         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
14951         rather than emit_by_name.
14952
14953         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
14954         on the widget across multiple signal emissions.
14955         (gtk_editable_delete_text): same here.
14956         (gtk_editable_class_init): set widget_class->activate_signal after
14957         editable_signals[ACTIVATE] has been created.
14958
14959 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
14960
14961         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
14962         position here prematurely -- we might not have the
14963         right ->min_position and ->max_position yet.
14964
14965 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14966
14967         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
14968         Add error traps so if the other end of the connection
14969         dies, we survive.
14970
14971         * gtk/gtkselection.c (gtk_selection_notify): Clean
14972         up properly when selection property retrieval fails.
14973         
14974         * gtk/gtkselection.c (gtk_selection_request): Correctly
14975         reject SelectionRequest notifies where the handler
14976         returns no data.
14977
14978 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14979
14980         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
14981         when we've previously highlighted.
14982
14983         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
14984         emit two "drag_leave" signals for Motif drops.
14985
14986         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
14987         back the correct status messages when dropping from
14988         Motif onto a proxy window that is rejecting the
14989         drop.
14990
14991 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
14992
14993         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
14994         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
14995         to compare two argument values. added gtk_arg_to_valueloc() to set a
14996         variable from an arg through its location (pointer).
14997
14998         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
14999         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
15000         as gfloat*, uchars are collected as guchar*, ints are collected as
15001         gint*, etc...
15002
15003 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
15004
15005         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
15006         Include <string.h> instead of <strings.h>.
15007
15008         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
15009         (actually, a lot more duplicate includes occur if
15010          you trace through the sequence of #include's)
15011         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
15012         
15013 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15014
15015         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15016         gtk-a-higuti-990322-[0-3]
15017
15018         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15019         that was causing -DX_LOCALE not to work.
15020
15021         * gtk/gtkrc.c (gtk_rc_init):
15022         X_LOCALE will never have LC_MESSAGES defined
15023
15024 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
15025
15026         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
15027         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
15028
15029         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
15030         left/right as well (gtk-michael-980726-0.patch.gz).
15031
15032         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
15033         for pointer values, use gchar instead of char. fixed uline allocation
15034         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
15035         chunks instead of G_ALLOC_ONLY.
15036         (gtk_label_size_request): always alter requisition as passed and leave
15037         widget->requisition alone.
15038         (gtk_label_set_text): allow NULL strings.
15039         (gtk_label_new): likewise.
15040
15041 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
15042
15043         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
15044
15045 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
15046
15047         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
15048         *and* mapped (i.e. drawable).
15049         (gtk_bin_expose): only send exposes to drawable children.
15050
15051         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
15052         (gtk_box_expose): only send exposes to drawable children.
15053
15054         * gtk/gtkhscale.c (gtk_hscale_draw): 
15055         * gtk/gtkvscale.c (gtk_vscale_draw):
15056         hm, this is an ugly one. we first compute the size of our trough area
15057         here (window relative) and then check intersection with the draw_area
15058         which is parent relative because we're a NO_WINDOW widget, so we need
15059         to offset the trough area by allocation.x and allocation.y before the
15060         check. (this must not be done for the background area though, since
15061         that's already computed parent relative).
15062
15063 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
15064
15065         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
15066         unrealize title buttons.
15067
15068 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
15069
15070         * gtk/gtkclist.c (gtk_clist_column_title_passive)
15071         (gtk_clist_column_title_active): 
15072         only connect/disconnect to GtkWidgetClass::event to block mouse events.
15073
15074         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
15075         zero initialize event, removed superfluous gdk_window_get_pointer call
15076
15077         * gtk/gtklist.c (gtk_list_vertical_timeout)
15078         (gtk_list_horizontal_timeout): removed superfluous
15079         gdk_window_get_pointer call
15080
15081 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15082
15083         * plugging problems reported by "Bruce Mitchener, Jr."
15084         <bruce@puremagic.com> due to a purify session.
15085
15086         * gtk/gtkstyle.c:
15087         (gtk_style_ref): 
15088         (gtk_style_unref): assert ref_count to be > 0.
15089
15090         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
15091         the requisition.
15092         (gtk_clist_set_shift): likewise.
15093
15094         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
15095         adjustments.
15096
15097         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
15098         event before sending it and set send_event to TRUE (which needs to
15099         be done for *all* synthesized events).
15100         (gtk_list_vertical_timeout): likewise.
15101
15102         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
15103         leaks.
15104
15105         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
15106         to TRUE when synthesizing events.
15107
15108 [ *** end of merges from 1.2 *** ]      
15109         
15110 1999-11-21  Tor Lillqvist  <tml@iki.fi>
15111
15112         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
15113         (or copied from gdkconfig.h.win32 on Win32, sigh).
15114
15115         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
15116
15117         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
15118
15119         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
15120
15121         * gdk/gdkconfig.h.win32: New file.
15122
15123         * gdk/win32/makefile.cygwin: Build just a static archive here.
15124
15125         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
15126         for the DLL from the static archive built above.
15127
15128         * gdk/gdk.def: Moved here from the win32 subdirectory.
15129
15130         * gdk/win32/*: Adapt for the changed private struct organisation.
15131
15132         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
15133
15134 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
15135
15136         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
15137         for wheel mice (buttons 4 and 5).
15138
15139 1999-11-18  Tor Lillqvist  <tml@iki.fi>
15140
15141         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
15142         drawables use just the pixel field in the foreground and
15143         background GdkColor of the GdkGC.
15144
15145         gdk_gc_set_{fore,back}ground() are called in the GIMP with
15146         GdkColors containing uninitialized (red,green,blue) fields, and
15147         just the pixel field filled in, and furthermore in the
15148         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
15149         It thus turns out that we really don't need to have the full
15150         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
15151         it later to have just the pixel values.
15152
15153 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
15154
15155         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
15156
15157 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
15158
15159         * docs/gtkfaq.sgml: threads example from Erik Mouw.
15160         New question on GtkLabel background colors.
15161
15162         * docs/gtk_tut.sgml:
15163           - Correct the example code callback
15164             function definitions.
15165           - Update the gtkdial example code, from Frans van Schaik.
15166           - Update setselection.c to current API.
15167
15168         * examples/Makefile examples/*/*.c: Update to code
15169         listed in tutorial.
15170
15171 1999-11-10  Tor Lillqvist  <tml@iki.fi>
15172
15173         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
15174         subrange table (from the "Developing International Software for
15175         WIndows 95 and Windows NT" book) was missing the Hangul syllable
15176         block... Get the loaded font's charset correctly.
15177
15178         (Note that this, and the other *-win32.c files, still really are
15179         the old ones, the win32 subdirectory is not ready for compilation
15180         yet after the reorg.)
15181
15182 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
15183
15184         * gtk/gtkclist.c: Fix off-by-one bug in parameter
15185         check.
15186
15187 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
15188
15189         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
15190         on results of XQueryDeviceState().
15191
15192 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
15193
15194         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
15195         we need to accesss only ->children. We need an accessor
15196         for the children.
15197
15198         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
15199         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
15200         to get rid of gdkx.h include.
15201         
15202         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
15203         and random references to 'None'.
15204
15205         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
15206         Get rid of unused #include <gdk/gdkx.h>
15207
15208         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
15209         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
15210         gdkconfig.h.
15211
15212 1999-11-08  Tor Lillqvist  <tml@iki.fi>
15213
15214         * gdk/win32/gdkdraw.c
15215         * gdk/win32/gdkfont.c
15216         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
15217         following yesterday's changes. (Unrelated to Owen's reorg.)
15218
15219 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
15220
15221         * gdk/x11/gdkinput-gxi.c: Add missing include,
15222           fix GdkWindowPrivate => GdkDrawablePrivate.
15223
15224         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
15225
15226         * gdk/x11/Makefile.am (xinput_sources): Add missing
15227         backslash to fix building with --with-xinput=none
15228
15229 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
15230
15231         Move all X specific code into the x11/ directory.
15232         Aside from shuffling things around, did the following:
15233
15234        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
15235          gdk_arg_context_* - a simple argument parsing system
15236          in the style of popt.
15237
15238        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
15239          gdk/x11/gdkprivate-x11.h:
15240          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
15241          add ->klass and ->klass_data fields. The klass_data
15242          field points to an auxilliary structure that is
15243          windowing system dependent.
15244
15245        * gdk/gdkfont.c: Make most of the measurement functions
15246          simply wrappers around gdk_text_extents().
15247
15248        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
15249          _gdk_font_strlen() function that hides the weird
15250          behavior in gtk+-1.[02] where a string is interpreted
15251          differently for 8-bit and 16-bit fonts.
15252
15253        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
15254          to store common code for synthesizing double/triple
15255          press events.
15256         
15257        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
15258          Make all the function that modify an existing GC
15259          simply wrappers around gdk_gc_set_values().
15260          
15261        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
15262          for throwing out later.
15263
15264        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
15265          GdkImagePrivate and GdkColormapPrivate to have a
15266          windowing system dependent part (GdkFontPrivateX etc.)
15267          that "derives" from the system-independent part.
15268
15269        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
15270          Got rid of the included-source-files for XInput in
15271          favor of automake conditionals. (Which didn't exist
15272          when XInput support was originally added.)
15273
15274        * gdk/gdkrgb.c: Remove the visual id from the debugging
15275          statements since that is X11 specific; print out
15276          type/depth info instead.
15277          
15278
15279 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
15280
15281         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
15282         loading duplicates of hashed fonts.
15283
15284         * gdk/gdk.c (gdk_keysym_convert_case): rename
15285         gdk_XConvertCase to gdk_keysym_convert_case, allow
15286         results to be NULL in the GTK+ style.
15287
15288         * gdk/gdkcompat.h: Started compatibility header
15289         for renames.
15290
15291 1999-11-07  Tor Lillqvist  <tml@iki.fi>
15292
15293         * gdk/win32/gdkprivate.h: New font private structures, related to
15294         fontsets.
15295
15296         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
15297         gdk_font_list_free(). On X11, will just be wrappers to
15298         XListFonts() and XFreeFontNames(). On Win32, the code previously
15299         in gtkfontsel.c is now here.
15300
15301         New function gdk_font_xlfd_create(). On X11 will get the FONT
15302         property of the font (for GDK_FONT_FONTs), or call
15303         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
15304         builds a XLFD style name from the font information in the LOGFONT
15305         struct(s).
15306
15307         New function gdk_font_xlfd_free(), which correspondingly frees the
15308         string returned by gdk_font_xlfd_create().
15309
15310         Implement fontsets on Win32. Add a function that iterates over a
15311         wide char string and calls a callback function for each substring
15312         of wide chars from the same Unicode subrange (and thus probably
15313         available in the same real font).
15314
15315         Improve the XLFD emulation a bit.
15316
15317         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
15318
15319         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
15320         Beta3, WM_IME_CHAR messages don't seem to contain the composed
15321         multi-byte char as with the Active IMM on Win9x. Oh well, handle
15322         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
15323         ImmGetCompositionStringW() to get the composed Unicode chars.
15324
15325         * gdk/win32/gdkgc.c
15326         * gdk/win32/gdkdraw.c: Changes needed because of the font private
15327         struct changes.
15328
15329         * gdk/win32/gdk.def: Add the new functions.
15330
15331 1999-11-04  Tor Lillqvist  <tml@iki.fi>
15332
15333         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
15334         get the Platform SDK to get <dimm.h>.
15335
15336         * gdk/win32/gdkevents.c: More event handling fixes and
15337         simplification. Never generate motion events with is_hint true. We
15338         used to do that on bogus grounds earlier. Windows sends
15339         WM_MOUSEMOVE messages on button events even if the mouse hasn't
15340         moved, ignore these.
15341
15342         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
15343
15344         * gdk/win32/gdkglobals.c
15345         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
15346         the TrackMouseEvent function, and use it.
15347
15348         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
15349         char before calling WideCharToMultiByte in order to get a string
15350         for the window title.
15351
15352         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
15353
15354         * gdk/win32/gdk.def: Remove obsolete functions.
15355
15356         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
15357         /nodefaultlib and /defaultlib switches.
15358
15359         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
15360
15361 1999-10-31  Tor Lillqvist  <tml@iki.fi>
15362
15363         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
15364         EuroSign).
15365
15366         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
15367         same type as GdkWChar, especially on Win32.
15368
15369         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
15370
15371         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
15372         before passing to Windows GDI for drawing etc. Convert to the
15373         system default codepage before passing to Windows as window
15374         titles.
15375
15376         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
15377         support changing input locale on the fly.
15378
15379         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
15380         on-the-fly changes. Convert incoming characters from the current
15381         codepage to Unicode (and then to a UTF-8 multi-byte string) based
15382         on the current input language. Use keysym<->Unicode mapping tables
15383         and functions borrowed from xterm sources.
15384
15385         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
15386         editions of Win9x, use the ActiveX-based Active IMM (Input Method
15387         Manager) if available. IMEs and the Active IMM are available under
15388         the disguise of Chinese, Korean and Japanese support for IE and
15389         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
15390         support is present in all editions (as long as you install it).
15391
15392         Call DispatchMessage from gdk_events_queue() (and thus
15393         gdk_WindowProc()), instead of duplicating the code in
15394         gdk_WindowProc().
15395
15396         Reworked the grab handling and propagation code, factored out
15397         duplicated code snippets into separate functions. Other cleanups,
15398         too.
15399
15400         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
15401         the <dimm.h> header describing the Active IMM.
15402
15403         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
15404         just do the same as for "single" fonts.
15405
15406         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
15407         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
15408         the new keysyms from gdkkeysyms.h.
15409
15410         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
15411         fontset, so that gtkentry uses wide characters.
15412
15413         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
15414         GTk+'s system directory "gtk+", not "gtk".
15415
15416 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
15417
15418         * docs/gtkfaq.sgml: FAQ update
15419
15420 1999-10-21  Tor Lillqvist  <tml@iki.fi>
15421
15422         * gdk/win32/gdkprivate.h: Add more font private data.
15423
15424         * gdk/win32/gdkfont.c
15425         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
15426         fonts and strings. Now works much better. You still have to
15427         have a correct font selected, though. No fontset emulation yet.
15428
15429 1999-10-19  Tor Lillqvist  <tml@iki.fi>
15430
15431         * gtk/maketypes.awk: Use G_OS_WIN32.
15432
15433         * gtk/gtk.def: Add some missing entry points. Also some non-public
15434         ones, but PyGTK porter claims to need them.
15435
15436         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
15437         built-in type generation.
15438
15439 1999-10-14  Tor Lillqvist  <tml@iki.fi>
15440
15441         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
15442         GDK_FONT_FONT fonts (which is all we have for now, we don't
15443         emulate fontsets). The X11 version uses plain XDrawString in that
15444         case, too. The string passed to gdk_draw_text_wc seems to be in
15445         fact (at least, when used by gtkentry and gtktext) either in a
15446         single-byte charset, or a DBCS. Not Unicode.
15447
15448         This fixes the problem in gtkfontsel, where even if you had
15449         selected a font with a non-Latin1 charset (windows-greek, for
15450         instance), the preview still used Latin-1 glyphs.
15451
15452         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
15453         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
15454         (gdk_font_load): Recognize the demibold etc weights, even if we
15455         don't have the corresponding constants in the headers.
15456         (gdk_font_hash_insert): Use same hash mechanism as in the X11
15457         version. Should save font resources a bit, when we don't have
15458         multiple HFONTs for the same font.
15459
15460         * gdk/win32/gdkprivate.h: Add the names field as in the X11
15461         version.
15462
15463 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
15464
15465         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
15466         X values
15467
15468 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
15469
15470         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
15471         layout support (as mentioned on
15472         http://www.jcinteractive.com/gnome-ui/software/widgets/)
15473
15474 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
15475
15476         * gtk/fnmatch.c
15477         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
15478
15479 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
15480
15481         * configure.in (ALL_LINGUAS): Added Galician (gl)
15482
15483 1999-10-05  Tor Lillqvist  <tml@iki.fi>
15484
15485         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
15486
15487         * gdk/win32/gdkcompat.c: New file, actually provide an
15488         implementation for the deprecated functions. (Just temporarily.)
15489
15490         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
15491
15492         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
15493
15494         * gdk/win32/gdk.def gtk/gtk.def: Updates.
15495
15496 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
15497
15498         * configure.in: Added "uk" to ALL_LINGUAS.
15499         
15500 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
15501
15502         * configure.in: correct checking for BeOS check
15503
15504         * gdk/gdktypes.h
15505         * gtk/fnmatch.c
15506         * gtk/gtkfilesel.c
15507         * gtk/gtkitemfactory.c
15508         * gtk/gtkmain.[ch]
15509         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
15510
15511 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
15512
15513         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
15514         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
15515         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
15516         by Bulgarian). 
15517
15518 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
15519
15520         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
15521         Fix a reference to window_private->destroyed.   
15522
15523         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
15524         (ugly) setting of an internal GdkWindow member to use
15525         a _slightly_ cleaner macro.
15526
15527         * gdk/gdkprivate.h: Split GdkWindowPrivate into
15528         GdkDrawablePrivate and GdkWindowPrivate.
15529         Add extra macros for accessing GDK_DRAWABLE_ components.
15530
15531         * *.[ch]: Massive adjustments for the above, use the
15532         new macros in a lot of places.
15533
15534 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
15535
15536         * gdk/gdktypes.h: Make GdkDrawable the base type,
15537         not GdkWindow.
15538
15539 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
15540
15541         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
15542
15543 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
15544
15545         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
15546
15547 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
15548
15549         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
15550         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
15551
15552         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
15553
15554         * docs/gtk-config.1: Now autogenerated.
15555         * docs/Changes-1.4.txt: started
15556         
15557 1999-10-03  Tor Lillqvist  <tml@iki.fi>
15558
15559         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
15560         to #ifdef also here.
15561
15562         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
15563         Owen did to the X11 backend.
15564
15565         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
15566         ScrollWindowEx when blitting inside a window, it can't be correct
15567         in the general case.
15568
15569         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
15570         WM_GETMINMAXINFO is easier.
15571
15572         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
15573         depth equal to the bitspixel value, not the visual's depth.
15574
15575         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
15576         to 24 even if the bitspixel value is 32.
15577
15578         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
15579         need to check for depth==32 when bpp==32, depth will always be 24.
15580
15581 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
15582
15583         * docs/Changes-1.4.txt: Started
15584         
15585         * gtk/Makefile.am (gdk_headers): Include all the new headers.
15586
15587         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
15588         
15589         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
15590         into C file.
15591         
15592         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
15593         header to gdkinputprivate.h.
15594
15595         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
15596         unused since before 1.2.
15597
15598 1999-09-30  Tor Lillqvist  <tml@iki.fi>
15599
15600         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
15601         expand possible hex escapes in the font family (put there by
15602         logfont_to_xlfd if the font name isn't a legal XLFD font family,
15603         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
15604         On Win32, add hex escapes here, too.
15605
15606 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
15607
15608         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
15609         to #ifdef GDK_WINDOWING_X11.
15610
15611 [ Merges from gtk-1-2 ]
15612
15613 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
15614
15615         * configure.in: fixed "GNU Make" check to pass with new make version
15616         3.77.95.
15617
15618 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
15619
15620         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
15621         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
15622         AM_PATH_GTK() macros don't get confused by the -pre1.
15623
15624 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15625
15626         * configure.in (REBUILD): Change check for perl5
15627           to check explicitely for v >= 5.002. (5.001
15628           does not work with our scripts.)
15629
15630 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
15631
15632         * configure.in: evaluate $PERL for the perl version check. added
15633         --disable-rebuilds to give the user an option to completely disable
15634         any source autogeneration rules.
15635
15636 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
15637
15638         * configure.in: evaluate $ac_make when checking for GNU Make.
15639
15640 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15641
15642         * docs/Makefile.am: added generation.txt.
15643
15644         * Makefile.am: require automake 1.4, build README from README.in and
15645         INSTALL from INSTALL.in in dist-hook.
15646         
15647         * README.in:
15648         * INSTALL.in: new files to autogenerate README and INSTALL from.
15649
15650         * configure.in: figure whether we have GNU Make
15651
15652         * docs/generation.txt: minor additions/corrections.
15653
15654 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
15655
15656         * docs/gtkfaq.sgml: FAQ Update
15657
15658 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15659         
15660         * configure.in: Fix autoconf warnings about cross compilation by
15661         trying to provide sane defaults for AC_TRY_RUN.
15662
15663 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
15664
15665         * ltconfig
15666         * ltmain.sh: upgrade to libtool 1.3.3
15667
15668 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
15669
15670         * INSTALL: Indicate that the --with-glib= configure
15671         time flag is unsupported.
15672
15673 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
15674
15675         * docs/generation.txt: Added a file that gives
15676         documenation about the autogeneration process for
15677         various autogenerated files.
15678         
15679 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
15680
15681         * configure.in (LIBS): Look for libgmodule in the
15682         right location.
15683
15684 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
15685
15686         * docs/gtk_tut.sgml: Removed references to
15687         code examples in my directory on gtk.org as
15688         they should all be in the tutorial now.
15689
15690         * docs/gtk_tut.sgml: Added sources for dial-test
15691         and scribble-xinput programs that were previously
15692         missing.
15693
15694 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
15695
15696         * TODO: Added entry about menu keyboard navigation, removed
15697         some finished items.
15698
15699 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
15700
15701         * acinclude.m4: Standardize on func_dgettext
15702         not func_gettext, so that the checks for dgettext
15703         actually are paid attention to.
15704
15705 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
15706
15707         * configure.in (LIBS): Add $INTLLIBS into $LIBS
15708         directly, rather than repeating the checks for
15709         gettext.
15710
15711         * INSTALL: Added information about gettext and
15712         NLS support.
15713
15714         * acinclude.m4 (LIBM): Check for dgettext, not
15715         just gettext. This should hopefully fix things wrt
15716         systems with old versions of GNU gettext installed.
15717
15718 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
15719
15720         * configure.in (LIBS): Look for libgmodule in the
15721         right location.
15722
15723 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
15724
15725         * autogen.sh: add --enable-maintainer-mode
15726
15727         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
15728
15729 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
15730
15731         * docs/gtk-config.1.in:
15732           docs/Makefile.am:
15733           configure.in: gtk-config is now generated.
15734
15735         * docs/gtk-config.1: Removed, now generated.
15736
15737 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
15738
15739         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
15740         handle CreateNotify itself, still put out a debuging message for
15741         --gdk-debug=events. made the ReparentNotify debugging message more
15742         verbose.
15743         wrap xcoords translation for ConfigureEvents into an error trap,
15744         a destroy event may already be pending, and in that case, the
15745         actuall coordinate values are not at all critical.
15746
15747 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
15748
15749         * gdk/gdkcc.c: Stop leaking the color_hash all over
15750         the place. Simplify and improve the logic.
15751
15752 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
15753
15754         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
15755         for prototypes and function implementations consistent (reported
15756         by Tomas Ogren).
15757
15758 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
15759
15760         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
15761         send_event set in debugging output.
15762         (gdk_compress_exposures): default initialize the event so we don't
15763         operate on bogus values (namely send_event).
15764
15765 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15766
15767         * gdk/gdkwindow.c: When we receive an unexpected
15768         destroy notify on one of our windows, don't just
15769         warn about it, also mark our windows as destroyed.
15770
15771 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
15772
15773         * gdk/gdkfont.c (gdk_font_hash_insert): Add
15774           name => font and name => fontset hashes. The 
15775           name => fontset hash is a _big_ win since we
15776           weren't previously caching fontsets at all and loading
15777           fontsets is expensive. The name => font hash
15778           is less of a win, but it does save us from doing
15779           repeated XQueryFont calls on the same font.
15780
15781         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
15782           list so we can remove font/fontset from hash.
15783
15784 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15785
15786         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
15787           and slightly confusing test. [ XInternAtom (,,TRUE)
15788           will never return None ].
15789
15790 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
15791
15792         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
15793           gdk/gdkwindow.c (gdk_window_set_hints):
15794
15795         Don't omit setting the properties if flags == 0 -
15796         there may be an existing set of properties there
15797         already. (Very old bug. Would it be better to
15798         delete the property instead?)
15799
15800         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
15801           spelling error in comment.
15802
15803 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
15804
15805         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
15806           to avoid stomping over gdk_error_warnings.
15807
15808         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
15809           as (bits_per_pixel + 7) / 8. This gives the same
15810           result as before for multiples of 8, but actually
15811           a "reasonable" value for 1bit or 4bit displays.
15812
15813 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15814
15815         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
15816         GNU Make.
15817
15818 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15819
15820         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
15821         discarding configure events.
15822
15823 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15824
15825         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
15826         refcount is greater than zero.
15827
15828         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
15829
15830         * gdk/gdkfont.c (gdk_font_unref): Likewise.
15831
15832         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
15833
15834         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
15835
15836 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15837
15838         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
15839         that format 32 => sizeof(item) == 4. It really is
15840         sizeof(long).
15841
15842 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
15843
15844         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
15845         core dump at all on X IO errors, only core dump
15846         if --enable-debug for X errors.
15847
15848 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
15849
15850         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
15851         unknown window:" message. disabled ConfigureNotify discarding code,
15852         because it led to events being processed out of order.
15853
15854 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
15855
15856         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
15857
15858         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
15859         we export this function, supress error warnings and don't reset the
15860         error code in the first half of this function.
15861
15862         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
15863         code (instead of just -1) so gdk_error_trap_pop() reveals something
15864         actually informative about the error that happened.
15865
15866         * gdk/*.c:
15867         don't rely on gdk_error_code being -1 if an error occoured, but just
15868         gdk_error_code != 0.
15869
15870 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
15871
15872         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
15873         pointer *before* invoking the filter function, so we at least don't
15874         crash if a filter is removed that is currently executed. window filters
15875         *really* need to be made truely reentrant at some point.
15876
15877 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
15878
15879         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
15880         PropertyNotify debug messages.
15881
15882 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
15883         
15884         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
15885         
15886         * gdk/gdkim.c: Fix cut-and-paste errors for 
15887         x/y and PreeditAttributes/StatusAttributes.
15888
15889 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15890
15891         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
15892         G_MAXINT to 2^16 to alleviate overflow problems in
15893         various window managers.
15894
15895 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15896
15897         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15898         for fontsets.
15899
15900 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
15901
15902         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
15903         Initialize size_hints.x and size_hints.y because kwm
15904         brokenly pays attention to them.
15905         (Bug #1181 -  Lars Heete <hel@admin.de>)
15906
15907 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
15908
15909         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
15910         return value of gdk_list_visuals(). 
15911         (Bug #1193 - Morten Welinder <terra@diku.dk>)
15912
15913 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
15914
15915         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
15916         XSetIMValues to (void *) when comparing to NULL, to workaround
15917         the problem of some compilers barfing since older X headers don't
15918         have the prototype for it.
15919
15920 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
15921
15922         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
15923         for pseudocolor where colormap->colors was double
15924         allocated.
15925
15926         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
15927         color value in the hash table with the pixel filled
15928         in so when we do later hash table lookups, the color
15929         value is correct.
15930         
15931 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
15932
15933         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
15934         making the call
15935
15936 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
15937
15938         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
15939         pointed out by Morten Welinder <terra@diku.dk>.
15940
15941 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15942
15943         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15944           default filter from the list
15945
15946 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15947
15948         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15949           default filter from the list
15950
15951 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
15952
15953         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
15954
15955         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
15956         g_strdup_printf instead of calcing the length separately
15957
15958 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
15959
15960         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
15961         that we don't do in many other places. (Fixing duplicate 
15962         #include of config.h)
15963
15964         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
15965         Otherwise, #ifndef XINPUT_NONE check in the latter
15966         doesn't work. (Bug #546)
15967
15968 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
15969
15970         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
15971         "None" case insensitive.
15972
15973 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15974
15975         * gdk/gdkselection.c: 
15976         Add error traps so if the other end of the connection
15977         dies, we survive.
15978
15979 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15980
15981         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
15982         dest_xid field into two fields - one for the window
15983         to send in messages, one to indicate the last looked
15984         up window for caching purposes. This is needed, so
15985         that Leave messages get the correct window.
15986
15987 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
15988
15989         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
15990         Fix warning created by people mucking around
15991         with the gsource API.
15992
15993         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
15994         Change mapping between GIOCondition and GdkInputCondition
15995         to match the way the Linux kernel does it. This should
15996         fix problems where closed pipes were no longer signalling
15997         GDK_INPUT_READ on systems with a native poll().
15998
15999 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
16000
16001         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
16002         explicitly for the string "None" - it is in the XPM
16003         spec and some servers treat unknown colors in odd ways
16004         (like asking the user!)
16005
16006 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16007
16008         * gdk/gdkevents.c: made "->" into a "." of previous change so
16009         it compiles
16010
16011 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
16012
16013         * gdk/gdkevents.c (gdk_compress_exposures): Set the
16014         window field of the event structure before calling
16015         user filters.
16016
16017 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16018
16019         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
16020         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
16021
16022 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
16023
16024         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
16025         intermediate text property - prevents major memory
16026         leak when gdk_use_mb.
16027         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
16028
16029 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16030
16031         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16032         gtk-a-higuti-990322-[0-3]
16033
16034         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
16035         sizeof(wchar_t) != sizeof (GdkWChar)
16036
16037         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16038         that was causing -DX_LOCALE not to work.
16039
16040         * gtk/gtkrc.c (gtk_rc_init):
16041         X_LOCALE will never have LC_MESSAGES defined
16042
16043         * gdk/gdk.c (gdk_init_check):
16044         Remove --xim-preedit and --xim-status from argv properly.
16045
16046         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
16047         that the client window is present on the X server
16048         before we pass it to the input method.
16049
16050 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
16051
16052         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
16053         if --display is specified on the command line, than
16054         the drag window will not be created on that display.
16055         
16056 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
16057
16058         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
16059         lookups with only_if_exists == TRUE were inserting
16060         bogus values into the atom cache.
16061
16062 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16063
16064         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
16065         then reset it to NULL.
16066
16067         * gdk/gdkcolor.c:
16068         (gdk_colors_free): 
16069         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
16070         key for g_hash_table_remove() in both functions, this prevents us
16071         from accessing possibly uninitialized portions of a GdkColor structure
16072         where we are only interested in its pixel value.
16073
16074 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16075
16076         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16077         font hash table, if we have a GdkFontPrivate entry for this font
16078         already, simply increment its reference count, provided by Olaf Dietsche
16079         <olaf.dietsche+list.gtk@netcologne.de>.
16080
16081 1999-09-21  Tor Lillqvist  <tml@iki.fi>
16082
16083         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
16084         just to be sure.
16085
16086         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
16087         unused variables, leftovers from the X11 version.
16088
16089         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
16090
16091         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
16092         downcase fields on X11.
16093
16094 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16095         
16096         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
16097         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
16098
16099 1999-09-17  Tor Lillqvist  <tml@iki.fi>
16100
16101         * gdk/win32/gdk.def: Add gdk_threads_mutex.
16102
16103         * gtk/makefile.msc: Correct path to libintl.
16104
16105         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
16106         use of gint vs. int, and gint vs. gboolean in headers and
16107         definitions. Use GtkType for the *_get_type functions. Note that
16108         these changes preserve binary compatibility.
16109
16110         * gdk/gdk.c
16111         * gdk/win32/gdk.c
16112         * gdk/gdk.h: Fix inconsistencies: gint vs int.
16113
16114         * gtk/gtkmain.c
16115         * gtk/gtkclist.c
16116         * gtk/gtkmenufactory.c
16117         * gtk/gtknotebook.c
16118         * gtk/gtkwidget.c: Fix inconsistencies, also gint
16119         vs. gboolean.
16120
16121         * gtk/gtkcolorsel.[ch]
16122         * gtk/gtkcombo.[ch]
16123         * gtk/gtkdrawingarea.[ch]
16124         * gtk/gtkgamma.[ch]
16125         * gtk/gtkhandlebox.[ch]
16126         * gtk/gtkhpaned.[ch]
16127         * gtk/gtkhruler.[ch]
16128         * gtk/gtkplug.[ch]
16129         * gtk/gtkpreview.[ch]
16130         * gtk/gtkruler.[ch]
16131         * gtk/gtksocket.[ch]
16132         * gtk/gtkstatusbar.[ch]
16133         * gtk/gtktoolbar.[ch]
16134         * gtk/gtkvbbox.[ch]
16135         * gtk/gtkvpaned.[ch]
16136         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
16137         functions.
16138
16139         * gtk/gtkgamma.h: Fix bug, missing () in call of
16140         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
16141
16142 1999-09-14  Tor Lillqvist  <tml@iki.fi>
16143
16144         * gdk/gdkcolor.c (gdk_colormap_new)
16145         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
16146         colormap->colors was allocated twice.
16147
16148         * gdk/win32/gdk.c: Remove some unused stuff.
16149
16150         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
16151         colormap.
16152
16153         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
16154         * gtk/gtklabel.h (gtk_label_get_type)
16155         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
16156         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
16157         in a couple of places, not guint.
16158
16159 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
16160
16161         * configure.in,po/et.po: added Estonian language file
16162
16163 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
16164
16165         * configure.in,po/da.po: added Danish file
16166
16167 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
16168
16169         * docs/gtkfaq.sgml: Minor FAQ Update
16170
16171 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
16172
16173         * docs/gtkfaq.sgml: FAQ update
16174
16175 1999-08-27  Tor Lillqvist  <tml@iki.fi>
16176
16177         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
16178         way to get window contents continually refreshed while resizing. I
16179         didn't like the effects myself, so it's not on by default.
16180
16181         * gdk/win32/gdkprivate.h: New flag variable
16182         gdk_event_func_from_window_proc, FALSE by default.
16183
16184         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
16185         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
16186         are passed --gdk-event-func-from-window-proc.
16187
16188         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
16189         and we have am event_func, call it instead of enqueing the event.
16190
16191 1999-08-23  Tor Lillqvist  <tml@iki.fi>
16192
16193         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
16194         Kelley: Set expose_count in GdkEventExposes correctly.
16195
16196         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
16197         MULTIPLE_WINDOW_CLASSES).
16198
16199         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
16200         for bug in NT, apparently NT *does* draw the end pixel, too, in
16201         LineTo with a one-pixel pen, so we don't have to do it ourselves.
16202
16203 1999-08-21  Tor Lillqvist  <tml@iki.fi>
16204
16205         Improvements by Hans Breuer: 
16206
16207         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
16208
16209         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
16210         CS_?REDRAW flags as they cause lots of (late) redraws when "show
16211         window contents while dragging" is turned on. Allocate at least
16212         one unique class for every GdkWindowType. If support for single
16213         window-specific icons is ever needed (eg. Dialog specific), every
16214         such window should get its own class.
16215
16216 1999-08-19  Tor Lillqvist  <tml@iki.fi>
16217
16218         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
16219         error that caused crashes.
16220
16221 1999-08-17  Tor Lillqvist  <tml@iki.fi>
16222
16223         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
16224         window, use ScrollWindowEx, and call UpdateWindow. This prevents
16225         bugs when for instance part of the window was outside the
16226         display. Thanks to Philippe Colantoni for finding and fixing this.
16227
16228 1999-08-16  Tor Lillqvist  <tml@iki.fi>
16229
16230         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
16231         endpoint calculations which were totally wrong. (A little RTFMing
16232         helps a lot ;-)
16233
16234         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
16235         from a separate directory, not from gettext, because of licensing
16236         issues (we want to use the LGPL version).
16237
16238         * README.win32: Mention the intl from glibc vs from gettext issue.
16239
16240 1999-08-13  Tor Lillqvist  <tml@iki.fi>
16241
16242         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
16243         in the key event handling: Now AltGr chars work again. Also,
16244         now Alt-digits are passed up as well as Control-digits.
16245         Pass keypad plus and minus as normal plus and minus.
16246
16247 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16248
16249         * docs/gtkfaq.sgml: FAQ Update
16250
16251 1999-07-25  Tor Lillqvist  <tml@iki.fi>
16252
16253         * README.win32
16254         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
16255         the Wintab SDK.
16256
16257         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
16258         OK, but getting closer. Guard against bogus tilt data from Wacom
16259         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
16260         enable easier building without Wintab.
16261
16262         * gdk/win32/gdkinput.h
16263         * gdk/win32/gdkevents.c 
16264         * gdk/win32/gdkwindow.c: Minor changes related related to above.
16265         
16266         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
16267         code. As we have just one visual on Win32, no sense to have it in a
16268         table, and no need for the hash table.
16269
16270         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
16271         better on white background.
16272
16273 1999-07-21  Tor Lillqvist  <tml@iki.fi>
16274
16275         * README.win32: Update gcc build instructions. Mention gettext is
16276         GPL.
16277
16278         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
16279         supported cursor size with GetSystemMetrics.
16280
16281         * gdk/win32/gdkfont.c
16282         * gtk/gtkfontsel.c: Guard against some font weight and charset
16283         symbols being undefined (in mingw32 headers).
16284
16285         * gdk/win32/makefile.cygwin
16286         * gtk/makefile.cygwin
16287         * gtk/gtkthemes.c: No longer need to have differently named
16288         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
16289
16290 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
16291
16292         * docs/gtkfaq.sgml: Long awaited FAQ update.
16293
16294 1999-07-15  Tor Lillqvist  <tml@iki.fi>
16295
16296         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
16297         it. Obscure bit manipulation needed.
16298
16299         * gdk/win32/gdkevents.c: Logging.
16300         
16301         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
16302         style (file name include compiler name) for theme engines.
16303
16304 1999-07-13  Tor Lillqvist  <tml@iki.fi>
16305
16306         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
16307
16308         * gdk/win32/gdkevents.c: Fix long-standing bug in key
16309         events. The key.string wasn't zero-terminated, still we strdup'ed
16310         it in gdk_event_copy(). Synthesize crossing events for button
16311         events before possible propagation.
16312
16313         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
16314
16315         * gdk/win32/makefile.cygwin
16316         * gtk/makefile.cygwin: Use new DLL naming style for the
16317         GCC-compiled ones.
16318
16319         * gdk/win32/makefile.msc
16320         * gtk/makefile.msc: Cosmetics mostly.
16321
16322         * gtk/gtk.def: Add missing entry points.
16323
16324         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
16325
16326 1999-07-09  Tor Lillqvist  <tml@iki.fi>
16327
16328         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
16329         or height is zero. Don't print a warning if Pie or Arc fails, they
16330         always fail (?) for very narrow ellipses.
16331
16332         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
16333         the part or the destination window corresponding to source area
16334         outside of the source drawable's boundary.
16335
16336         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
16337         anything if less than two points.
16338
16339         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
16340         return NULL. Gtk cut-and-paste inside a single program works
16341         better this way. (It always gets the clipboard contents from
16342         Windows, not from its own copy, which is cleared anyway. I can't
16343         say I fully understand what happens... Emulating the X selection
16344         and property stuff is a bit of a mess.)
16345
16346         * gdk/win32/gdkevents.c
16347         * gdk/win32/gdkproperty.c: A bit more verbose logging.
16348
16349         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
16350         that never got deleted). Revamp gdk_region_shrink.
16351
16352         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
16353         after use.
16354
16355         * gtk/gtk.def: Add some missing entry points.
16356
16357         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
16358         component.
16359
16360 1999-07-04  Tor Lillqvist  <tml@iki.fi>
16361
16362         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
16363         Control-digits specially.
16364
16365 1999-07-03  Tor Lillqvist  <tml@iki.fi>
16366
16367         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
16368
16369 1999-06-28  Tor Lillqvist  <tml@iki.fi>
16370
16371         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
16372         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
16373         finding this.)
16374
16375 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
16376
16377         * gtk+.spec.in: Corrected some typos in files section.
16378         
16379 1999-06-15  Tor Lillqvist  <tml@iki.fi>
16380
16381         * README.win32: Mention using GNU gettext.
16382         * config.h.win32: Enable NLS stuff.
16383         * gtk/makefile.msc: Use GNU gettext.
16384         * gdk/win32/gdkdnd.c: Minor header reorg.
16385         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
16386         cosmetics.
16387         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
16388         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
16389
16390 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
16391
16392         * acinclude.m4
16393         * config.guess
16394         * config.status
16395         * ltconfig
16396         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
16397
16398 1999-05-30  Tor Lillqvist  <tml@iki.fi>
16399
16400         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
16401         SafeAdjustWindowRectEx. Don't override all calls to
16402         AdjustWindowRectEx by it, but use it only in two places: When
16403         creating a new top-level window and when moving a top-level
16404         window.
16405
16406         Use screen coordinate rectangle, not client rectangle, in
16407         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
16408         when we try to place a window so that the decoration (mainly,
16409         title bar) isn't visible.
16410
16411         These changes fix the bug that showed up for instance as the
16412         GIMP's saved top-level windows moving right and down (by an amount
16413         equal to the window decoration) for each session. This bug showed
16414         up also in testgtk's "Saved Position".
16415
16416         gdk_window_resize also redone a bit.
16417
16418 1999-05-25  Tor Lillqvist  <tml@iki.fi>
16419
16420         * gtk/testgtkrc: Add (commented out) Windows-style theme
16421         include line.
16422
16423         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
16424
16425 1999-05-18  Tor Lillqvist  <tml@iki.fi>
16426
16427         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
16428         gdkx.h to a gdk subdirectory, so that applications can include
16429         these with <gdk/*.h> without trouble.
16430
16431         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
16432         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
16433         have their bitmap destroyed.
16434
16435         * gdk/win32/gdk.def: Add gdk_root_parent.
16436
16437 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
16438
16439         * configure.in
16440           gtk-config.in
16441           ltconfig
16442           ltmain.sh     
16443           gtk/Makefile.am: changes to compile nicely (with xlib) 
16444           on BeOS
16445
16446 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
16447
16448         * acinclude.m4
16449         * config.guess
16450         * config.sub
16451         * ltconfig
16452         * ltmain.sh: upgrade to libtool 1.3
16453
16454 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
16455
16456         * gtk/gtkclist.c:
16457         * gtk/gtkctree.c: merges from gtk-1-2
16458
16459 1999-04-25  Tor Lillqvist  <tml@iki.fi>
16460
16461         Support added for building using a GNU toolchain on Win32,
16462         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
16463
16464         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
16465         * config.h.win32: Changes for gcc.
16466         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
16467         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
16468         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
16469         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
16470         Protect shl stuff unavaiilable with mingw32 headers.
16471         * gdk/win32/gdkevents.c: Fix typo.
16472         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
16473         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
16474         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
16475         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
16476         the mingw32 headers.
16477         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
16478         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
16479         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
16480         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
16481         Test for NATIVE_WIN32, not _MSC_VER.
16482         * gtk/gtkmain.c: No use warning about developer version on Win32,
16483         there aren't any non-developer versions anyhow.
16484         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
16485         * gtk/makefile.msc: Use pthread from another directory. Minor other
16486         changes. 
16487
16488 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16489
16490         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16491           default filter from the list
16492
16493 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
16494
16495         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
16496          when gtk_widget_grab_default() is called for a widget that
16497          is not within a GtkWindow.
16498
16499 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
16500
16501         * docs/gtk_tut.sgml, examples/clist.c: use a
16502           scrolled window in the clist example. Minor
16503           tutorial fixes.
16504
16505 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
16506
16507         * docs/gtk_tut.sgml: Style check from David King
16508           <dking@youvegotmail.net>
16509
16510 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
16511
16512         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
16513         compile with unknown value of GDK_WINDOWING
16514
16515 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
16516
16517         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
16518         after the rule is fired.
16519         (install-exec-local): Install gdkconfig.h only if the contents are
16520         different from the currently installed gdkconfig.h.
16521
16522 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
16523
16524         * gdk/Makefile.am (configexecincludedir): Rename from 
16525         configincludedir so that gdkconfig.h will be installed 
16526         as part of `make install-exec'. 
16527
16528 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
16529
16530         * acinclude.m4
16531         * config.guess
16532         * config.sub
16533         * ltconfig
16534         * ltmain.sh: upgrade to libtool 1.2f
16535
16536         * autogen.sh: libtool is not required to autogen gtk+
16537
16538         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
16539         needed)
16540
16541 1999-03-18  Tor Lillqvist  <tml@iki.fi>
16542
16543         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
16544         declaring gdk variables exported/imported from the DLL. New image
16545         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
16546         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
16547         GDK_DRAG_PROTO_OLE2.
16548
16549         * gdk/gdk.h: Merge in Win32 version: Two new functions,
16550         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
16551         declared only for the Win32 version, but could be in the X11
16552         version as well. (Needed for a Xlib-less gdk_imlib.)
16553         gdk_color_hash should have only one parameter. Declare
16554         gdk_threads_mutex with GDKVAR.
16555         
16556         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
16557         just one parameter.
16558
16559         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
16560         per pixel, not bits.
16561
16562         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
16563         Fetch bpp (which means bits-per-pixel here) from another place on
16564         Win32. Accept also depth==32 (which we might get on Win32) with
16565         bpp==32.
16566
16567         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
16568         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
16569         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
16570         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
16571         in the backend-dependent directory, not in the common gdk
16572         directory.
16573
16574         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
16575         headers.
16576
16577 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
16578
16579         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
16580         want to use the Gtk+ devel version (which is true, and yes - even i am
16581         currently working with the 1.2.x branch). so everyone reading this, you
16582         probably want to issue
16583         cvs checkout -r glib-1-2 glib
16584         and
16585         cvs checkout -r gtk-1-2 gtk+
16586         as your next two comands.
16587
16588 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
16589
16590         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
16591         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
16592
16593         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
16594         file. strongly deprecated the GTK_HAVE_* macros, we provide
16595         GTK_CHECK_VERSION() for people that need to check for certain
16596         Gtk+ versions.
16597
16598         * gtk/gtkcompat.h: removed this from CVS.
16599         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
16600         idea right from the start, it just didn't seem like that back then.
16601
16602 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
16603
16604         * merges from gtk-1-2:
16605
16606 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
16607
16608         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
16609         item factory class has been created.
16610         (gtk_item_factory_parse_rc): likewise.
16611
16612         * gtk/gtkmenu.c:
16613         keep proper references for old_active_menu_item.
16614         (gtk_menu_reparent): unset the usize of the new parent,
16615         so the menu can sanely be size requested and we don't get nasty screen
16616         artefacts upon next reparentation.
16617         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
16618         enter notify. only synthesize enter notifies if the pointer really is
16619         inside the event window.
16620         (gtk_menu_popdown): use gtk_menu_shell_deselect().
16621         (gtk_menu_popup): move the background setting stuff into
16622         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
16623
16624         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
16625         gtk_menu_shell_select_item() to select the new item.
16626         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
16627         do the right thing for deselection as well.
16628
16629 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
16630
16631         * gtk/gtkwidget.[hc]:
16632         (gtk_widget_accelerators_locked): return whether a widget's accelerators
16633         are locked.
16634
16635         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
16636         existing accelerators if the widget's accelerators are locked.
16637
16638 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
16639
16640         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
16641
16642         * gtk/gtkmenu.c: truely forward key press and key release events to
16643         the menu widget from the toplevel or tearoff window. we can't simply
16644         connect to that, we need to stop further processing of the events as
16645         well.
16646
16647 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
16648
16649         * gtk/gtkmenu.c:
16650         (gtk_menu_key_press): pass event->keyval, event->state to
16651         gtk_accelerator_valid, instead of event->keyval twice.
16652         refuse to install single letter accelerators for menus that use
16653         single letter shortcuts.
16654
16655         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
16656         gtk_menu_ensure_uline_accel_group().
16657
16658         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
16659         which will always return an uline accel group, made
16660         gtk_menu_get_uline_accel_group() return NULL if the group isn't
16661         yet created.
16662
16663 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
16664
16665         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
16666
16667         * gtk/gtkclist.c (gtk_clist_column_title_passive):
16668         Leave button sensitive, trap  button_press, button_release,
16669         motion_notify, enter_notify and leave_notify events instead.
16670         (gtk_clist_column_title_active): disconnect event handler.
16671         (gtk_clist_drag_data_get): fixed memory leak. Reported by
16672         Guillaume Laurent <glaurent@worldnet.fr>
16673
16674 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
16675
16676         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
16677         width/height mixups.
16678
16679         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
16680         if needed.
16681
16682 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
16683
16684         * gtk/testgtk.c (create_item_factory): unref the item factory after
16685         window's destruction.
16686
16687         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
16688         count on the menu shell around the menu item's activation, since the
16689         signal emission may cause menu shell destruction.
16690
16691         * gtk/gtkitemfactory.c:
16692         the previous code leaked one accel group per menu. we use
16693         gtk_menu_get_uline_accel_group() now to fix that, and with that
16694         also create the underline accelerator group of the menus only if
16695         required (i.e. an underline accelerator has been specified).
16696         (gtk_item_factory_construct):
16697         (gtk_item_factory_create_item): removed code that would create an
16698         extra accel group for the menu (and leak references).
16699         (gtk_item_factory_create_item): adapted the underline accelerator
16700         installation code to properly feature gtk_menu_get_uline_accel_group().
16701
16702         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
16703         menu->accel_group, this may return NULL if the accelerator group
16704         hasn't been set yet.
16705         added gtk_menu_get_uline_accel_group() to retrive the underline
16706         accelerator group of the menu, this will be created on demand
16707         and proper care is taken about its reference count.
16708
16709         * gtk/gtkitemfactory.h:
16710         * gtk/gtkitemfactory.c:
16711         dumped the approach of keeping a widgets by action list on the
16712         factory since the factory<->widget destroy negotiation didn't work
16713         and would be hard to get going at all. instead we keep a list of
16714         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
16715         persistant throughout a program's life time).
16716         also, i removed the static const gchar *key_* variables, and made
16717         them inline strings (they weren't actually used anyways).
16718         (gtk_item_factory_add_item): update ifactory->items.
16719         (gtk_item_factory_destroy): destroy ifactory->items (and remove
16720         the item factory pointer from the remaining ifactory widgets).
16721         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
16722         list to find the widget.
16723         (gtk_item_factory_get_item): new function that works around
16724         gtk_item_factory_get_widget() limitations, this function will only
16725         return menu items, even for <Branch> entries.
16726
16727 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16728
16729         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16730         font hash table, if we have a GdkFontPrivate entry for this font
16731         already, simply increment its reference count, provided by Olaf Dietsche
16732         <olaf.dietsche+list.gtk@netcologne.de>.
16733
16734         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
16735         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
16736
16737 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
16738
16739         * gtk/gtkcontainer.c:
16740         (gtk_container_add_with_args):
16741         (gtk_container_addv):
16742         (gtk_container_add): before adding a child to a conatiner, make sure
16743         it is (default) constructed, this is neccessary because under certain
16744         circumstances the child will get relized and mapped immediatedly, in
16745         which case it has to be constructed already.
16746
16747 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
16748
16749         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
16750         values > 1 as TRUE also.
16751
16752 1999-03-16  Tor Lillqvist  <tml@iki.fi>
16753
16754         * README.win32: New file.
16755                 
16756         * configure.in: Check for lstat.
16757
16758         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
16759         completeness.
16760
16761         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
16762
16763         * gtk/gtk.def: Removed CRs.
16764
16765         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
16766         ..\gdk\win32).
16767
16768         * gdk/win32/makefile.msc: Correct upwards relative paths.
16769         
16770 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
16771
16772         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
16773           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
16774           it was connecting a void function to expose_event and the int
16775           returning function to the draw signal
16776
16777 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
16778
16779         * configure.in:
16780         Use correct path to libgmodule.la when ref'ing uninstalled copy
16781         of glib.  (Already in stable branch, Bug #417)
16782
16783 1999-03-15  Tor Lillqvist  <tml@iki.fi>
16784
16785         Win32 merge and general portability stuff:
16786                 
16787         * acconfig.h,configure.in: Check for <sys/time.h>.
16788
16789         * gdk/win32: New directory (actually, been there for a while).
16790         
16791         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
16792         NATIVE_WIN32, and use these. Always case fold on Win32. No
16793         backslashed escapes on native Win32.
16794
16795         * gtk/{gtk.def,makefile.msc}: New files.
16796
16797         * gtk/Makefile.am: Add above new files.
16798         
16799         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
16800         instead of <strings.h>.
16801
16802         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
16803         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
16804         <unistd.h> appropriately.
16805
16806         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
16807         Use ABS() (from <glib.h>) instead of abs().
16808         
16809         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
16810         of gtk (and thus glib) headers, so that WIN32 will be
16811         defined. With MS C, include <direct.h> for mkdir prototype.
16812
16813         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
16814         some casts, needed by MS C.
16815
16816         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
16817         implemented).
16818
16819         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
16820         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
16821         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
16822
16823         * gtk/gtkmain.h: Mark variables for export/import on Win32.
16824                 
16825         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
16826         the event is not a hint, or its window is not the slider. Needed
16827         on Win32, at least.
16828
16829         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
16830         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
16831         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
16832         a subdirectory of the Windows directory as gtk system
16833         configuration directory.
16834
16835         * gtk/gtkselection.c: No chunks on Win32.
16836
16837         * gtk/gtksocket.c: Not implemented on Win32.
16838
16839         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
16840
16841         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
16842
16843         * gtk/maketypes.awk: Declare variables with a macro that expands to
16844         necessary export/import magic in the case of Win32.
16845                 
16846         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
16847
16848 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
16849
16850         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
16851         since those were meant only for gdki18n.h.  
16852         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
16853         for widechar tests.
16854         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
16855
16856 1999-03-13  Tor Lillqvist  <tml@iki.fi>
16857
16858         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
16859         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
16860
16861         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
16862         installed) to CFLAGS.
16863
16864         * gdk/Makefile.am: Add rules for gdkconfig.h.
16865
16866         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
16867         APIs.
16868
16869         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
16870         gdkx.h anyway when compiling for X11.
16871         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
16872         general): Merge in Win32 version.
16873         
16874         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
16875         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
16876         expansion (if we don't have HAVE_PWD_H), allow for drive
16877         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
16878         included code from Craig Setera's port to Win32 (the one that uses
16879         X11, and the cygwin dll), even if it probably will be abandoned.
16880
16881         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
16882         the user entered one herself.  This way one can complete *.h and
16883         don't get matches on any .help files, for instance.
16884         
16885 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16886
16887         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16888         font hash table, if we have a GdkFontPrivate entry for this font
16889         already, simply increment its reference count, provided by Olaf Dietsche
16890         <olaf.dietsche+list.gtk@netcologne.de>.
16891
16892         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
16893         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
16894
16895 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16896
16897         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
16898         the number of calls to gdk_draw_point() (and thus to X) by
16899         clipping the points by hand.
16900
16901         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
16902         the clip parameter.
16903         (gtk_handle_box_paint): Only paint the handle if the expose area
16904         intersects it.
16905
16906 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16907
16908         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
16909
16910 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
16911
16912         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
16913         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
16914
16915 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16916
16917         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
16918          textmode (O_TEXT) for OS/2 version.
16919
16920 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
16921
16922         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
16923         GtkSpinButton, "input" and "output", to make the output more flexible.
16924         The user has to provide a mapping between adjustment->value and the
16925         output string (and vice versa, if the spin button is editable). 
16926         See testgtk for examples.
16927
16928 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
16929
16930         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
16931         new one.
16932         
16933         * configure.in: set gtk+ version to 1.3.0.