]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
fix initial val for sort column.
[~andy/gtk] / ChangeLog.pre-2-10
1 Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
2
3         * gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
4         sort column.
5
6         * gtk/gtktreestore.c (gtk_list_store_init): ditto
7
8         * gtk/gtktreesortable.c: add docs.
9
10 Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>
11
12         * Version 1.3.7
13
14         * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove 
15         docs for gtk-config
16
17         * modules/input/Makefile.am (install-data-local): Don't
18         run gtk-query-immodules if DESTDIR is set.
19
20         * NEWS: Various additions.
21
22 Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>
23
24         * NEWS: updates for 1.3.7 release.
25
26 Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>
27
28         * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
29         handle default sort feature
30
31         * gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
32         new function to handle default sort.
33         (gtk_tree_sortable_has_default_sort_func): check if default sort
34         is set.
35
36         * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func): 
37         handle default sort feature
38
39 Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>
40
41         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
42         vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
43         #59731
44
45 Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
46
47         * gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
48         vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
49         time, #59727
50
51         * gtk/gtkbutton.c (gtk_button_update_state): Get depressed
52         correctly.
53
54 Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>
55
56         * gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
57         so that we don't eternally update the keymap after we
58         get a change notification.
59
60         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
61         incorrect cast.
62
63 Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>
64
65         * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
66         it working. It mostly works now, although there're still a few issues
67         to be worked out.
68
69         * tests/testtreesort.c (main): changes to have a better test
70         application for the GtkTreeModelSort.
71
72 Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>
73
74         * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
75         fix for bug #59222.
76
77         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
78         gpointer search_data argument to function definition and
79         prototype, to match GtkTreeViewSearchEqualFunc typedef.
80
81 Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>
82
83         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
84         per jrb's request.
85
86 Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>
87
88         * gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
89
90         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
91
92 Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>
93
94         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard): 
95         Instead of always mirroring the selection to a single PRIMARY
96         selection, allow it to be mirrored to any number of clipboards.
97
98         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove, 
99         just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.
100
101         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
102         GtkClipboard argument, and for paste_clipboard, the
103         @override_location argument from @paste_primary.
104
105         * gtk/gtktextview.c: Adapt to above change.
106         
107 2001-08-30  Havoc Pennington  <hp@redhat.com>
108
109         * gtk/gtktextview.c (invalidated_handler): put validate idle at
110         resize - 2 just for flexibility
111
112 2001-08-30  Havoc Pennington  <hp@redhat.com>
113
114         * gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
115         object from the empty-child-anchor case by drawing a little box.
116         
117         * gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
118         if the child anchor has no anchored widgets - fixes #59328.
119
120         Also, remove bizarre deletion of preedit string that seems to have
121         gotten in here somehow.
122
123 2001-08-30  Havoc Pennington  <hp@redhat.com>
124
125         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
126         to #58420 from Hidetoshi Tajima and Matthias Clasen
127
128 Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>
129
130         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
131         change color when the GtkTreeView loses focus.
132
133         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
134         ditto.
135         
136         * gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
137
138 2001-08-28  Havoc Pennington  <hp@pobox.com>
139
140         * gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
141
142 2001-08-28  Havoc Pennington  <hp@pobox.com>
143
144         * demos/gtk-demo/main.c (setup_default_icon): add default icon
145
146         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
147         warning fix
148         (gtk_radio_button_new_with_label): warning fix
149
150         * gtk/gtkdnd.c: used some random GtkImage private structs, 
151         update to reflect GtkImage changes
152
153         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
154         whether the hint is supported, just always set the icon. A task
155         list might want to use it even if the WM doesn't, and the WM may
156         change over time. Also, XDeleteProperty() if list == NULL.
157
158         * gtk/gtkwindow.c (gtk_window_set_icon_list)
159         (gtk_window_get_icon_list)
160         (gtk_window_set_icon)
161         (gtk_window_get_icon)
162         (gtk_window_set_default_icon_list)
163         (gtk_window_get_default_icon_list):
164         new functions
165
166         * gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet
167
168         * gtk/gtkimage.c: Implement property support, bug #59408
169
170         * gtk/gtkcontainer.c (gtk_container_add): make the warning message
171         on reparent-without-removing-first a bit more helpful.
172         Let's just destroy this FAQ.
173
174 Tue Aug 28 21:37:11 2001  Matthias Clasen  <matthiasc@poet.de>
175
176         * demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
177         instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
178
179 Tue Aug 28 21:00:44 2001  Matthias Clasen  <matthiasc@poet.de>
180
181         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
182         of use_text_format to the end of the function. (#56447)
183
184 Tue Aug 28 20:06:07 2001  Matthias Clasen  <matthiasc@poet.de>
185
186         * demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
187         only in response to an area_prepared signal.
188
189 2001-08-28  Alex Larsson  <alexl@redhat.com>
190
191         * gtk/gtkwidget.c (gtk_widget_class_init):
192         Make unrealize GTK_RUN_LAST.
193
194 Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>
195
196         * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
197         with_label and with_mnemonic should create radio buttons, not
198         check buttons
199
200 Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>
201
202         * tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
203         * tests/treestoretest.c (make_window): ditto
204         * demos/gtk-demo/main.c (create_tree): ditto
205         * demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
206
207 Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>
208
209         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
210         GTK selection types rather than GtkTreeSelectionMode.
211
212         * docs/Changes-2.0: Add comment about selection change.
213
214 Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>
215
216         * gtk/gtkenums.h (GtkSelectionMode): deprecate
217         GTK_SELECTION_EXTENDED.
218
219         * gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
220         Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.
221
222         * gtk/gtkctree.c: ditto
223
224         * gtk/gtklist.c: ditto
225
226         * gtk/gtktree.c: ditto
227
228 Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>
229
230         * gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
231         of typos in compat macros. (#59624, Skip Montaro)
232
233 Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>
234
235         * configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
236         macro.
237
238          (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)
239  
240         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
241         interface to be a standard setter from gtk_menu_item_right_justify.
242         (gtk_menu_item_get_right_justified): a getter to go with the setter
243
244         * gtk/gtkmenuitem.h: Add a deprecated compat macro for
245         gtk_menu_item_right_justify.
246
247         * demos/gtk-demo/menus.c tests/testgtk.c: Switch to 
248         gtk_menu_item_set_right_justified.
249  
250 2001-08-27  Jens Finke <jens@gnome.org>
251
252         * gtk+.spec.in: Updated to match gpp requirements, reworked the
253         files section to make it work with 1.3.x releases.
254
255 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
256
257         * gtk/gtkbutton.[ch]:
258         Add properties for labels, mnemonics and stock items.
259         Added C accessor functions for the properties.
260         Removed deprecated button->child.
261
262         * gtk/gtkradiobutton.c:
263         * gtk/gtktogglebutton.c:
264         Update to use the functions in GtkButton.
265
266         * gtk/gtkcheckbutton.c:
267         Update to use the functions in GtkButton.
268         Changed size allocation of child. Now only gets as much
269         space as it requests.
270
271         * gtk/gtkclist.c:
272         Don't use GtkButton->child
273
274         * gtk/gtklabel.c:
275         Fixed typo in docs
276         
277 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
278
279         * tests/testgtk.c:
280         * tests/Makefile.am:
281         Ressurect the properties test.
282         I don't care if it is inferior, I just want to test my property code.
283
284 2001-08-25  Chema Celorio  <chema@celorio.com>
285
286         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
287         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
288         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
289
290 2001-08-24  Havoc Pennington  <hp@pobox.com>
291
292         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
293         these are already in gtkmenu.h, and the copies
294         here were broken.
295
296         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
297
298         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
299         special-case bitmaps to allow no colormap
300         (bitmap1): implement no-colormap bitmap-getting
301         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
302         alpha
303         (rgb8): indentation
304         (rgb1a, rgb1): change the way we read the data out of the image, 
305         old way didn't seem to work quite right.
306
307         I'm pretty sure a lot of the rgbconvert code is still broken.
308         
309         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
310         above position constraint (I really intended to do this before,
311         don't know what's up with that)
312         (gtk_XParseGeometry): shut up gcc
313
314         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
315         and "0" should have been. remove the attempted 4-bytes-at-once
316         optimization, it was totally broken.
317
318 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
319
320         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
321         on push to buttons (based on patch from Soeren Sandmann, #54720)
322
323           - Add child_displacement_x/y style properties to control how far the
324             child moves when the button is depressed.
325
326           - Add non-exported function _gtk_button_set_depressed to clean
327             up the handling of the in/out shadow and separate it frmo
328             widget->state.
329
330           - Lots of code cleanup and simplification of state handling
331             for GtkButton/GtkToggleButton.
332  
333         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
334         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
335
336 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
337
338         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
339         and make gtk_image_new() take no arguments. The compiler will
340         catch it, and it is vastly more useful than having
341         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
342
343         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
344         to add tearoff-title property (#51319, Lee Mallabone)
345
346 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
347
348         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
349         gtk_menu_item_configure(). (#58925)
350
351 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
352
353         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
354         "use_align" to give people the option to just make a cell visible.
355
356         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
357         we were scrolling past the end of the tree.
358
359         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
360         rename gtk_tree_view_column_pack_start_cell_renderer to
361         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
362
363 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
364
365         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
366         a stray g_object_ref() left over from gtk_object_ref/sink.
367         (Pointed out by Josh Pritikin.)
368
369 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
370
371         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
372         to gtk_container_get_children. Added deprecated compatibility
373         macro. (Suggested by Vitaly Tishkov, #59051)
374
375         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
376         calls.
377
378 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
379
380         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
381         gtk_menu_bar_append/prepend/insert, forgot to do this
382         when we deprecated gtk_menu_append/prepend/insert.
383
384         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
385         compat macros.
386
387         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
388         renamed by compat macro.
389
390         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
391         gtk_font_selection_dialog_get_font(). (Suggested by
392         Vitaly Tishkov, #59383)
393
394 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
395
396         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
397         Rename from gtk_text_tag_table_size(). (#59366)
398
399 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
400
401         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
402         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
403         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
404         (#59173).
405
406 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
407
408         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
409         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
410         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
411
412 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
413
414         [ Patch from Sebastian Wilhelmi, 52790 ]
415
416         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
417
418         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
419         Move compatibility macros from g[dt]kcompat.h to within 
420         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
421
422         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
423
424         * demos/Makefile.am demos/gtk-demo/Makefile.am 
425           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
426           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
427
428         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
429                  testpixbuf.c}: Fix usages of deprecated functions.
430
431 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
432
433         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
434         when changing models.
435
436 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
437
438         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
439         We check the current event for modifiers rather than try to trap
440         all presses.
441
442 2001-08-22  Anders Carlsson  <andersca@gnu.org>
443
444         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
445         It's LIST_STORE, not LISTSTORE.
446
447 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
448
449         * gtk/gtk.h: Remove commented out gtkpacker reference.
450
451 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
452
453         * configure.in (all_loaders): Add tga loader, 
454         patch by Nicola Girardi. (#56067)
455
456 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>>
457
458         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
459         a little.  More needs to be done tomorrow.
460
461 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
462
463         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
464
465 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
466
467         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
468         reported by Kristian Rietveld <kristian@planet.nl> to handle row
469         == NULL.
470         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
471         <kristian@planet.nl> to change destroy order.
472
473 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
474
475         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
476         correct marshaller.
477
478 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
479
480         * gtk/gtkliststore.c: Fix up warnings, #58928.
481
482         * gtk/gtktreeselection.h: Change signal prototype, #58647
483
484         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
485         #59221.
486
487         * gtk/gtkstyle.c: Actually prelight arrow, #50981
488         
489 2001-08-18  Hans Breuer  <hans@breuer.org>
490
491         * gdk/gdk.def : updated externals
492
493         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
494         is required to get (at least) visible in entry fields. Some selections
495         are really handled now - even on win32 - but copying via middle
496         mouse button into a different app needs to wait ... 
497
498         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
499         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
500
501         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
502         handling. I'm not sure if it is better now, but at least not worse
503
504         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
505         with SetWindowPos () which allows more fine-tuning backing-store wise
506
507         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
508         Also changed move/resize to be more like the X version.
509
510         * gtk/gtk.def : updated externals
511
512 2001-08-19  Sven Neumann  <sven@gimp.org>
513
514         * gtk/gtktooltips.c
515         * tests/testtreesort.c
516         * tests/treestoretest.c: inserted some casts to get rid of compiler
517         warnings.
518
519 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>>
520
521         * gtk/gtktreeviewcolumn.c
522         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
523
524         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
525         (_gtk_tree_view_find_node): If *node is NULL,
526         *tree should be NULL too.
527
528         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
529         column/renderers.
530         * tests/testtreecolumns.c: ditto
531         * tests/testtreefocus.c: ditto
532         * tests/testtreesort.c: ditto
533         * tests/testtreeview.c: ditto
534         * tests/treestoretest.c: ditto
535
536 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
537
538         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
539         signals; is_expander/is_expanded.
540
541         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
542         pixbufs.
543
544         * gtk/gtktreeview.c: set above properties.
545
546 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
547
548         * gtk/gtkwidget.h: Really remove set_default_style().
549
550         * docs/Changes-2.0.txt: added a note about
551         gtk_widget_push/pop/set_default_style.
552
553 2001-08-18  Havoc Pennington  <hp@pobox.com>
554
555         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
556         hints_changed in addition to the other cases.
557         (gtk_window_move_resize): include last position from configure
558         notify in debug spew
559
560 2001-08-18  James Henstridge  <james@daa.com.au>
561
562         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
563         second argument to the weak ref notify, cleaning up some uglyness.
564         (gtk_accel_group_attach): remove and add the weak notifier when
565         changing the accel groups slist.
566         (gtk_accel_group_detach): same here.
567
568 2001-08-17  Darin Adler  <darin@bentspoon.com>
569
570         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
571         missing parameters to utf8 functions to make it compile.
572
573 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
574
575         * gtk/gtktreeprivate.h:
576         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
577         (gtk_tree_view_init), (gtk_tree_view_set_property),
578         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
579         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
580         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
581         (gtk_tree_view_set_destroy_count_func),
582         (gtk_tree_view_set_enable_search),
583         (gtk_tree_view_get_enable_search),
584         (gtk_tree_view_get_search_column),
585         (gtk_tree_view_set_search_column),
586         (gtk_tree_view_get_search_equal_func),
587         (gtk_tree_view_set_search_equal_func),
588         (gtk_tree_view_search_dialog_destroy),
589         (gtk_tree_view_search_position_func),
590         (gtk_tree_view_interactive_search),
591         (gtk_tree_view_search_delete_event),
592         (gtk_tree_view_search_button_press_event),
593         (gtk_tree_view_search_key_press_event),
594         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
595         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
596         * gtk/gtktreeview.h:
597         Add heavily modified patch from Kristian Rietveld to handle
598         interactive searching.
599
600 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
601
602         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
603         string parameter.
604
605         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
606         GtkMenuShell::selection_done, now that we have it, instead of 
607         ::deactivate so we're not tearing the menu apart and notify
608         the user prematurely.
609
610 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
611
612         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
613         window, clear window->need_default_position to avoid infinite loops.
614         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
615
616 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
617
618         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
619         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
620         (gtk_tree_view_set_property): don't cast possible NULL objects.
621         (gtk_tree_view_destroy): reset the model to NULL.
622
623         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
624         parent_class handler.
625
626 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
627
628         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
629
630 2001-08-17  Anders Carlsson  <andersca@gnu.org>
631
632         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
633         point numbers so that the result will be floating point.
634
635 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
636
637         * tests/testgtk.c (create_handle_box): 
638         (create_toolbar): Replace gtk_window_set_policy calls by
639         gtk_window_set_resizable.
640
641 2001-08-16  Jakub Steiner <jimmac@ximian.com>
642
643         * gtk/stock-icons/dialog_info.png: new style bulb
644         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
645         * gtk/stock-icons/dialog_warning.png: need a hand?
646         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
647           the aa border gets chopped off ok
648         * gtk/stock-icons/stock_colorselector.png: using the new hand
649         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
650           this one is for, but the old icon was butt ugly.
651         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
652         * gtk/stock-icons/stock*_insert_object.png: "
653         * gtk/stock-icons/stock_index.png: using new hand icon
654         * gtk/stock-icons/stock*_new.png: the document template being used 
655           elsewhere too
656         * gtk/stock-icons/stock*_print*.png: new print and print preview 
657           icons (panel/menu)  
658         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
659           icons based on Tuomas' floppy image.
660         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
661         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
662         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
663         * gtk/stock-icons/stock*_undelete.png: "
664         * gtk/stock-icons/stock_preferences.png: I have a version with a 
665           document base if the sliders are no good.
666         * gtk/stock-icons/stock_properties.png: properties 
667         
668
669         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
670           (tigert@ximian.com) clipboard icons
671         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
672         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
673         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
674           little bigger IMHO
675
676 2001-08-16  Sven Neumann  <sven@gimp.org>
677
678         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
679
680 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
681
682         * gtk/gtkcellrenderertext.c:
683         Avoid warning when specifying NULL for "attributes" property
684
685 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
686
687         * docs/debugging.txt: Add a warning about --enable-debug=no,
688         some editorial changes.
689
690 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
691
692         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
693         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
694         debugging info, remove unused debug flags. (#58330)
695
696 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
697
698         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
699         (gtk_tree_selection_select_all): Remove strict checking for rows.
700
701 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
702         
703         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
704         Don't remove the tooltip window when the tip text changes. (#15891)
705
706 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
707
708         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
709         $(srcdir).
710
711 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
712
713         * Makefile.am (EXTRA_DIST): Fix problem with trying to
714         dist files from intl/, which is no longer there.
715
716 2001-08-11  Hans Breuer  <hans@breuer.org>
717
718         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
719           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
720           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
721           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
722           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
723           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
724
725         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
726           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
727         GDK_TYPE_EVENT signals
728
729         * gtk/gtkalignment.c : removed 'direct allocation bug',
730         which Tim discovered while reading the patch
731
732 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
733
734         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
735         compat macros for push/pop/set_visual that were supposed
736         to be added a long time ago, but got dropped. 
737
738 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
739
740         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
741         property notifies.
742
743 2001-08-07  Havoc Pennington  <hp@pobox.com>
744
745         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
746
747         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
748         some fixage is needed here, but nothing simple. Owen understands
749         it. ;-)
750
751         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
752         sizing and positioning.  Also, fix bug in compute_geometry_hints
753         (width/height confusion for setting min size). 
754         (gtk_window_move): new function
755         (gtk_window_resize): new function
756         (gtk_window_get_size): new function
757         (gtk_window_get_position): new function
758         (gtk_window_parse_geometry): new function
759         
760         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
761         (gtk_widget_get_size_request): new function
762         (gtk_widget_get_usize): delete, that was a short-lived function
763         ;-)
764         (gtk_widget_set_usize): deprecate
765         (gtk_widget_set_uposition): deprecate, make it a trivial 
766         gtk_window_move() wrapper
767         (gtk_widget_class_init): remove x/y/width/height properties,
768         add width_request height_request
769         
770         * demos/*: update to avoid deprecated functions
771         
772         * gtk/gtklayout.c: add x/y child properties
773
774         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
775         uses of "gint16"
776
777         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
778         sizing test
779
780         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
781         configure events on toplevel windows are always in root window
782         coordinates, following ICCCM spec that all synthetic events 
783         are in root window coords already, while real events are 
784         in parent window coords. Previously the code assumed that 
785         coords of 0,0 were parent window coords, which was 
786         really broken.
787   
788         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
789         warning
790  
791         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
792         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
793         hints in gtk_window_parse_geometry()
794  
795         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
796         new USER_POS USER_SIZE hints    
797
798 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
799
800         * tests/prop-editor.c (properties_from_type): Use 
801         g_object_class_list_properties to get the param specs 
802         for a given type. (#58609)
803
804 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
805
806         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
807         free the text_aa parts. (#57549)
808
809 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
810
811         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
812         not the foreground color. (#57621)
813
814 2001-08-09  Alexander Larsson <alexl@redhat.com>
815
816         * gdk/win32/gdkfont-win32.c:
817         Update to the new pango win32 api.
818
819 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
820
821         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
822         COMPOUND_TEXT instead of TEXT
823         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
824         interpret the return value of g_string_to_compound_text()
825         (#55152)
826
827 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
828
829         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
830         fail if iter is NULL. (#58347)
831
832 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
833
834         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
835         some off-by-one issues, fixing selection of line-ends. (#50323)
836
837 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
838
839         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
840         functions in order to make mouse operation work again in the
841         color wheel. (#58604)
842
843 2001-08-07  James Henstridge  <james@daa.com.au>
844
845         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
846         the accelerator when the accel object is changed.  Fixes bug
847         #58628.
848
849 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
850
851         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
852         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
853         (gnome bugzilla #58202)
854
855 2001-08-06  Havoc Pennington  <hp@pobox.com>
856  
857         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
858         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
859         it was expecting a GdkWindow, not a GdkWindowImplX11.
860  
861         Also, we were getting the window rect in screen coords 
862         and the screen rect in window coords then intersecting 
863         them; instead, get window rect in window coords.
864  
865         Finally, there were codepaths that resulted in a stuck server grab
866         (when the window was fully onscreen, or on gdk_image_new()
867         failure); make the server ungrab thing a bit more
868         robust/consistent.
869
870 2001-08-06  Sven Neumann  <sven@gimp.org>
871
872         * gdk/gdkpango.c (gdk_pango_context_destroy): 
873         check if info->colormap != NULL before unref'ing it. It might have
874         been set to NULL using gdk_pango_context_set_colormap().
875
876 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
877
878         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
879         Fix conversion from float to int so that we don't get
880         skew in the int => float => int roundtrip. 
881         (#58120, reported by Vitaly Tishkov). Also fix problem
882         where if no alpha was set, the returned alpha
883         from (say) set_current_alpha() was returned as 1, not 65535.
884
885 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
886
887         * gtk/gtklist.c (gtk_list_clear_items): Fix
888         problem with selecting a new focus child.
889
890         * gtk/gtklist.c (gtk_list_clear_items): Clear 
891         list->undo/list_focus_child after unparenting
892         child, since unparenting the child can result
893         in list->last_focus_child being set. (#58024)
894
895         * Makefile.am (SUBDIRS): Add target specific pc
896         files to DISTCLEANFILES.
897
898         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
899         (58327, Matthias Clasen)
900
901 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
902
903         * tests/testgtk.c: Patch from Hans (with various modifications),
904         to add the ability to use testgtk as a rough-and-ready
905         benchmark. Try, 'testgtk --bench all:5' (if you want decent
906         numbers, run without a window manager)
907
908 2001-08-04 Alexander Larsson <alexl@redhat.com>
909
910         * gdk/win32/gdkinput.c:
911         Add #ifdef HAVE_WINTAB around wintab.h include.
912
913         * gtk/gtk.def:
914         Removed marshals that have been moved to glib.
915         Commented out plug and socket. They didn't compile for me 
916         on win32.
917
918 2001-08-04  Hans Breuer  <hans@breuer.org>
919
920         * gtk/stocks-icons/makefile.msc : new file
921         * gtk/makefile.msc.in : use it
922
923         * gtk/gtkstyle.c : not all platforms do provide M_PI and
924         friends, but luckily there is G_PI
925
926         * gtk/gtk.def : updated
927
928         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
929         windows WS_POPUP, but only those without a parent. This fixes the 
930         mis-alignment between the selectable (temp, input only) window and 
931         the window text of GtkLabel.
932
933         (gdk_window_show) : respect private->state when actually showing
934         the window.
935
936         (gdk_window_set_transient_for) : Implementation from Wolfgang 
937         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
938         error handling. Should fix #50586.
939
940         * gdk/win32/gdkevents-win32.c : beautify log output
941
942 2001-08-04  Michael Natterer  <mitch@gimp.org>
943
944         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
945         Need to show the image after adding it to the GtkImageMenuItem.
946         This used to work without in testgtk because of the
947         gtk_widget_show_all() at the end of the function.
948         (Closes #54978).
949
950 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
951
952         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
953         (gtk_notebook_set_child_property): fix finding of child's page,
954         since we have to validly deal with labels and menus here as well.
955         (gtk_notebook_get_child_property): fix warning.
956         (gtk_notebook_class_init): property tab_pack is of type
957         GTK_TYPE_PACK_TYPE (enum) not boolean.
958         (gtk_notebook_find_child): don't always warn, we might be looking
959         for a label or menu child.
960         (gtk_notebook_map): fix mapping of panel.
961
962         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
963         widget's mapped state, regardless of the value being set equals
964         old settings, since things like REALIZED(parent) or MAPPED(parent)
965         may have changed since the old value was set. make it an error to
966         invoke this function on a toplevel widget.
967
968 2001-07-31  Darin Adler  <darin@bentspoon.com>
969
970         * gdk/gdkprivate.h:
971         * gdk/x11/gdkx.h:
972         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
973
974         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
975         GTK_OBJECT.
976
977 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
978
979         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
980         scoping error pointed out by matthiasc@poet.de.
981
982 2001-07-31  Sven Neumann  <sven@gimp.org>
983
984         * demos/gtk-demo/appwindow.c
985         * demos/gtk-demo/item_factory.c
986         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
987
988 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
989
990         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
991         argument order for g_signal_has_handler_pending.
992
993 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
994
995         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
996         instead of long deprecated g_scanner_stat_mode().
997
998 2001-07-29  Hans Breuer  <hans@breuer.org>
999
1000         * gdk/makefile.msc : build in the backend dir after
1001         auto-generating files
1002
1003         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
1004         with code from win32-production-branch.
1005
1006         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
1007         before calling DestroyWindow, which indirectly calls 
1008         gdk_window_destroy_notify ()
1009
1010         (performance patch merged from win32-production-branch)
1011         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
1012         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
1013         R2_COPYPEN rop). It is claimed to be much faster.
1014
1015 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
1016
1017         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
1018         add an "attributes" property to the text renderer for ATK.
1019
1020 2001-07-26  Alex Larsson  <alexl@redhat.com>
1021
1022         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
1023         Initialize image->bits_per_pixel from the drawable, not from
1024         the root window.
1025
1026         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
1027         Fix cast. argument is an IMPL already.
1028
1029 2001-07-15  James Henstridge  <james@daa.com.au>
1030
1031         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
1032         (gtk_window_remove_accel_group): same here.
1033         (gtk_window_key_press_event): same here.
1034
1035         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
1036         (gtk_widget_remove_accelerator): same here.
1037         (gtk_widget_remove_accelerators): same here.
1038
1039         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
1040
1041         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
1042         instead of GtkObject.
1043
1044         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
1045         now takes GObjects.
1046
1047         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
1048         pass a GObject to gtk_accel_group_entries_from_object.
1049         (gtk_item_factory_create_item): s/accel_widget/accel_object/
1050
1051         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
1052
1053         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
1054
1055         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
1056         GObjects can have accelerators set now.  Add compatibility
1057         defines.
1058
1059         * gtk/gtkmarshal.list: add missing marshallers.
1060
1061         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
1062         accelerators on plain GObjects.  gtk_accel_group_object_destroy
1063         has been converted into a weak reference, and
1064         gtk_accel_group_delete_entries is now a destroy notify for that
1065         piece of data.
1066
1067 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
1068
1069         * gdk/gdkdraw.c: Added a check on the colormap depth to
1070         gdk_drawable_set_colormap()
1071         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
1072         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
1073         for pixmaps without visuals (more specifically, bitmaps)
1074         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
1075         doesn't set a colormap with the wrong depth
1076
1077
1078 2001-07-22  Anders Carlsson  <andersca@gnome.org>
1079
1080         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
1081         expander_height and expander_width properties with a single
1082         property, expander_size.
1083         (gtk_tree_view_init): Set the tab_offset to expander_size
1084         plus some padding.
1085         (gtk_tree_view_unrealize): Remove the expand/collapse
1086         timeout if it exists.
1087         (coords_are_over_arrow): Fix a small bug.
1088         (gtk_tree_view_motion_draw_column_motion_arrow): Use
1089         expander_size.
1090         (gtk_tree_view_draw_focus): Use "treeview" instead of
1091         "add-mode" as detail when drawing the focus.
1092         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
1093         instead of "add-mode" as detail when drawing the focus.
1094         (gtk_tree_view_deleted): If we have a node currently being
1095         expanded or collapsed, remove the timeout and set the node 
1096         to NULL.
1097         (gtk_tree_view_queue_draw_arrow): New function that just
1098         redraws the arrow of a node.
1099         (gtk_tree_view_draw_arrow): Use expander_size instead of
1100         expander_width/expander_height, also pass a different
1101         expander_style to gtk_paint_expander depending on the 
1102         state of the node being drawn.
1103         (expand_collapse_timeout): New function for expanding 
1104         or collapsing a node depending on the previous state.
1105         (gtk_tree_view_real_expand_row): Add timeout and set 
1106         correct state for node being expanded.
1107         (gtk_tree_view_real_collapse_row): Add timeout and set
1108         correct state for node being collapsed.
1109
1110         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
1111         information about the node currently being expanded or
1112         collapsed, and also a timeout id.
1113
1114         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
1115         with expander_style for draw_expander.
1116
1117         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
1118         expander_style.
1119         (create_expander_affine): New function for creating an 
1120         expander affine.
1121         (apply_affine_on_point): New function for applying an 
1122         affine to a point.
1123         (gtk_default_draw_expander): Modified to take expander_style
1124         instead of is_open, and to draw the rectangle rotated differently
1125         depending on the expander style.
1126         (gtk_paint_expander): Replace is_open with expander_style.
1127
1128         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
1129
1130         * gtk/gtkenums.h: Add expander style enum.
1131
1132 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
1133
1134         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
1135         value from gtk_tree_model_get_iter, the model might be empty.
1136
1137 2001-07-20  Hans Breuer  <hans@breuer.org>
1138
1139         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
1140         gdk/gdkinput.c like the other backends
1141
1142         * gdk/win32/gdkinput-win32.h :
1143         * gdk/win32/gdkinput.c :
1144         * gdk/win32/gdkvisual-win32.c :
1145         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
1146         GdkVisual GObjectification. UNTESTED for pen-devices because
1147         I simply have none.
1148
1149         * gdk/gdk.def :
1150         * gtk/gtk.def : updated externals
1151
1152         * gtk/gtkiconfactory.c :
1153         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
1154         before passing &error to functions to avoid strange crashes
1155         
1156         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
1157
1158         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
1159
1160         * gtk/makefile.msc.in : updated
1161
1162 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
1163
1164         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
1165         Add property support. (#51858)
1166
1167 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
1168
1169         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
1170         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
1171         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
1172
1173 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
1174
1175         * gtk/gtkcolorsel.c: Add propery support (roughly
1176         based on patch from Lee Mallabone, #51014)
1177
1178         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
1179         deprecated, since we already g_warning() on it.
1180
1181 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
1182
1183         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
1184         typo that sometimes caused selection not to work properly.
1185
1186         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
1187         entry when tabbing in. (#57743)
1188         
1189         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
1190         user drags up above or down below the entry, move
1191         to the end or the beginning of the entry. (Suggestion
1192         from Jay Cox, #50940)
1193
1194         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
1195         a current selection, then when moving by chars or
1196         words, move to the end of the selection rather than
1197         from entry->current_pos. (Suggestion from Jay Cox,
1198         #50942)
1199         
1200 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
1201
1202         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
1203         set window->decorated. (Patch from Hidetoshi Tajima,
1204         #55846)
1205
1206 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
1207
1208         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
1209         the widget/child realization/mapping invariants.
1210
1211         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
1212         gtk_widget_[get/set]_child_visible() to control
1213         whether visible children of a mapped window are
1214         mapped.
1215
1216         * docs/widget_system.txt: Updated for changes in
1217         container contract, and addition of GTK_CHILD_VISIBLE.
1218
1219         * gtk/gtkcontainer.c: Add generic map()/unmap()
1220         functions that work for almost all containers.
1221
1222         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
1223         gtk_widget_set_child_visible() where necessary.
1224
1225         * gtk/*.c: Remove excess map(), unmap(), and 
1226         realization/mapping invariant enforcing code
1227         from many containers.
1228
1229 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
1230
1231         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
1232         Get the foreground color from 'text', nor 'fg'. (#57568)
1233
1234 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
1235
1236         * gtk/*.c: Patch from Matthias Clasen to remove remove
1237         all instances of g_return_if_fail (foo != NULL); that are
1238         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
1239         since the second check catches the NULL anyways.
1240
1241 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
1242
1243         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
1244         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
1245         GDK_THREADS_ENTER()/LEAVE() pairs.
1246
1247         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
1248         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
1249         pairs. (Problem found by M. Meeks)
1250
1251 2001-07-18  Darin Adler  <darin@bentspoon.com>
1252
1253         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
1254         that we don't get a g_warning message every time we register a new
1255         icon size.
1256
1257         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
1258         using pixel variable of the correct type.
1259         
1260 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
1261
1262         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
1263         so that using X functions on a GdkWindow is possible, if
1264         a little hairy.
1265
1266         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
1267         and ts_origin of a GC, so that external parties can offset/restore
1268         a GC, when using gdk_window_get_internal_paint_info().
1269
1270 2001-07-17  Darin Adler  <darin@bentspoon.com>
1271
1272         * .cvsignore: Ignore the sgml directory made by gtkdoc.
1273         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
1274         instead of the deprecated gtk_window_set_policy.
1275         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
1276         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
1277         function to get rid of warning and some code too.
1278         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
1279         missing const.
1280         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
1281         unused local.
1282         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
1283         const.
1284         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
1285         (gdk_utf8_to_compound_text): Add missing const.
1286         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
1287         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
1288         cast and get rid of an unnecessary one.
1289         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
1290         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
1291         local.
1292         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
1293         Remove unused local.
1294         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
1295         missing const.
1296         * tests/testsocket.c: (add_child): Add cast so the printf format
1297         doesn't make us implicitly depend on what integer type
1298         gtk_socket_get_id returns.
1299         * tests/testtextbuffer.c: Add missing const.
1300         * tests/testtreefocus.c: (main): Remove unused local.
1301         * tests/treestoretest.c: (iter_remove): Remove unused local.
1302         (uppercase_value): Remove unused function.
1303         (make_window): Add statement to quiet the compiler's uninitialized
1304         variable warning.
1305
1306 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
1307
1308         * gtk/gtkrange.c:
1309         (second_timeout): 
1310         (initial_timeout): 
1311         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
1312         (gtk_range_calc_layout): compute the new layout based on an
1313         adjustment->value being passed in as argument.
1314         (gtk_range_button_press): for button2 slider warps, first recalc
1315         the layout, then adjust the value. also, use update_slider_position()
1316         for adjusting the value, so we keep pixel quantisation at which we
1317         usually operate (upon motion or button releases). the reason for this
1318         is that, we can't change the adjustment upon button2 presses to a non
1319         quantised value and upon button2 release re-quantise the value since
1320         that'd alter the value even if we didn't get any motion events (causing
1321         unexpected scroll area warps upon release and/or slider pixel-jitter).
1322         (gtk_range_motion_notify): update the slider position from queried
1323         coordinates, not event coordinates.
1324
1325 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
1326
1327         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
1328         the default gc values are: width=0, CapBut, JoinMiter.
1329
1330 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
1331
1332         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
1333         into account the xpad and ypad when calculating the width and the
1334         height of the pixbuf cel.
1335
1336 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
1337
1338         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
1339         Rename to gtk_radio_menu_item_get_group(), add deprecated
1340         alias. (#57044)
1341
1342         * gtk/gtkfilesel.c: Indentation fix.
1343
1344 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
1345
1346         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
1347         Hasselmann to fix warnings in compat macros. 
1348         (#56773)
1349
1350         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
1351         stupid wrong cast added in last patch.
1352
1353 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
1354
1355         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
1356         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
1357
1358 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
1359
1360         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
1361         missing cast.
1362
1363         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
1364         NULL/FALSE return value confusion.
1365
1366         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
1367         problem when scrollbar completely fills range. (Patch
1368         from  Matthias Clasen, #57047)
1369
1370 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
1371
1372         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
1373         clean up when handling events for move-resize emulation.
1374         (Problem traced down by Matthias Clasen, #57271)
1375
1376 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
1377
1378         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
1379           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
1380           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
1381           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
1382           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
1383           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
1384           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
1385         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
1386
1387 2001-07-09  Peter Williams  <peterw@ximian.com>
1388
1389         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
1390         for when srcdir != builddir
1391
1392 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
1393
1394         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
1395         gtk_tree_model_get_iter_root.
1396
1397         * gtk/gtkliststore.c: Add a bunch of g_return statements.
1398         (gtk_list_store_iter_n_children): Fix up.
1399
1400         * gtk/gtktreestore.c: Add a bunch of g_return statements.
1401
1402 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
1403
1404         * gtk/gtkwidget.c (gtk_widget_class_init):
1405         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
1406         restore some workingness.
1407
1408         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
1409         handle of window type for input-only windows.
1410
1411 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
1412
1413         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
1414         Patch from Gregory Merchan to add 
1415         gtk_button_box_set_secondary(), which separates
1416         the child into a separate group from the normal
1417         buttons. (#56331)
1418
1419         * gtk/gtkdialog.c: Make help buttons secondary by
1420         default.
1421
1422         * gtk/gtkbbox.c: Added a child property "secondary".
1423
1424         * gtk/testgtk.c: Turn on the help button for the 
1425         color selector to check that it properly appears
1426         as secondary.
1427
1428 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
1429  
1430         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
1431         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
1432         Add gdk_set_pointer_hooks() to allow pointer-querying to
1433         be hooked by an event record/playback system like GERD.
1434         (#56914)
1435         
1436 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
1437
1438         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
1439         in the right value of initial_emission to
1440         gtk_widget_set_style_internal (#57091)
1441
1442 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
1443
1444         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
1445         Make compile.
1446
1447         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
1448         with calling gtk_widget_set_style_internal() with
1449         the old style, not the new style. (#56989)
1450
1451 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
1452
1453         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
1454           gtk/gtkwidget.c:
1455         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
1456         not GTK_WIDGET_GET_ANCESTOR ... see 
1457         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
1458         Indicate the best practice in the docs for gtk_widget_get_toplevel().
1459
1460         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
1461         so GtkPlug can give the correct signals when transforming
1462         from a child to a toplevel.
1463         
1464         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
1465         reparentation correctly.
1466
1467         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
1468         Propagate the previous_toplevel argument down properly.
1469
1470         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
1471         of wrong atr list.
1472
1473         * gtk/gtkplug.[ch]: Add an "embedded" signal.
1474
1475         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
1476         signals.
1477
1478         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
1479         functions gtk_plug_get_id(), gtk_socket_get_id(),
1480         to avoid the user having to worry about realization,
1481         and gdkx.h.
1482
1483         * tests/testsocket.c: Extend to try out the new signals
1484         and gtk_plug/socket_get_id().
1485
1486         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
1487         setting of underline attributes.
1488
1489         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
1490         DestroyNotify events from SubstructureNotifyMask
1491
1492         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
1493         Switch GDK_WINDOW_TYPE (window) as needed.
1494
1495         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
1496         allow creation of toplevel windows as children of
1497         foreign windows.
1498
1499         * gtk/gtkplug.c: Remove hacks involving changing private
1500         fields of GdkWindow.
1501
1502         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
1503         exactly the same signals and notification
1504         be emitted for local embedding as for inter-process
1505         embedding.
1506
1507 2001-07-04  James Henstridge  <james@daa.com.au>
1508
1509         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
1510
1511 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
1512
1513         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
1514         XEMBED embedding add a _XEMBED_INFO property to the
1515         client with version number and a "mapped" flags.
1516         Use the mapped flag instead of the racy MapRequestEvent
1517
1518         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
1519         code to reliably set things (when the child is a passive
1520         embedder participating in the XEMBED protocol) intead
1521         of just being a hack for embedding non-participating
1522         programs. Fix various bugs and race conditions.
1523         
1524         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
1525         work by simply making the GtkSocket the gtk parent
1526         of the GtkPlug. Set a flag in this case and make
1527         the GtkPlug work like a normal container by overriding
1528         methods such as check_resize and "chaining past" GtkWindow
1529         to GtkBin.
1530
1531         * gtk/gtkentry.c (gtk_entry_real_activate)
1532           gtk/gtkmain.c (gtk_propagate_event): 
1533         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
1534         
1535         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
1536         gtk_widget_get_ancestor):
1537         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
1538         might not give the expected result and recommend
1539         an alternative.
1540
1541         * tests/testsocket.c tests/testsocket_child.c
1542         tests/testsocket_common.c tests/Makefile.am: Extended
1543         to test different type of adding plugs to sockets
1544         (local,active,passive), and to test mapping/unmapping
1545         the plug.
1546
1547         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
1548         mark the window as destroyed until after we
1549         called _gdk_windowing_window_destroy().
1550         (_gdk_windowing_window_destroy() may use GDK functions
1551         on the window.)
1552
1553         * gdk/x11/gdkinput.c: Remove the check for finalization - 
1554         devices can be finalized under some circumnstances.
1555  
1556         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
1557         small problem with GDK_TYPE_DEVICE.
1558  
1559 2001-07-02  Havoc Pennington  <hp@pobox.com>
1560
1561         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
1562         use constants not atoms.
1563
1564 2001-07-02  James Henstridge  <james@daa.com.au>
1565
1566         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
1567         PANGO_TYPE_TAB_ARRAY.
1568
1569         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
1570         for PANGO_TYPE_TAB_ARRAY.
1571
1572         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
1573         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
1574
1575         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
1576         the file.  Remove Pango types from defs -- they are now defined in
1577         libpango.
1578
1579 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
1580
1581         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
1582
1583         * gtk/gtkobject.c (gtk_object_destroy): invoke
1584         g_object_run_dispose().
1585
1586         * gtk/gtkwindow.c: 
1587         * gtk/gtkwidget.c: 
1588         * gtk/gtkobject.c:
1589         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
1590         method.
1591
1592 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
1593
1594         * gtk/gtktypeutils.c (gtk_type_class): Remove
1595         change check for GTK_TYPE_OBJECT derivation to
1596         G_TYPE_OBJECTS - it's Tim-approved to use this 
1597         for arbitary objects.
1598
1599         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
1600         prefix gtk_container_dequeue_resize_handler().
1601
1602         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
1603         to the hierarachy_changed signal, since you otherwise
1604         have to always keep that around.
1605
1606         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
1607         for extra argument to hierarchy_changed.
1608
1609 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
1610
1611         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
1612         for style to mean "revert to default style"
1613
1614         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
1615           gtk_widget_restore_default_style): Make this functions
1616         deprecated aliases for gtk_widget_set_style (widget, NULL).
1617
1618         * gtk/gtkwidget.[ch]: Remove:
1619            gtk_widget_set_default_style ()
1620            gtk_widget_push_style ()
1621            gtk_widget_pop_style ()
1622         These functions interact are overriden by RC files, and
1623         thus virtually useless, and complicated.
1624
1625 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
1626
1627         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
1628         most of the previous global variables in gtkrc.c. This is
1629         in preparation for multi-head, since each screen can
1630         have different GtkSettings and RC information.
1631
1632         * gtk/gtkrc.[ch]: 
1633
1634         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
1635         GtkSettings parameter to GtkRcStyle::parse.
1636
1637         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
1638         Add two new settings gtk-theme-name, gtk-key-theme-name,
1639         for RC files that are loaded by name after reading
1640         the default RC files.
1641         
1642         * gtk/gtkrc.c: Allow priorities for styles, as wll as
1643         bindings.
1644
1645         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
1646         and use it by default for RC files loaded via 
1647         gtk-theme-name, gtk-key-theme-name.
1648
1649         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
1650         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
1651         tests/testgtkrc: Require pathnames to be absolute.
1652
1653         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
1654         the source when parsing, since the operation of looking up a
1655         pixmap from an RC file depends on the parsing context.
1656
1657         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
1658         reset RC styles on all widgets when files are reparsed.
1659
1660         * tests/testgtk.c (create_rc_file) 
1661           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
1662         Simplify, now that gtk_rc_reparse_all() resets styles on
1663         all widgets itself.
1664
1665         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
1666         return value.
1667
1668         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
1669         GtkSettings argument.
1670
1671         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
1672         gtk_settings_get_global().
1673
1674         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
1675         to get the appropriate GtkSettings for a widget. (For now,
1676         just gets the default GtkSetttings.) 
1677
1678         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
1679           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
1680         changes.
1681
1682         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
1683         getting a style for a path without actually having a widget.
1684         (Allows using a style for a subpart of a widget, for
1685         example.)
1686
1687         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
1688         the RC files to be reloaded for just one GtkSettings
1689         (not sure how useful this really is.)
1690
1691         * gtk/gtkrc.h: Deprecate
1692         gtk_rc_add_widget_name/widget_class/class_style
1693
1694 2001-06-30  Alex Larsson  <alexl@redhat.com>
1695
1696         * gdk/linux-fb/gdkinput-none.c:
1697         * gdk/linux-fb/gdkinput.c:
1698         * gdk/linux-fb/gdkinputprivate.h:
1699         Convert GdkDevice to a GObject.
1700
1701         * linux-fb/gdkprivate-fb.h:
1702         * linux-fb/gdkvisual-fb.c:
1703         Convert GdkVisual to a GObject.
1704
1705 2001-06-29  Alex Larsson  <alexl@redhat.com>
1706
1707         * gdk/gdkvisual.h:
1708         * gdk/gdkcolor.c:
1709         * gdk/x11/gdkx.h:
1710         * gdk/x11/gdkvisual-x11.c:
1711         Convert GdkVisual to a GObject.
1712
1713         * gdk/gdkinput.h:
1714         * gdk/gdkevents.c:
1715         * gdk/x11/gdkinputprivate.h:
1716         * gdk/x11/gdkinput-gxi.c:
1717         * gdk/x11/gdkinput-none.c:
1718         * gdk/x11/gdkinput-x11.c:
1719         * gdk/x11/gdkinput-xfree.c:
1720         * gdk/x11/gdkinput.c:
1721         Convert GdkDevice to a GObject.
1722
1723 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
1724
1725         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
1726         to just plain new, fixing the number of columns, and column types
1727         at creation time.
1728
1729         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
1730
1731         * gtk/gtkcellrenderertext.c
1732         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
1733         height to a specific font.
1734
1735         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
1736
1737         * tests/*c: change to work with new store models.
1738
1739 2001-06-29  Havoc Pennington  <hp@redhat.com>
1740
1741        * Throughout: fixes to compile with G_DISABLE_COMPAT
1742         (s/g_signal_connectc/g_signal_connect/,
1743         s/g_signal_newc/g_signal_new/,
1744         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
1745
1746 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
1747
1748         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
1749         add path argument to selection callbacks.
1750
1751 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
1752
1753         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
1754         walk through a model in a depth first manner, with the option to
1755         break out.
1756
1757 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
1758
1759         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
1760         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
1761         column and follow it when draged, rather than a location in the
1762         view. "expander_column" property and drawing functions changed
1763         accordingly.  Fixes bug #55942.
1764
1765         (gtk_tree_view_{set,get}_expander_column): Now works with a
1766         GtkTreeViewColumn* instead of int.
1767
1768 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
1769
1770         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
1771
1772 2001-06-28  Havoc Pennington  <hp@pobox.com>
1773
1774         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
1775         image data to the screen, using a server grab to avoid race
1776         conditions.
1777
1778         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
1779         check for NULL return from gtk_image_new_from_stock(), it never
1780         returns NULL.
1781         (gtk_item_factory_create_item): fix bug where we parsed the stock
1782         ID as an inline pixbuf
1783
1784         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
1785
1786         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
1787         support (should be using binding set here)
1788
1789         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
1790         support (should be using binding set here)
1791
1792         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
1793         support
1794
1795         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
1796
1797         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
1798
1799         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
1800
1801         * gtk/gtkimcontextsimple.c
1802         (gtk_im_context_simple_filter_keypress): keypad
1803
1804         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
1805
1806         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
1807
1808         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
1809
1810         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
1811         should be binding-setted)
1812
1813         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
1814
1815         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
1816
1817         * gtk/gtkcalendar.c: numeric keypad fixes
1818
1819         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
1820         support
1821
1822         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
1823         screwup
1824
1825         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
1826         clip the render area to the drawable's clip region in advance,
1827         so we don't get data from the server that we don't need.
1828
1829         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
1830         check return value of gdk_pixbuf_get_from_drawable(), fall back 
1831         to bilevel alpha if we can't get the pixbuf to composite against.
1832
1833         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
1834
1835         * gdk/gdkimage.c (gdk_image_get_colormap): add
1836         gdk_image_set_colormap, gdk_image_get_colormap
1837
1838         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
1839         take a region of the image, instead of converting the entire
1840         image.
1841
1842         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
1843         keybinding signal. Add default bindings for it. Add default
1844         handler for show_help that shows the tooltip for the widget.
1845
1846         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
1847         "close" keybinding signal, remove key press handler.
1848
1849         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
1850         it's not our usual practice to leave a deprecated function around
1851         with a runtime warning, plus we don't want it to appear in docs,
1852         plus if we make them yellow no one will want to change them
1853         anyhow.
1854
1855 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
1856
1857         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
1858         GTK_WIDGET_REALIZE() for resize queueing.
1859
1860         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
1861         GTK_WIDGET_REALIZE() for post event delivery destruction upon
1862         GDK_DESTROY.
1863         
1864         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
1865         sompensate for former (pre-2.0) connect_after() facility.
1866         (gtk_widget_send_expose): 
1867         (gtk_widget_event): assert the widget is realized, since event delivery
1868         to non-realized widgets is essentially a bug. event handlers should
1869         be able to unconditionally rely on widget->window (unless they
1870         emit events on their own which can trigger widget destruction).
1871         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
1872         logic. event delivery happens as follows:
1873         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
1874         b) if !was_handled in (a) and the widget is still realized, emit event-
1875            specific signal (RUN_LAST handler). returns was_handled.
1876         c) emission of GtkWidget::event-after for notification if the widget is
1877            still realized (regardless of was_handled from previous stages, no
1878            class handler). no return value.
1879         d) was_handled gets passed on to caller, to determine further
1880            propagation. if the widget got unrealized meanwhile, was_handled
1881            is returned as TRUE.
1882
1883         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
1884         gdk_event_get_coords().
1885
1886 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
1887
1888         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
1889         age 0, binary age 0. depend on glib 1.3.7.
1890
1891         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
1892
1893         * gtk/gtkmenubar.c: same here.
1894         
1895         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
1896
1897         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
1898
1899         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
1900         
1901         * gtk/gtkmenubar.c (add_to_window): likewise.
1902         
1903         * gtk/gtktextbtree.c: and here...
1904         
1905         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
1906         
1907         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
1908         
1909         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
1910         
1911         * gtk/gtktreeviewcolumn.c:
1912         (_gtk_tree_view_column_set_tree_view): yet again.
1913
1914         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
1915         signal connections without g_signal_connect_data().
1916         
1917         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
1918         demo of the matter.
1919         
1920         * demos/testpixbuf.c (main): running out of equality phrases for the
1921         ChangeLog, but had to adapt connections here as well.
1922         
1923         * demos/testanimation.c (progressive_timeout): and for the fun of it,
1924         tackled this the same way.
1925         
1926         * tests/testtext.c (create_view): ok, it's becoming a pain at this
1927         point, but had enough enery for one more fix.
1928
1929         * tests/testtreecolumns.c (main): stand up man, do your work!
1930
1931         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
1932         fix, either that's been all of it or CVS gtk is broken yet again.
1933         
1934 2001-06-29  James Henstridge  <james@daa.com.au>
1935
1936         The following changes correspond to bug #56812
1937
1938         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
1939         code for GdkDevice.
1940
1941         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
1942         GdkCursor.
1943
1944 2001-06-19  Havoc Pennington  <hp@pobox.com>
1945
1946         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
1947         for mapping a window without fooling with stacking order, but
1948         updating the "withdrawn" flag
1949
1950         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
1951         filtering as soon as possible, moving move resize and wmspec_check
1952         handling after the event filter.  Make default filter apply to all
1953         events, not just those with no GdkWindow wrapped around the X
1954         window. Fix a FIXME about how the window could be a pixmap using 
1955         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
1956
1957         Also, be robust against events not on a known GdkWindow.
1958
1959         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
1960         gdk_x11_ungrab_server): export reference-counted server grabs, so
1961         other people can grab server over a GDK function that also does
1962         so.
1963
1964 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
1965
1966         * gtk/gtktreeviewcolumn.c
1967         (gtk_tree_view_column_pack_start_cell_renderer): New function to
1968         reflect that you can (hypothetically) pack cell renderers into a
1969         column.
1970         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
1971         (gtk_tree_view_column_cell_is_visible): Move more functionality to
1972         the column.
1973         (gtk_tree_view_column_cell_can_focus): Move more functionality to
1974         the column.
1975
1976         * gtk/gtktreeview.c: Move to use new column-packing code.
1977         (gtk_tree_view_real_expand_row): remove totally braindead code.
1978         (gtk_tree_view_real_collapse_row): ditto.
1979
1980 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
1981
1982         * gtk/gtktreeviewcolumn.c: Fix a typo.
1983         
1984 2001-06-26  Joel Becker  <jlbec@evilplan.org>
1985
1986         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
1987           at the end of the file
1988
1989 2001-06-26  Havoc Pennington  <hp@redhat.com>
1990
1991         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
1992
1993 2001-06-26  Havoc Pennington  <hp@redhat.com>
1994
1995         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
1996         property
1997
1998 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
1999
2000         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
2001         stupid missing statement
2002
2003         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
2004         private function for ATK.  It notifies you of how many _visible_
2005         children are deleted when a node is deleted.  Should be used by
2006         atk only.
2007
2008 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
2009
2010         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
2011         Use new pango_context_get_metrics() to fix problems
2012         with font lists in descriptions. (#56184, reported by
2013         Jonas Borgström)
2014
2015 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
2016
2017         * gtk/gtkiconfactory.c:
2018         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
2019         item factory so inlined pixbufs actually work.
2020
2021 2001-06-25  Havoc Pennington  <hp@redhat.com>
2022
2023         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
2024         s/RESIZEABLE/RESIZABLE/
2025
2026         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
2027
2028 2001-06-25  Alexander Larsson  <alexl@redhat.com>
2029
2030         * configure.in:
2031         Added --enable-fbmanager. This is some experimental code
2032         that lets several GtkFB apps coordinate their access to the
2033         framebuffer.
2034         
2035         * acconfig.h:
2036         Added ENABLE_FB_MANAGER.
2037
2038         * gdk/linux-fb/Makefile.am:
2039         Added gdkfbmanager and gdkfbswitch.
2040
2041         * gdk/linux-fb/gdkkeyboard-fb.c:
2042         * gdk/linux-fb/gdkmouse-fb.c:
2043         * gdk/linux-fb/gdkprivate-fb.h:
2044         Split device init and open so that
2045         they can be opened and closed while switched
2046         away.
2047
2048         * gdk/linux-fb/gdkmain-fb.c:
2049         Add the basic manager communication.
2050
2051         * gdk/linux-fb/gdkrender-fb.c:
2052         Don't update to the shadow fb if we're
2053         blocked by the fb manager.
2054
2055 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
2056
2057         * docs/Changes-2.0.txt: Add note about child property
2058         changes.
2059
2060 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
2061
2062         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
2063         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
2064
2065         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
2066         with un'reffing wrong list reported by Jeff Franks.
2067
2068         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
2069
2070         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
2071         for the default icon. Remove inline XPM.
2072
2073         * gtk/gtkstock.h gtk/gtkiconfactory.c:
2074         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
2075         is used for GTK_STOCK_DND, but it is a bit too small.)
2076
2077         * gtk/stock-icons/stock_dnd_multiple.png
2078         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
2079
2080         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
2081         TRUE when starting a drag. In other cases, we are
2082         just observing. (#52995)
2083
2084         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
2085         function to set the icon for a drag from a GdkPixbuf
2086         or stock ID.
2087
2088         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
2089         Likewise, for drag sources.
2090
2091         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
2092         (Now should be done using the stock system.)
2093
2094 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
2095
2096         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
2097         Removed - didn't work and not particularly useful anyways
2098         if it did. 
2099
2100 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
2101
2102         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
2103         introduced last night that was making things decidedly not work.
2104
2105         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
2106         so that we have getter/setter pairing everywhere it makes
2107         sense. (#55767)
2108
2109         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
2110         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
2111         deprecated compat macro. (#55516)
2112
2113         * gtk/gtklabel.[ch]: Add functions
2114         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
2115         gtk_label_set_label(), which mirror the property API for GtkLabel.
2116         Make gtk_label_get_attributes() only reflect the attributes
2117         set by gtk_label_set_attributes.
2118
2119         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
2120         from gtk_notebook_set_page().
2121
2122 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
2123
2124         * configure.in: Fix tests for XShm.h.
2125
2126         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
2127         gdk_image_new() by use of goto, properly use g_object_unref().
2128
2129 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
2130
2131         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
2132         calls, as GdkImage is an object. these should be g_obejct_unref()
2133         instead but that won't work because of the g_error() statement
2134         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
2135         to spot these places.
2136
2137 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
2138
2139         * modules/input/gtkimcontextxim.c: Fixup some problems with 
2140         text length handling in error cases.
2141
2142         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
2143         a bit to make test actually warn on attempt to allocation
2144         a negative size. (#56101, Matthias Clasen)
2145
2146 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
2147
2148         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
2149         noticed by Brian Cameron.
2150         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
2151         Cameron.
2152
2153 2001-06-22  Hans Breuer  <hans@breuer.org>
2154
2155         * gdk/gdk.def : updated externals
2156
2157         * gdk/win32/gdkdrawable-win32.c : corrected some casts
2158         in GDK_NOTEs
2159
2160         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
2161         to translate coordinates to the internal > 16 bit system
2162         Try to handle WM_WINDOWPOSCHANGED to get better performance for
2163         when moving/resizing
2164
2165         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
2166         and gdk_keymap_get_direction (). The latter is untested for
2167         the RTL case
2168
2169         * gtk/gtk.def : updated externals
2170
2171         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
2172         from pango_language_from_string (), not an already freed pointer
2173
2174         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
2175         binary (-kb) to be useable on windoze
2176  
2177 2001-06-21  Alexander Larsson  <alexl@redhat.com>
2178
2179         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
2180         Update to new PangoLanguage changes.
2181         
2182         * gtk/gtkwindow-decorate.c:
2183         * gtk/gtkwindow.[ch]:
2184         Added setting argument to gtk_window_set_has_frame ()
2185         
2186 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
2187
2188         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
2189         the case without XKB properly.
2190
2191         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
2192         unused gtk_rc_auto_parse variable.
2193
2194         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
2195         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
2196         longer needed with GdkPixbuf.
2197
2198         * gtk/gtkrc.c (_gtk_rc_init): Make private.
2199
2200 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
2201
2202         * gtk/gtkentry.h: Mark deprecated functions with
2203         GTK_DISABLE_DEPRECATED.
2204
2205 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
2206
2207         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
2208
2209         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
2210
2211         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
2212           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
2213           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
2214           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
2215           to recent changes in Pango.
2216
2217         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
2218           to test whether the basic engine honors them.
2219
2220 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
2221
2222         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
2223         gtk_container_child_get_property().
2224
2225 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
2226
2227         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
2228         (gtk_tree_view_move_cursor_page_up_down): implement.
2229
2230 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
2231
2232         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
2233         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
2234         don't use automatic fixed size buffer for printf-ing floats, doubles
2235         can expand to really _huge_ strings, use g_strdup_printf() instead.
2236
2237 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
2238
2239         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
2240         construct property in 1.2 and still needs to be.
2241
2242         * gtk/gtkwidget.c: "composite_child" is not a settable property.
2243
2244 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
2245
2246         * gtk/gtkliststore.c (gtk_list_store_clear): 
2247         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
2248         clear a model.
2249
2250 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
2251
2252         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
2253
2254         * gtk/Makefile.am:
2255         * gtk/gtk.h: disabled GtkPacker compilation.
2256
2257         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
2258
2259         * gtk/gtknotebook.c:
2260         * gtk/gtktable.c:
2261         * gtk/gtkbox.c: ported this over to child properties.
2262
2263         * gtk/gtksettings.c: fetch class properties via
2264         g_object_class_list_properties().
2265
2266         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
2267         child arg interface. use gobjectnotifyqueue.c for child property
2268         notification.
2269
2270         * gtk/gtkwidget.[hc]: provide necessary means for container child
2271         properties, i.e. ::child_notify signal,
2272         gtk_widget_freeze_child_notify(),
2273         gtk_widget_child_notify(),
2274         gtk_widget_thaw_child_notify().
2275
2276         * tests/testgtk.c: removed inferior property handling code, for
2277         property editing, a generic module should be used, and GLE
2278         coincidentally fullfills that purpose.
2279
2280         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
2281         needs to be adapted to g_object_class_list_properties() before this
2282         builds again.
2283
2284 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
2285
2286         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
2287         test if a node is expanded.
2288
2289 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
2290
2291         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
2292         where collapsing a selected row would result in the cursor/anchor
2293         getting screwed up.
2294
2295 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
2296
2297         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
2298         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
2299         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
2300         Now I can really reorder/sort all Store widgets.  treesorttest
2301         seems to just work now.
2302         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
2303         testtreesort worked through a big coincidence all this time.
2304         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
2305         code.
2306         * tests/testtreecolumns.c: Big 'ol warning at the top letting
2307         people know that this code should never ever ever be copied.
2308
2309 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
2310
2311         * gtk/gtkwindow.h: Fixed a small typo, it should be
2312         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
2313         on line 134.
2314
2315 2001-06-14  Havoc Pennington  <hp@redhat.com>
2316
2317         Docs fixups, and:
2318         
2319         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
2320         GTK_DISABLE_DEPRECATED
2321
2322 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
2323
2324         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
2325         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
2326         finish it off tonight, though it basically works now when it's a
2327         list.  Also, I have a sinking feeling neither GtkTreeStore or
2328         GtkListStore actually resort when adding a new item.  I'll look
2329         into it.
2330
2331 2001-06-14  Havoc Pennington  <hp@redhat.com>
2332
2333         * demos/gtk-demo/main.c (load_file): fix bug identified by
2334         warnings I just added to gtktextbuffer
2335
2336 2001-06-14  Havoc Pennington  <hp@redhat.com>
2337
2338         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
2339
2340         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
2341
2342         * gtk/gtktextbtree.c: don't leak node data all over the place.
2343
2344         * demos/gtk-demo/main.c (main): create fontify tags for the right
2345         buffer
2346
2347         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
2348         to mention tags in the same table can't have the same name,
2349         suggested by Skip Montanaro
2350
2351 2001-06-11  Havoc Pennington  <hp@redhat.com>
2352
2353         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
2354         for trying to add two tags with same name to the tag table
2355
2356         * demos/gtk-demo/main.c (main): fix colors ;-)
2357
2358 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
2359
2360         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
2361         that allows grouping together multiple windows so that grabs
2362         within that set of windows only affect those windows.
2363
2364         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
2365         signal for notification when a widget becomes shadowed
2366         by a grab or is no longer shadowed by a grab.
2367
2368         * gtk/gtkwidget.c (gtk_widget_propagate_state)
2369           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
2370         insenstive widgets to maintain a grab.
2371
2372 2001-06-14  Alexander Larsson  <alexl@redhat.com>
2373
2374         * docs/README.linux-fb:
2375         Add some example config files that can be used with the URW fonts.
2376         
2377         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
2378         Set up the color ramps for DirectColor mode.
2379
2380 2001-06-11  Havoc Pennington  <hp@redhat.com>
2381
2382         * Release 1.3.6
2383          
2384 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2385
2386         * gdk/linux-fb/gdkwindow-fb.c:
2387         Unify shaped window code and make it repaint the area that used
2388         to be part of the shape, but isn't anymore.
2389
2390 2001-06-11  Havoc Pennington  <hp@redhat.com>
2391
2392         * NEWS: Updates
2393
2394         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
2395
2396         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
2397         
2398 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2399
2400         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
2401         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
2402         passes zero instead, so do we.
2403         
2404 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2405
2406         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2407         Deep copy dash_list too.
2408         (_gdk_fb_gc_new): Set default cap_style before
2409         setting values.
2410
2411 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
2412
2413         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
2414         gdk_keymap_get_direction): New functions.
2415
2416 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
2417
2418         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
2419         gtk_tree_model_get_flags by adding a second flag for atk.
2420
2421         * gtk/gtktreemodel.c: make cursor behavior interact better with
2422         mouse presses.
2423
2424 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
2425
2426         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
2427         expand_row/collapse_row to be 2 signals each -- test_expand_row
2428         and row_expanded as well as test_collapse_row and row_collapsed.
2429
2430 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
2431
2432         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
2433         signal name to be changed instead of selection_changed.
2434
2435 2001-06-08  Havoc Pennington  <hp@redhat.com>
2436
2437         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
2438         "scroll_offset" property for notification when the layout offsets
2439         may have changed
2440         (gtk_entry_adjust_scroll): add notify for scroll_offset
2441         (gtk_entry_layout_index_to_text_index): function to compensate for
2442         preedit string when doing coordinate stuff on the entry's layout
2443         (gtk_entry_text_index_to_layout_index): inverse function
2444         (gtk_entry_get_layout_offsets): hook to get current position of
2445         the layout      
2446         (gtk_entry_get_layout): hook to get the layout itself.
2447
2448         * gtk/gtklabel.c (gtk_label_get_layout): new function
2449
2450 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
2451
2452         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
2453         keybinding.
2454         (gtk_tree_view_focus): Fix merge conflict.
2455
2456 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
2457
2458         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
2459         clean up cursor handling.
2460
2461 2001-06-08  Havoc Pennington  <hp@redhat.com>
2462
2463         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
2464         function
2465
2466         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
2467         this function
2468
2469 2001-06-08  Alex Larsson  <alexl@redhat.com>
2470
2471         * gtk/gtkcompat.h.in:
2472         Added compat macros for all old GTK_TYPE_GDK_xxx types.
2473         Fixes bug #52892
2474
2475 2001-06-08  Havoc Pennington  <hp@redhat.com>
2476         
2477         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
2478         parent still
2479
2480 2001-06-08  Havoc Pennington  <hp@redhat.com>
2481
2482         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
2483         don't call g_list funcs on GSList
2484
2485         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
2486         gtk_container_focus(), since some widgets have focusable locations
2487         which are not other widgets. These widgets should not have to be 
2488         containers just to manage the focus. For example, GtkHSV is
2489         currently a container for no good reason. Also, this cleans
2490         up the "if (is_container && is_sensitive && is_drawable)
2491         container_focus ()" mess in widget implementations.
2492
2493         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
2494         function, and have it just call gtk_widget_child_focus().
2495
2496         * gtk/gtkhsv.c: derive from widget not container
2497         
2498         Throughout: fix to reflect GtkContainer::focus change
2499         
2500 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
2501
2502         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
2503         range.  Fix bug #55921
2504
2505         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
2506         (#55920).
2507
2508 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
2509
2510         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
2511         and gdk_keymap_get_current_direction().
2512
2513         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
2514           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
2515         the current locked group, use it to set the keymap
2516         direction.
2517
2518         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
2519         to determine whether we draw a split cursor or use
2520         a jumping cursor based on the current direction.
2521
2522         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
2523         Obey the split cursor setting. 
2524
2525 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
2526
2527         * gtk/gtkimmulticontext.c (activate_cb): Only activate
2528         when toggling on, not when toggling off... (#55906)
2529
2530 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
2531
2532         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
2533         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
2534         in docs. (#55812, Vitaly Tishkov)
2535
2536 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
2537
2538         * demos/gtk-demo/main.c (create_tree): Changed signal name from
2539         selection_changed to changed in signal connection to GtkTreeSelection,
2540         also used g_signal_connectc since GtkTreeSelection is now a GObject.
2541
2542 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
2543
2544         * gtk/gtktreeselection.c: Now it's a GObject instead of a
2545         GtkObject.  The GtkTreeSelection::selection_changed signal is now
2546         the GtkTreeSelection::changed signal.
2547
2548         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
2549         object.
2550
2551         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
2552         object.
2553
2554 2001-06-07  Havoc Pennington  <hp@redhat.com>
2555
2556         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
2557
2558 2001-06-07  Havoc Pennington  <hp@redhat.com>
2559         
2560         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
2561         (not tested yet because with absolute path to srcdir I can't build
2562         atk, but it was broken anyway so this may help) 
2563
2564 2001-06-07  Havoc Pennington  <hp@redhat.com>
2565
2566         * configure.in: output m4macros/Makefile
2567         
2568 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
2569
2570         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
2571         buttons.  Fixes #55460 reported by matthiasc@poet.de.
2572
2573 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
2574
2575         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
2576         expansion/collapsing so it only happens in one place.
2577         (gtk_tree_view_real_expand_row): ditto.
2578
2579 2001-06-07  Havoc Pennington  <hp@redhat.com>
2580
2581         * tests/Makefile.am: add missing -I flag
2582
2583         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
2584
2585         * configure.in: use pkg-config to see if GModule is
2586         supported; fix to properly turn on included loaders 
2587         when GModule isn't supported; don't use AC_CHECK_LIB 
2588         when libs are not installed yet
2589
2590         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
2591
2592         * Makefile.am (SUBDIRS): add m4macros subdir
2593
2594         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
2595         dependencies also.
2596
2597 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
2598
2599         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
2600         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
2601
2602 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
2603
2604         * gtk/gtktreeview.c
2605         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
2606         bindings to expand and collapse rows.
2607         (gtk_tree_view_real_select_cursor_parent): New key binding.
2608         (gtk_tree_view_real_toggle_cursor_row): New key binding.
2609
2610         * gtk/gtkmarshal.list: new
2611         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
2612
2613 2001-06-06  Havoc Pennington  <hp@redhat.com>
2614
2615         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
2616
2617         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
2618         Down to move visually rather than logically, since it confuses 
2619         people. Add -/+ and Ctrl--/+ bindings for logical movement.
2620
2621 2001-06-06  Alex Larsson  <alexl@redhat.com>
2622
2623         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
2624         Fix up error messages.
2625
2626 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
2627
2628         * gtk/gtktooltips.h: Include gtkwidget.h 
2629         (#55798, Karl Nelson)
2630
2631         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
2632         a valid latin-1 character. (Marc Lehmann, #35467)
2633
2634         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
2635         (Marc Lehmann, #35467)
2636         
2637 2001-06-05  Alex Larsson  <alexl@redhat.com>
2638
2639         * demos/gtk-demo/appwindow.c (do_appwindow):
2640         Don't swap the order of the args to gtk_widget_destroyed.
2641
2642         * tests/testgtk.c (destroy_properties):
2643         Don't crash when the properties window is destroyed.
2644
2645         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
2646         Use with_mnemonics to handle the case of stock items with
2647         underscores in them.
2648
2649 2001-06-05  Havoc Pennington  <hp@redhat.com>
2650
2651         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
2652         gtk_text_iter_reorder
2653
2654 2001-06-05  Havoc Pennington  <hp@redhat.com>
2655
2656         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
2657
2658 2001-06-05  Havoc Pennington  <hp@redhat.com>
2659
2660         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
2661         to the range that was set
2662
2663         * gtk/gtkrange.c: add value_changed signal, primarily 
2664         intended for use with GtkScale
2665         (gtk_range_set_increments): new function
2666         (gtk_range_set_range): new function with weird name
2667         (gtk_range_set_value): new function
2668         (gtk_range_get_value): new function
2669
2670         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
2671         from gtk_spin_button_get_value_as_float(). Compat #define
2672         added for get_value_as_float.
2673
2674         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
2675
2676         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
2677
2678 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
2679
2680         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
2681
2682 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
2683
2684         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
2685
2686         * tests/testgtk.c (create_tooltips): Remove usage of
2687         gtk_widget_set().
2688
2689 2001-06-05  Havoc Pennington  <hp@redhat.com>
2690
2691         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
2692
2693         Applying patch from Jeff Franks, with function docs added.
2694         
2695         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
2696         remove call to set_mnemonic_widget, change docs a bit.  
2697
2698         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
2699         new function
2700
2701         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
2702         new function
2703
2704         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
2705
2706         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
2707         function
2708         (gtk_radio_button_new_with_mnemonic_from_widget): new function
2709
2710         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
2711         new function
2712
2713         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
2714         function        
2715
2716         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
2717         auto-selection of mnemonic widget.
2718
2719 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
2720
2721         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
2722         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
2723         (gtk_tree_view_column_set_min_width): ditto.
2724
2725 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
2726
2727         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
2728         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
2729
2730 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
2731
2732         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
2733         gtk_clist_thaw().
2734
2735 2001-06-04  Havoc Pennington  <hp@pobox.com>
2736
2737         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
2738         releases for buttons 6, 7
2739
2740 2001-06-04  Havoc Pennington  <hp@redhat.com>
2741
2742         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
2743         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
2744         #55562
2745
2746 2001-06-04  Havoc Pennington  <hp@redhat.com>
2747
2748         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
2749         where text_view->layout == NULL by assuming its size is 0, 
2750         i.e. same as if we haven't done any reflow. Reported by 
2751         Hidetoshi Tajima #55448 
2752
2753 2001-06-04  Havoc Pennington  <hp@redhat.com>
2754
2755         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
2756         and 7 for scroll left/right, from Thomas Broyer
2757
2758 2001-05-10  Havoc Pennington  <hp@redhat.com>
2759
2760         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
2761         we need to parse the xsetting as if it were an RC file string.
2762
2763         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
2764         value of palette from settings, not from static variable
2765
2766         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
2767         xsettings translation table
2768
2769         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
2770         hardcoding the toolbar style conflicts with new customizable 
2771         toolbar style philosophy
2772         (gtk_toolbar_class_init): add settings for default toolbar style;
2773         these are used unless the app specifically forces a toolbar style
2774
2775         * gtk/gtksettings.c (settings_install_property_parser): only
2776         return at the start if we warn and parser == NULL
2777
2778         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
2779         palette changed handler so we don't notify dead color selections
2780
2781         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
2782         xthickness/ythickness of 0 or 1 properly 
2783         (gtk_default_draw_resize_grip): clear the background behind the
2784         resize grips, and align to bottom right if we square the 
2785         area to be drawn.
2786
2787         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
2788         statusbar label to 1, so it doesn't make toplevels resize oddly
2789         (gtk_statusbar_size_request): add grip size to request
2790         (gtk_statusbar_size_allocate): hack so the hbox still works with 
2791         the grip size in the request
2792
2793         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
2794         bug where showing all on a toplevel makes the toolbar 
2795         button text appear despite the toolbar mode
2796
2797         * gtk/gtkmenubar.c: add internal padding style property
2798
2799         * gtk/gtktoolbar.c: Add internal padding style property; add
2800         shadow type style property
2801
2802         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
2803         state; and put Container::border_width outside the frame
2804
2805         * gtk/gtktextview.c: don't draw focus rectangle if we're in
2806         interior focus mode, we just use blinking cursor
2807
2808 2001-06-04  Havoc Pennington  <hp@redhat.com>
2809
2810         * configure.in: Make gdk-pixbuf have same version number as GTK
2811
2812 2001-06-04  Havoc Pennington  <hp@redhat.com>
2813
2814         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
2815         digits greater than 6. If there actually are limits (which there
2816         likely aren't), should clamp to them not warn.
2817         (gtk_spin_button_new_with_range): don't take log of 0
2818         (gtk_spin_button_size_request): use digits to compute size
2819         request, rather than step increment.
2820
2821         * tests/testgtk.c (create_spins): test larger values of digits
2822         
2823         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
2824         font on map not expose, so we don't get weirdness during scrolling
2825
2826 2001-06-04  Havoc Pennington  <hp@redhat.com>
2827
2828         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
2829         Sam Solon, bug #54577, update value even if not drawable.
2830
2831 2001-06-04  Havoc Pennington  <hp@redhat.com>
2832
2833         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
2834         SCROLL_LEFT, reported by Thomas Broyer.
2835
2836 2001-06-04  Havoc Pennington  <hp@redhat.com>
2837
2838         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
2839         Process updates immediately, to prevent funny lag effect
2840         when scrolling, at some mild potential efficiency cost.
2841
2842 2001-06-04  Havoc Pennington  <hp@redhat.com>
2843
2844         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
2845         slider on the click.
2846
2847 2001-06-03  Havoc Pennington  <hp@pobox.com>
2848
2849         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
2850         hscale/vscale details, so we can use it for scrollbar as well.
2851
2852         * tests/testgtk.c (reformat_value): honor digits from GtkScale
2853
2854         * gtk/gtkenums.h (GtkTroughType): Remove this enum
2855         (GtkScrollType): add START and END from GtkTroughType
2856
2857         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
2858         its x/y arguments
2859
2860         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
2861         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
2862         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
2863         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
2864         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
2865
2866         Notable changes in the process:
2867          
2868         - stepper_size style property is the height for vertical 
2869           ranges, width for horizontal; the other dimension matches
2870           the trough size
2871         - add ability to do NeXT-style steppers (and several other styles
2872           that don't make any sense)
2873         - added min_slider_length, fixed_slider_length properties to
2874           GtkScrollbar
2875         - cleaned some private (or at least useless) functions out of
2876           gtkscale.h    
2877         - moved bindings to GtkScale from subclasses, even arrow keys,
2878           since blind users don't know scale orientation.
2879         - change move_slider action signal to use new GtkScrollType,
2880           remove GtkTroughType argument
2881         - digits rounds the values a range will input to the given 
2882           number of decimals, but will not try to force adjustment 
2883           values set by other controllers. That is, we no longer
2884           modify adjustment->value inside a value_changed handler.
2885         - added getters for GtkScale setters
2886         - middle-click begins a slider drag
2887         
2888 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
2889
2890         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
2891         getting the focus code to work.
2892         (gtk_tree_view_class_init): Add a bunch of keybindings.
2893
2894         * gtk/gtktreeviewcolumn.c
2895         (gtk_tree_view_column_set_cell_data_func):
2896         s/GtkCellDataFunc/GtkTreeCellDataFunc.
2897         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
2898         of "properties_changed" to help justify the death of the latter
2899         signal. (-:
2900
2901         * tests/testtreefocus.c (main): Let some columns be focussable to
2902         test focus better.
2903
2904 2001-06-01  Havoc Pennington  <hp@redhat.com>
2905
2906         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
2907         
2908         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
2909         overwrite in overwrite mode if we already deleted the selection
2910         and replaced it with new text.  
2911
2912         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
2913         selection to an empty range, clear the clipboard if we owned it.
2914         (gtk_label_set_selectable): give up selection if we become
2915         unselectable.
2916         (gtk_label_state_changed): override state changed to unselect text
2917         when insensitive
2918         (get_text_callback): add paranoia check that indexes aren't
2919         outside of label->text
2920         (gtk_label_select_region): make -1 for start_offset mean "end of
2921         label," for consistency with GtkEditable
2922
2923         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
2924         GTK_DIALOG_NO_SEPARATOR flag
2925
2926 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
2927
2928         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
2929         notifications on non-existant "enable_arrow_keys".
2930         (#53753, Skip Montanaro)
2931
2932 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
2933
2934         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
2935         GDK_TYPE_RECTANGLE.
2936
2937         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
2938         of allocation argument be GDK_TYPE_RECTANGLE.
2939
2940 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
2941
2942         * gtk/gtkoptionmenu.c: Account for the fact that the border
2943         width is _outside_ the window. (Fixes #54585, bug found
2944         by Bastien Nocera.)
2945
2946 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
2947
2948         * gtk/gtksettings.c (gtk_settings_get_property): Validate
2949         value from GDK settings against parameter spec.
2950
2951         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
2952         to temporary values and use g_value_transform(), since
2953         thinking that GValue was going to be easy or efficient
2954         to use was, of course, a mistake.
2955
2956         * gtk/gtksettings.c: Add cursor blink setting.
2957         
2958         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
2959
2960         * gtk/gtkentry.c: Add cursor blinking.
2961
2962         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
2963         cursor blink global settings.
2964
2965         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
2966         for :text_position in places where it is missing.
2967
2968 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
2969
2970         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
2971
2972 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
2973
2974         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
2975         not pkg-config. (#51032)
2976
2977         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
2978         (fixes #51952, James Henstridge)
2979         
2980 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
2981
2982         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
2983         Rename to the more correct gtk-go-up.
2984
2985         * gtk/stock-icons/stock_menu_sort_ascending.png:
2986         Added new file.
2987         
2988         * gtk/stock-icons/stock_menu_sort_descending.png:
2989         Changed to show descending instead of ascending.
2990
2991         * gtk/gtkiconfactory.c:
2992         Added menu size icon to sort ascending.
2993
2994         * gtk/stock-icons/Makefile.am:
2995         Added stock_menu_sort_ascending.png.
2996         
2997         * gtk/gtkseparatormenuitem.c:
2998         Use correct typenames.
2999
3000 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
3001
3002         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
3003         gulong as in GSignal.
3004
3005 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
3006
3007         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
3008         instances of GtkCellRenderer in code (all but dnd icon code).
3009         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
3010         there, and I can do multiple Cells per column.
3011
3012         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
3013
3014         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
3015         when model was unreffed prior to removing the row reference.
3016
3017 2001-05-25  Havoc Pennington  <hp@redhat.com>
3018
3019         * gtk/gtkiconfactory.c: fix so that default icons are created if 
3020         you call gtk_stock_list_ids()
3021
3022         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
3023         in list
3024
3025 2001-05-25  Havoc Pennington  <hp@redhat.com>
3026
3027         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
3028         set can render without falling back to missing image icon
3029
3030         * gtk/gtktextview.c (gtk_text_view_size_request): request full
3031         size of text, instead of random values
3032
3033         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
3034         size of tree view, instead of random values
3035
3036         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
3037         image in an appropriate size
3038
3039         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
3040         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
3041
3042         Throughout: fix GTK_STOCK_BUTTON_ instances
3043         
3044         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
3045         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
3046         Add a bunch of new stock items/icons
3047
3048         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
3049         new function, convenience for inserting columns with a data func
3050
3051         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
3052         (_gtk_icon_factory_list_ids): use list of all factories to
3053         generate a list of all known IDs
3054
3055         * gtk/gtkstock.c (gtk_stock_list_ids): replace
3056         gtk_stock_list_items() with a function that returns all IDs known
3057         including those for GtkIconFactory.
3058
3059 2001-05-25  Hans Breuer  <hans@breuer.org>
3060
3061         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
3062         work -> check boxes and radio buttons are drawn now, even on win9x.
3063         Improved line settings a bit, still no clue how to get really dotted
3064         lines on win9x, on NT it's PS_ALTERNATE.
3065
3066         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
3067         GDK_HINT_MIN_SIZE as well
3068
3069         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
3070
3071         * gtk/gtk.def : updated
3072
3073         * gtk/gtktreeprivate.h : change column_drop_func to be a function
3074         pointer not a function pointer pointer
3075
3076         * tests/testdnd.c : include <stdlib.h> for putenv prototype
3077
3078         * tests/testsocket.c : made it compile on win32 again
3079
3080         * tests/makefile.msc : one more test-app uses prop-editor.obj
3081
3082 2001-05-22  Havoc Pennington  <hp@pobox.com>
3083
3084         * gtk/gtkbin.c (gtk_bin_get_child): New function
3085
3086 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
3087
3088         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
3089         to ignore when doing compose processing.
3090
3091 2001-05-22  Joe Shaw  <joe@ximian.com>
3092
3093         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
3094         Simplify as suggested by Havoc. Just get the last iter and work
3095         backward to the tag instead of getting a line and working back from
3096         there. Fixes passing in an invalid offset to
3097         iter_init_from_byte_offset().
3098
3099 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
3100
3101         * gtk/gtktreeview*.h: 
3102         * gtk/gtkcell*.h:
3103         * gtk/gtk*store.h:
3104         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
3105         macros to all objects.
3106
3107 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
3108
3109         * gtk/gtkcellrenderertext.c
3110         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
3111         with very large (TM) amounts of text.  May be moved to
3112         GtkCellRenderer in the future, though I'm not sure it wants to be
3113         this accessible.
3114
3115         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
3116         More sanity brought to this class.  I like it.
3117
3118         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
3119         case.  Kids, don't try this at home.
3120
3121         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
3122         convenience function.
3123
3124         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
3125
3126 2001-05-21  Alexander Larsson  <alexl@redhat.com>
3127
3128         * gtk/gtkfontsel.c:
3129         Added properties. Based on patch by Lee Mallabone.
3130
3131         * gtk/gtkruler.c:
3132         * gtk/gtkhruler.c:
3133         * gtk/gtkvruler.c:
3134         * gtk/gtktext.c:
3135         * gtk/gtktextview.c:
3136         Converted GtkArg to GParam. Based on patches by John Margaglione.
3137
3138         * tests/Makefile.am:
3139         * tests/testtext.c:
3140         Add a property editor to testtext.
3141         
3142 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
3143
3144         * gtk/gtk{h,v,}paned.c: Only show the separator if 
3145
3146         * configure.in: Fixed reversed conditional causing all image
3147         libraries to be linked in.
3148
3149 2001-05-21  Joe Shaw  <joe@ximian.com>
3150
3151         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
3152         that top_y needs to be >= 0.
3153
3154 2001-05-11  Havoc Pennington  <hp@pobox.com>
3155         
3156         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
3157         losing connection to the X server.
3158
3159 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
3160
3161         * configure.in: Start checks for X from pangox/pangoxft
3162         CFLAGS to avoid duplicate libraries.
3163
3164         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
3165
3166         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
3167         to include gobject.
3168         
3169 2001-05-18  Alexander Larsson  <alexl@redhat.com>
3170
3171         * gtk/gtkspinbutton.c:
3172         Convert GtkArgs to GParams. Based on patch by John Margaglione.
3173         Also do size request reasonable for MAXDOUBLE. Previously it printed
3174         the limits to a buffer and overran it. Instead do it using log10() and
3175         limit the width to 10 digits.
3176         
3177         * gtk/gtkwidget.c (gtk_widget_get_property):
3178         Correctly handle setting the parent property to NULL.
3179
3180 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
3181
3182         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
3183         style attributes even if the widget isn't realized.
3184
3185         * demos/gtk-demo/main.c: Use a slightly smaller font.
3186
3187 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
3188
3189         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
3190         This is something that only a widget writer would ever want
3191         to change.
3192
3193         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
3194         gtk_signal_emit_by_name().
3195
3196         * gtk/gtkviewport.c: Fix some warnings.
3197
3198         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
3199         allowing the requisitions of multiple widgets to be grouped
3200         together.
3201
3202         * tests/testgtk.c: Add GtkSizeGroup test
3203
3204         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
3205
3206         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
3207         warnings.
3208
3209         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
3210
3211 2001-04-28  Martin Baulig  <baulig@suse.de>
3212
3213         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
3214         to gtk_image_menu_item_set_icon() and made it work if there's already
3215         an image.
3216         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
3217         (gtk_image_menu_item_new_with_label): New function.
3218
3219 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
3220
3221         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
3222         highlighting code!!!!  The result is okay so long as you don't try
3223         to stress it.  It also highlights a bug in the TextView so it's in
3224         an unproportional font right now until it's fixed.
3225
3226         *demos/gtk-demo/*.c: Clean up code a bit to make it
3227         ugly-parser(TM) friendly. (-:
3228
3229 2001-05-17  Joe Shaw  <joe@ximian.com>
3230
3231         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
3232         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
3233         if it is only partially onscreen.
3234
3235 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
3236
3237         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
3238         not by characters.
3239
3240         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
3241         are not zero or one; that is, when graphemes of multiple characters
3242         are involved.
3243
3244         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
3245         FIXME.
3246
3247 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
3248         
3249         * gtk/gtkbbox.c:
3250         Add properties, based on patch by Lee Mallabone.
3251
3252         * gtk/gtknotebook.c:
3253         * gtk/gtktoolbar.c:
3254         Convert from GtkArg to GParam, based on patch by John Margaglione.
3255         
3256         * gtk/gtkhscale.c:
3257         * gtk/gtkvscale.c:
3258         * gtk/gtkhscrollbar.c:
3259         * gtk/gtkvscrollbar.c:
3260         * gtk/gtkrange.c:
3261         Move adjustment property to GtkRange.
3262
3263         * gtk/gtklabel.c:
3264         Setup mnemonics on property changes
3265
3266         * gtk/gtkwidget.c (gtk_widget_get_property):
3267         GdkExtensionMode is an enum, not a flag. Set it with
3268         g_value_set_enum ().
3269
3270         * tests/prop-editor.c:
3271         Better propery editor.
3272
3273         * tests/testgtk.c:
3274         Add new property test. Pass zero to the property editor to
3275         get properties from all derived types.
3276         
3277 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
3278
3279         * autogen.sh (have_automake): Require libtool-1.4,
3280         automake-1.4p1.
3281
3282         * acinclude.m4: Remove libtool macros.
3283
3284         * gdk-pixbuf/Makefile.am: Add dependencies to loade
3285         modules.
3286
3287         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
3288         for libgdk.
3289
3290         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
3291         libgdk.la for libgtk.
3292
3293         * modules/input/Makefile.am: Make modules have full
3294         dependencies.
3295
3296 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
3297
3298         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
3299         #54699 where paths weren't being checked for correctness.
3300
3301 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
3302
3303         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
3304         in any order you wan, whether or not the column is added to the
3305         tree, or the tree is realized.  Yay!
3306
3307         * gtk/gtktreeviewcolumn.c
3308         (gtk_tree_view_column_setup_sort_column_id_callback): handle
3309         sorting columns a lot saner
3310
3311         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
3312         new function to actually set wether or not a column is
3313         reorderable.
3314
3315         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
3316         if we have 'em.
3317
3318         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
3319         Fix nasty bug where we were showing the button just before
3320         realizing it.  As a result, the parent window was
3321         tree_view->window instead of tree_view->priv->header_window.
3322
3323         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
3324         to let you easily reorder a list or tree.
3325
3326 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
3327
3328         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
3329         from args to properties.
3330
3331 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
3332
3333         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
3334         from args to properties. (#51957)
3335
3336         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
3337         calls to after ->set_property call.
3338
3339 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
3340
3341         * tests/prop-editor.c: Block against redundant changes.
3342
3343         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
3344         properties.
3345
3346 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
3347
3348         * gdk/gdkpixmap.h: Remove creative formatting.
3349
3350 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
3351
3352         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
3353         property API. (#51669)
3354
3355         * gtk/gtkscale.c: Patch from John Margaglione converting to
3356         property API. (#51891)
3357
3358         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
3359         to property API. (#50985)
3360
3361 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
3362
3363         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
3364         buffering state across expose event, so we still call end_paint().
3365
3366 2001-05-11  Alexander Larsson  <alexl@redhat.com>
3367
3368         * gtk/gtkhsv.c (paint_triangle):
3369         Expose the ring in the triangle at the correct place when
3370         exposing just a part of the triangle.
3371
3372         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
3373         Return FALSE, or window focusing will not work.
3374
3375 2001-05-11  Havoc Pennington  <hp@pobox.com>
3376
3377         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
3378         #54144
3379
3380         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
3381         bug #54330
3382
3383 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
3384
3385         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
3386         propagate exposes to NULL child.
3387
3388         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
3389         against not having one of the scrollbars.
3390
3391         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
3392         we don't keep a mnemonic window if we have no mnemonic installed.
3393
3394 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
3395
3396         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
3397         it has the _important_ side effect of initializing a class.
3398
3399 2001-05-10  Alexander Larsson  <alexl@redhat.com>
3400
3401         * gdk/linux-fb/gdkprivate-fb.h:
3402         Make sure you can compile out the implementation/wrapper assert
3403         macros.
3404
3405         * gdk/linux-fb/gdkdrawable-fb2.c:
3406         Check implementation/wrappers, initialize type for pixmap dummys.
3407
3408         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
3409         Hide the cursor if reading from the screen.
3410
3411         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
3412         Fix sign bug in tiling code.
3413
3414         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
3415         Handle background pixmaps.
3416
3417 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
3418
3419         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
3420         function to let user control where columns are dragged.
3421
3422         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
3423         Escape is pressed.
3424
3425 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
3426
3427         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
3428         "columns_changed" signal.
3429         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
3430         motion code to draw arrows to the side if indicator is outside the
3431         widget.
3432         (gtk_tree_view_map_expanded_rows): Implement.
3433
3434 2001-05-07  Alexander Larsson  <alexl@redhat.com>
3435
3436         * demos/testpixbuf-save.c: 
3437         * demos/testpixbuf-drawable.c:
3438         Include gdkfb.h on linux-fb.
3439
3440 2001-05-07  Alexander Larsson  <alexl@redhat.com>
3441
3442         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
3443         New function for getting toplevel window at position.
3444         (gdk_drag_find_window): Use get_toplevel_window () instead
3445         of gdk_window_get_pointer(). (gdk_drag_status): Use
3446         correct context for getting window.
3447
3448         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
3449         g_strdup the atom name.
3450
3451         * gdk/linux-fb/gdkwindow-fb.c:
3452         Costmetic fix.
3453
3454         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
3455         Add code for changing cursor on linux-fb backend (same as
3456         win32).
3457
3458 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
3459
3460         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
3461         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
3462         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
3463         report was not for the development branch of GTK+, but it applies
3464         anyways).
3465
3466 2001-05-04  Havoc Pennington  <hp@redhat.com>
3467
3468         * configure.in: fix some shell typos
3469
3470         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
3471
3472         * gtk/gtkimage.c: handle animations
3473
3474         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
3475         border_width * 2, not just border_width
3476
3477         * gtk/gtkscale.c: add "format_value" signal to allow people
3478         to override the way values are drawn.
3479         (gtk_scale_get_value_size): fix width/height mistake,
3480         and compute size from actual displayed text, not 
3481         from made-up text.
3482
3483         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
3484         signal registration
3485
3486         * tests/testtext.c: Add "Remove all tags" menu item for testing
3487
3488         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
3489
3490         * demos/gtk-demo/main.c (main): add hack so we can find modules
3491         without installing gtk
3492
3493         * demos/gtk-demo/textview.c (insert_text): demo font scaling
3494
3495         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
3496         factor)
3497         (gtk_cell_renderer_text_set_property): remove some bogus
3498         g_object_notify
3499
3500         * gtk/gtktexttag.c: add "scale" property which is a font scaling
3501         factor
3502
3503         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
3504         to layout
3505
3506         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
3507         gtk_text_iter_is_first
3508
3509 2001-01-06  Hans Breuer  <hans@breuer.org>
3510
3511         * gdk/gdk.def : updated exports
3512
3513         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
3514         gdk won't compile anymore
3515  
3516         * gdk/win32/gdkevents-win32.c : initialize ret_val when
3517         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
3518         Improved gdk_flush () to not only do pending drawing operations
3519         but also process all currently pending events. This should make
3520         the behaviour more similar to the X11 version.  
3521
3522         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
3523         option needs to be set even if there is no GDK_GC_BACKGROUND.
3524         (gdk_win32_hdc_get) : use predraw_set_background () independent
3525         of value_mask. This allows to draw dashed lines leaving the original
3526         background intact.
3527
3528         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
3529         after processing, because we can't reuse it as the X11 version does.
3530
3531         * gtk/gtk.def : updated exports
3532
3533         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
3534         would like to get rid of this file again, and use straight
3535         makefile.msc again, as the other Gtk+ subdirs do)
3536
3537         * test/makefile.msc (new file) : build the test apps here
3538
3539 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
3540
3541         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
3542         strike-through setting
3543         (gdk_draw_layout_line_with_colors): Render strike-through
3544
3545 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
3546
3547         * Release 1.3.5
3548
3549         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
3550
3551         * NEWS: Updated
3552
3553         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
3554         Makefile breakage.
3555
3556 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
3557
3558         * demos/gtk-demo/images.c (progressive_timeout): Fix
3559         typo in filename.
3560
3561         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
3562         out FIXME warning; just too annoying.
3563
3564 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
3565
3566         * gdk/linux-fb/gdkcolor-fb.c:
3567         Better error messages.
3568
3569         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
3570         Initialize abs_x and abs_y.
3571         
3572         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
3573         Correct handling of stipple offset.
3574
3575         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
3576         Treat directcolor framebuffers as truecolor.
3577         
3578 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
3579
3580         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
3581         dependency on Atk for accessibility support.
3582
3583         * configure.in **/Makefile.am: Major reworking of substituted
3584         variables for CFLAGS/LIBS to make a lot more sane and 
3585         keep the the compile/link lines a bit shorter.
3586
3587         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
3588
3589 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
3590
3591         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
3592         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
3593         use _gtk_boolean_handled_accumulator.
3594
3595 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
3596
3597         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
3598         to fix things so clicking inside selection leaves cursor
3599         at point where clicked. (#50324)
3600
3601         * gtk/gtksettings.c (gtk_settings_class_init): Restore
3602         sane value for default double click time.
3603
3604         * tests/testtext.c (test_init): Really path to input modules.
3605
3606 2001-05-03  Sven Neumann  <sven@convergence.de>
3607
3608         * demos/testpixbuf-save.c: include target-specific headers as
3609         done in testpixbuf-drawable.c
3610
3611 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
3612
3613         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
3614         new_text_length appropriately when we run into the 
3615         size limit for the entry. (#53445, reported by Jeff Franks)
3616
3617         * tests/testgtk.c (create_entry): Remove most of the
3618         property toggle buttons. Replace with a "Props" button
3619         that brings up a property editor.
3620
3621         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
3622         Split the property editor code out for reuse, improve.
3623
3624 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
3625
3626         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
3627         trap errors around calls to XSetInputFocus since we have
3628         no way of knowing reliably whether we are viewable or
3629         not. (#53947)
3630
3631 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
3632
3633         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
3634         fix bug in dropping columns.  Moving columns now basically works
3635         modula some fine tuning.
3636
3637 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
3638
3639         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
3640         autoscroll support.  It mostly works, but could use some fine
3641         tuning.
3642         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
3643         Actually move the column.
3644
3645 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
3646
3647         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
3648           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
3649           New default theme! A slighly improved version of the 2.0 Raleigh
3650           theme, with Windows-esque focus/drawing default. 
3651           (GtkWidget::interior_focus defaults to TRUE.)
3652
3653         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
3654
3655 2001-04-30  Havoc Pennington  <hp@pobox.com>
3656
3657         * tests/testtext.c (line_numbers_expose): fix to work with
3658         gtk_paint_layout change
3659
3660 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
3661
3662         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
3663           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
3664           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
3665           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
3666
3667         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
3668           with GtkWidget::interior_focus = TRUE better.
3669
3670         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
3671         ::default_outside_border for more flexibility.
3672
3673         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
3674         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
3675         change that had to be made with g_object_get.
3676
3677 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
3678
3679         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
3680         (gtk_tree_view_move_column_after): Clean up interface. 
3681
3682 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
3683
3684         * gtk/gtkpacker.h:
3685         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
3686          to gtkenum.h.
3687
3688         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
3689         handled in switch).
3690
3691         * gtk/Makefile.am:
3692         (gtk.defs): generate enum portions with  glib-mkenums.
3693         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
3694         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
3695         
3696         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
3697         addition.
3698
3699         * docs/Changes-2.0.txt: keep a note on signal handlers now
3700         not getting emitted during the emission they were connected within.
3701
3702 2001-04-28  Havoc Pennington  <hp@pobox.com>
3703
3704         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
3705
3706 2001-04-24  Havoc Pennington  <hp@redhat.com>
3707
3708         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
3709         (gtk_text_layout_move_iter_to_next_line): fix these two for
3710         invisible text, lots of other stuff still hosed.
3711
3712         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
3713         new function, replaces the get/set palette stuff. This function 
3714         is intended for use by libgnomeui which should set the hook to a
3715         thing which sets the palette in GConf, and we need the
3716         GConf-to-xsettings proxy which will result in the change being
3717         propagated back to the GTK app.
3718
3719         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
3720         about unusable signals that it may be because the signal has 
3721         parameters.
3722
3723         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
3724         style, otherwise gtkrc.c won't know to create a new GtkStyle for
3725         it.
3726         (gtk_widget_modify_color_component): call
3727         gtk_widget_modify_style() so the rc style will get copied.
3728         (gtk_widget_modify_font): ditto
3729
3730         * gtk/gtkrc.c: make a couple variables static
3731
3732         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
3733         help button by default, since it does nothing
3734
3735         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
3736         around with UI
3737
3738         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
3739         so we can have tooltips
3740
3741         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
3742         can have tooltips
3743
3744         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
3745         GDK_ENABLE_BROKEN, because its memory behavior is completely
3746         hosed.
3747
3748         * gtk/gtknotebook.c: remove key press handler, replace with
3749         binding set, add numeric keypad support
3750
3751         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
3752
3753         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
3754
3755         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
3756         addition to plain Delete
3757
3758         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
3759         GDK_KP_Enter in addition to GDK_Return
3760
3761         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
3762         activate on entry instead of key press
3763         (gtk_font_selection_on_clist_key_press): get
3764         rid of this signal handler, not needed with new font sel.
3765
3766         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
3767         no-longer-needed emit_stop_by_name(), just return TRUE
3768
3769         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
3770         cruft, this widget is no longer focusable.
3771
3772         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
3773         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
3774         move_slider action signal, add binding set for vscale/hscale, in
3775         the process support numeric keypad
3776
3777         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
3778         make GDK_Return and GDK_KP_Enter activate the entry via 
3779         binding set, instead of hardcoded.
3780
3781 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
3782
3783         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
3784         code.  Some documentation added.
3785
3786 2001-04-27  Havoc Pennington  <hp@redhat.com>
3787
3788         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
3789
3790         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
3791
3792         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
3793         line/para separators
3794         (gtk_entry_create_layout): set single paragraph mode on the layout
3795
3796         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
3797         spacing between the image and label; instead, inside a button box 
3798         the button will get extra space that will go there, but if people 
3799         configure button box for 0 chubbiness, then there's no spacing.
3800
3801         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
3802         and min/max size style properties, so people can tune their
3803         chubbiness.
3804
3805         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
3806         functions
3807
3808         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
3809         space_style, and button_relief into style properties, remove
3810         functions for setting them
3811         
3812         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
3813         it back down
3814
3815         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
3816         types from gtk_widget_style_get
3817
3818         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
3819         with a style property.
3820
3821         * gdk/x11/gdkevents-x11.c: namespace the settings
3822
3823         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
3824
3825         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
3826         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
3827         be used. Also, translate doc strings for settings. Also, namespace
3828         the double-click-time property. Also, remove bell properties crap.
3829
3830 2001-04-27  Sven Neumann  <sven@gimp.org>
3831
3832         * Makefile.am: before creating links, check if pkg-config files
3833         exist for the default target. Otherwise link to the pkg-config files
3834         that got installed with this build.
3835
3836 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
3837
3838         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
3839         dragging code.  Revealed some (potential) GdkWindow bugs.
3840
3841         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
3842         _gdk_window_init_position to the end of reparent to fix the case
3843         of reparenting when new_x != old_x and new_y != old_y.
3844
3845 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
3846
3847         * gtk/gtkentry.c (strstr_len): Fix optimization that
3848         was correct for the use here, but completely incorrect
3849         in general.
3850
3851 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
3852
3853         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
3854         until patch adding gtk_window_set_size() is recommitted. 
3855
3856         * **Makefile.am configure.in gdk/x11/gdkim-11.c
3857           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
3858           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
3859           (#10784)
3860
3861 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
3862
3863         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
3864         window == NULL in a number of cases.
3865
3866         * tests/testdnd.c: Set module path for gdk-pixbuf.
3867
3868 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
3869
3870         * gtk/Makefile.am xembed.h: File containing #defines
3871         for XEMBED protocol.
3872
3873         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
3874
3875         - Change protocol from old plug/socket specific protocol
3876           to XEMBED draft
3877         - Various fixes to work with GTK+-2.0
3878
3879         Still quite a bit of work to do here to handle initiation
3880         from the socket side (as specified by XEMBED), to handle
3881         the more advanced features of XEMBED, and to figure out
3882         a good way to handle same-app embedding with less overhead
3883         than using full XEMBED.
3884
3885 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
3886
3887         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
3888         track of whether the toplevel has the focus; only send
3889         focus-in events to the focus widget when the window
3890         actually has the focus.
3891
3892 2001-04-25  Havoc Pennington  <hp@pobox.com>
3893
3894         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
3895         were still in the header
3896
3897 2001-04-24  Alexander Larsson  <alexl@redhat.com>
3898
3899         * gtk/gtkclist.[ch]:
3900         * gtk/gtkctree.c:
3901         When there is a row highlighted for D'n'D it must alse
3902         be painted hightlighted on exposes. Otherwise exposes from
3903         the icon being dragged will mess up the hightlight.
3904
3905         * gtk/gtkfontsel.c:
3906         Don't recenter selected font when exposing the font family
3907         clist. This means you can now actually scroll the font family
3908         list.
3909
3910         * gtk/gtknotebook.c:
3911         Fix focus movement on scrolling tabs that are placed on the left
3912         and right.
3913
3914 2001-04-21  Havoc Pennington  <hp@pobox.com>
3915
3916         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
3917         empty/invisible lines.
3918
3919         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
3920         (gtk_text_iter_set_visible_line_index): new functions to set
3921         indexes excluding invisible text
3922
3923         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
3924         index
3925
3926         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
3927         (gtk_text_iter_get_visible_line_offset): new functions to 
3928         get indexes excluding invisible text
3929
3930         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
3931         bunch of extra padding that served no purpose
3932
3933         * gtk/gtkdialog.c: Make all the spacings configurable via style
3934         properties, for chubbiness configuration in themes
3935
3936         * tests/testtext.c: fix path to the immodules.
3937         
3938 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
3939
3940         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
3941         got munched by #endif.
3942
3943         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
3944
3945         * gtk/gtktreeview.c: Refactored code to clean up a number of
3946         events.
3947
3948         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
3949         values to make consistent with other functions.  Spotted by Jeff
3950         Franks <jcf@tpg.com.au>.
3951
3952         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
3953         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
3954
3955 2001-04-23  Sven Neumann  <sven@gimp.org>
3956
3957         * gtk/Makefile.am
3958         * gtk/gtkplug.c
3959         * gtk/gtksocket.c: on request of Owen, reverted my last change 
3960         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
3961
3962 2001-04-23  Sven Neumann  <sven@gimp.org>
3963
3964         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
3965         compile for non-X11 targets again
3966
3967 2001-04-20  Alexander Larsson  <alexl@redhat.com>
3968
3969         * gtk/gtkcolorsel.[ch]:
3970         API Change. Take GdkColor arguments instead of gdouble *.
3971         Leave the old gtk_color_selection_set_color for compatibility,
3972         but marked deprecated.
3973         Do correct rounding when converting RGB <-> HSV.
3974         
3975         * gtk/gtkcolorseldialog.c:
3976         * tests/testgtk.c:
3977         Use new GtkColorSelection API.
3978
3979         * gtk/gtkhsv.c:
3980         Fix problem selecting colors in triangle when Hue is 330.
3981         Fix some black dots around the HSB triangle.
3982         
3983         * gtk/gtkfilesel.c:
3984         return FALSE from the focus_in_event handler to fix focus problems.
3985
3986 2001-04-18  Havoc Pennington  <hp@redhat.com>
3987
3988         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
3989         set, so keybindings are configurable    
3990         (gtk_window_activate_default): Change to activate the focus widget
3991         instead if there's a focus widget, to be consistent with the
3992         behavior that previously existed in key_press_event
3993
3994 2001-04-18  Havoc Pennington  <hp@redhat.com>
3995
3996         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
3997
3998 2001-04-18  Havoc Pennington  <hp@redhat.com>
3999
4000         Close bug #50615:
4001         
4002         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
4003         the layout
4004
4005         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
4006
4007         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
4008
4009         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
4010         
4011         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
4012         to blue for base, in addition to bg
4013         
4014 2001-04-18  Havoc Pennington  <hp@redhat.com>
4015
4016         * tests/testgtk.c (create_image): allow shrinking the image window
4017         to test that we clip to allocation.
4018
4019         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
4020         #9845
4021
4022         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
4023
4024 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
4025
4026         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
4027         mode on shm segments to 0600. We'll see who complains.
4028
4029         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
4030         _gdk_windowing_window_destroy() AFTER recursing through
4031         children.
4032
4033         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
4034         testsocket_child on X.
4035
4036         * tests/testsocket[_child].c: Fix uses of
4037         gtk_window_get_default_accel_group().
4038
4039         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
4040
4041         * gdk/gdkimage.c: (gdk_image_get):
4042         Deal with the possibility that XGetImage() might return NULL.
4043         Allocate the GdkImagePrivate structure only after XGetImage()
4044         succeeds in order not to dereference a NULL ximage pointer.  This
4045         prevents a core dump when XGetImage() fails - which is unlikely,
4046         but can happen due to race conditions accessing the geometries of
4047         drawables.  An x error will still be triggered, but the gdk image
4048         wrapper at least wont seg fault.
4049         
4050 2001-04-18  Havoc Pennington  <hp@redhat.com>
4051
4052         * gtk/gtkimage.c: fix to properly queue resizes when the image is
4053         set
4054
4055         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
4056         if the insertion point isn't editable
4057
4058         * demos/gtk-demo/images.c: Added a GtkImage demo
4059
4060         * demos/gtk-demo/drawingarea.c: drawing area demo
4061         
4062         * demos/gtk-demo/menus.c (create_menu): cleanups
4063
4064 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
4065
4066         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
4067           gdk/x11/gdkevents-x11.c: Introduce an extra child
4068         of toplevel windows that serves to hold the focus to
4069         avoid events being delivered to embedded windows.
4070
4071         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
4072         some extra variables to clean up code and reduce the
4073         number of casts.
4074
4075         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
4076         guint for 1 bit bit fields, not gboolean.
4077
4078 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
4079
4080         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
4081         not TRUE. (Fixes #52925)
4082
4083 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
4084
4085         * Released 1.3.4
4086
4087         * NEWS: Updated
4088
4089         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
4090         use GTK_TYPE_ENUM.
4091
4092 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
4093
4094         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
4095
4096         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
4097         names to compatibility #defines so docs work.
4098
4099         * gtk/gtkenums.h: Remove GtkMenuFactoryType
4100
4101         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
4102
4103         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
4104
4105         * tests/testgtkrc: No magenta cursors, please.
4106
4107         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
4108
4109         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
4110         
4111 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
4112
4113         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
4114         grabs, since they are no longer necessary.
4115
4116         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
4117         by signal_connect() and call gtk_button_pressed() rather
4118         than signal_connect_after().
4119
4120         * tests/testgtk.c: Restore radio menu items to combos 
4121         since they'll look OK with Raleigh, and it is easier
4122         than finishing the process of removing them that was
4123         started earlier.
4124
4125 2001-04-16  Hans Breuer  <hans@breuer.org>
4126
4127         * gdk/gdk.def :
4128         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
4129
4130         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
4131         we are interested in the functions return value not the function address
4132         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
4133
4134         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
4135
4136 2001-04-14  Hans Breuer  <hans@breuer.org>
4137
4138         * gdk/gdk.def :
4139         * gdk/makefile.msc : updated
4140
4141         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
4142         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
4143         (the testgtk::text backgound pixmap is drawn again)
4144         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
4145         Win32 Pango change
4146         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
4147
4148         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
4149         Not sure if the returned settings have the right unit, because I couldn't
4150         find any docs for the X version ...
4151
4152         * gtk/gtk.def :
4153         * gtk/makefile.msc.in : updated
4154
4155 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
4156
4157         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
4158         wording problems. (Compared to version from Johannes Stezenbach to
4159         check correctness.)
4160
4161 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
4162
4163         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
4164         this to compile.
4165
4166 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
4167
4168         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
4169         not pixbufpos.
4170
4171         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
4172
4173         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
4174         are unsigned insts, therefore use g_value_set_uint.
4175         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
4176
4177 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
4178
4179         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
4180
4181         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
4182         GTK_TYPE_STRING.
4183
4184         * gtk/gtktreeview.c: New functions to allow initial column
4185         dragging work.
4186
4187         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
4188
4189         * tests/testtreefocus.c: give dave some love.
4190
4191         * tests/testtreesort.c: Modify test to check really long samples.
4192
4193 2001-04-11  Alexander Larsson  <alexl@redhat.com>
4194
4195         * gtk-2.0.m4: Pass pkg-config options
4196         before the other args so it works even if
4197         POSIXLY_CORRECT is set.
4198
4199 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
4200
4201         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
4202         0, interface 0).
4203
4204 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
4205
4206         * gtk/gtkcalendar.c (gtk_calendar_button_press):
4207         check for action_func != NULL
4208
4209 2001-04-04  Sven Neumann  <sven@gimp.org>
4210
4211         * tests/testgtk.c (test_init): corrected path to gtk.immodules
4212
4213 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
4214
4215         * Released Gtk+-1.3.3.
4216
4217 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
4218
4219         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
4220
4221 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
4222
4223         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
4224         files to/from source dir. (if we don't stay in builddir, we
4225         can't reach make-inline-pixbuf.
4226
4227         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
4228         deps.
4229
4230         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
4231         ages 0).
4232
4233 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
4234
4235         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
4236         moved to the GtkTreeSortable interface.
4237
4238         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
4239         Make more efficient (fixes #50262).
4240
4241 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
4242
4243         * NEWS: Updated.
4244
4245         * configure.in: Remove support for uninstalled glib.
4246
4247         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
4248         so as not to stop emission.
4249
4250         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
4251         is no longer supported.
4252
4253         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
4254         into tests, change build order to build modules before
4255         gtk/.
4256
4257         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
4258         to here.
4259
4260 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
4261
4262         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
4263         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
4264         GPatternSpec. this is actually unlikely to cause breakage in
4265         third-party apps since except for gle, pretty much ever caller
4266         passes NULL here.
4267
4268         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
4269
4270         * *.c: use g_pattern_*() API.
4271
4272         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
4273
4274         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
4275         directions aren't passed in.
4276
4277         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
4278         functionality to be usable from gtkstyle.c as well, give precedence
4279         for conversion to user-supplied parsers.
4280         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
4281
4282         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
4283         _gtk_settings_parse_convert() for rcporperty value conversion.
4284
4285 2001-04-03  Alexander Larsson  <alexl@redhat.com>
4286
4287         * gdk/linux-fb/gdkevents-fb.c:
4288         Add empty gdk_setting_get().
4289
4290 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
4291
4292         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
4293         variable names.
4294         
4295         * gtk/makeenums.pl: touch this so enum files get remade.
4296
4297 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
4298
4299         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
4300         work again when not sorted.
4301
4302         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
4303         and "expand_row" signal, closing bug 52578.
4304
4305         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
4306         support.
4307
4308         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
4309         support.
4310
4311 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
4312
4313         * gdk/gdkevents.h: Add GdkEventSetting event for notification
4314         of changes to system settings, gdk_setting_get() to retrieve
4315         a single system setting.
4316
4317         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
4318         to the draft XSETTINGS mechanism.
4319
4320         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
4321         XSETTINGS.
4322
4323         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
4324         of GDK settings changes to the GtkSettings object.
4325
4326         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
4327         double-click-timeout property to GDK.
4328
4329         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
4330         Define GDK boxed types here.
4331
4332         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
4333         gdk/gdkenumtypes.[ch] for enum definitions.
4334
4335         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
4336         * gtk/gtk-boxed.defs: Comment out GDK types
4337         * gtk/gtktypeutils.h: Remove GDK types
4338         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
4339
4340 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
4341
4342         * Applied patch from Ron Steinke to add signal accumulators
4343         so that signals with the convention 'TRUE return means
4344         handled' stop emission on a TRUE return.
4345
4346         * gtk/gtkmain.[ch]: Add private accumulator 
4347         _gtk_boolean_handled_accumulator, used throughout GTK+.
4348         
4349         * gtk/gtkspinbutton.c: Add accumulator for ::output.
4350
4351         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
4352         
4353         * gtk/gtkwidget.c: Add accumulators for event signals,
4354         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
4355         for ::mnemonic-activate.
4356
4357         * gtk/gtkwindow.c: Add accumulator for ::frame_event
4358
4359 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
4360
4361         * gtk/gtkwidget.c: Add missing include.
4362
4363 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
4364
4365         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
4366         marshaller.
4367
4368         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
4369         "changed" signal to "range_changed".
4370
4371         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
4372         removing a tree from one model would remove all trees from that
4373         model.
4374         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
4375         changed signal instead.
4376
4377 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
4378
4379         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
4380         chaining up to parent impl, since we have a INPUT_ONLY
4381         window.
4382
4383         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
4384         foreground color for the cursor.
4385
4386 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
4387
4388         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
4389         param spec when caching property values, since we unref it
4390         later when we free the style.
4391
4392         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
4393         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
4394
4395 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
4396
4397         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
4398         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
4399         stupidity.
4400
4401 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
4402
4403         [ First pass at adding style properties. Still needs some definite
4404         fine-tuning. ]
4405
4406         * gtk/gtkbutton.c: Add ::default_spacing style property.
4407          
4408         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
4409         ::indicator_spacing style properties.
4410
4411         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
4412         style properties.
4413
4414         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
4415         rather than a normal property.
4416
4417         * gtk/gtkwidget.c: Add an ::interior_focus style property to
4418         draw focus inside buttons, in the Windows/Java Metal/etc. style.
4419
4420         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
4421         Honor ::interior_focus.
4422         
4423         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
4424         TRUE.
4425
4426         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
4427         Add ::slider_width, ::trough_border, ::stepper_size,
4428         ::stepper_spacing style properties.
4429
4430         * gtk/gtkscale.[ch] Add ::slider-length style property.
4431
4432 2001-04-02 Alexander Larsson   <alexl@redhat.com>
4433
4434         * gdk/linux-fb/gdkwindow-fb.c:
4435         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
4436         warnings that were spewed on startup.
4437
4438         * gtk/gtkwindow-decorate.c:
4439         gtk_window_reposition -> _gtk_window_reposition
4440
4441 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
4442
4443         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
4444         Add boxed type for GtkRequistion. Use it for ::size-request.
4445
4446         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
4447         Add a new GtkBorder structure useful for geometry properties
4448         for widgets. Add corresponding GTK_TYPE_BORDER.
4449         
4450         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
4451         Support automatic parser selection like
4452         gtk_settings_install_property_parser().
4453
4454         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
4455         functionality for use by gtk_widget_class_install_style_property.
4456         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
4457
4458 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
4459
4460         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
4461         g_param_spec_unichar(). 
4462
4463 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
4464
4465         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
4466         _NET window managers.
4467
4468         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
4469
4470 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
4471
4472         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
4473         bad needs to be nuked, not just deprecated.
4474
4475         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
4476         gtk_widget_popup().
4477
4478         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
4479         
4480         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
4481         widget.
4482         
4483         * docs/Changes-2.0.txt: updates.
4484         
4485 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
4486
4487         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
4488         for (i = 0; i < 100; i ++)
4489           g_print ("I will confirm it compile before committing\n");
4490
4491 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
4492
4493         * gtk/gtktreestore.c: Initial work on implementing the
4494         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
4495
4496 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
4497
4498         * gtk/gtkwidget.c: fixed a bunch of notifications, added
4499         reference counts around emissions where the widget is used afterwards.
4500         added freeze/thaws around multiple properties being notified.
4501         (_gtk_widget_get_aux_info): cleanups.
4502         
4503         * gtk/gtksettings.c (gtk_settings_install_property): provide
4504         default parsing functions for gdkcolor, enums and flags.
4505
4506         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
4507         applied by owen.
4508         backed out gtk_window_get_location(), gtk_window_set_location(),
4509         gtk_window_get_size() and gtk_window_set_size(), these
4510         have to be sorted out wrg x/y/width/height/default_with/default_height
4511         properties.
4512         kept a flag in GtkWindowGeometryInfo to handle user
4513         resetting default sizes.
4514         cleaned up ZVT comments.
4515         bunch of assorted bug fixes, notification fixes.
4516         (_gtk_window_reposition): make this a really internal function.
4517         
4518         * gtk/testgtk.c: fixups.
4519         
4520 2001-03-31  Hans Breuer  <hans@breuer.org>
4521
4522         * config.h.win32.in : disable USE_MMX for msvc build cause
4523         the assembler doesn't fit and is out of my scope. Disable
4524         USE_GMODULE for msvc build as wel. The right way to share
4525         binaries on win32 would be to use libtiff.dll etc. To reduce
4526         installation hassles IMO it's better to include all fileformats
4527         builtin to gdk-pixbuf
4528
4529         * gdk-pixbuf/makefile.msc : new file
4530
4531         * gdk/gdk.def : updated
4532
4533         * gdk/win32/gdkevents-win32.c : don't erase the background if
4534         .no_bg is set. It improves the scrolling (e.g. of testgtk main
4535         buttons
4536         * gdk/win32/gdkgeometry-win32.c : added comment about the above
4537
4538         * gdk/win32/gdkwindow-win32.c : added three new functions like
4539         the X version. Only one is implemented, because the other two
4540         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
4541         be default behaviour on win32 anyway ...
4542
4543         * gtk/gtk.def : updated
4544
4545         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
4546         from where it was built and add an additional rule to automagically
4547         build gtkmarshal.[hc]
4548
4549         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
4550         before array access for the current entry isn't finished
4551
4552         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
4553         use g_return_val_if_fail
4554
4555         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
4556         for the static array, but let the compiler calculate it. It
4557         makes me wonder if gcc isn't capable to catch bugs like this ...
4558
4559 2001-03-31  James Henstridge  <james@daa.com.au>
4560
4561         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
4562         constant "-1" in the aux info structure.
4563
4564 2001-03-30  Alexander Larsson  <alexl@redhat.com>
4565
4566         * gtk/gtkbutton.c (gtk_button_get_property):
4567         * gtk/gtklabel.c:
4568         Remove leaks.
4569         
4570         * gtk/gtkcontainer.c:
4571         * gtk/gtkhscale.c:
4572         * gtk/gtkhscrollbar.c:
4573         * gtk/gtklayout.c:
4574         * gtk/gtkmisc.c:
4575         * gtk/gtkprogress.c:
4576         * gtk/gtkprogressbar.c:
4577         * gtk/gtkrange.c:
4578         * gtk/gtktable.c:
4579         * gtk/gtkviewport.c:
4580         * gtk/gtkvscale.c:
4581         * gtk/gtkvscrollbar.c:
4582         * gtk/gtkwidget.c:
4583         Property patches, based on patches from John Margaglione and Lee Mallabone.
4584
4585 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
4586
4587         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
4588         adjustment. Cleaned redundant preconditions (spin != NULL). Added
4589         inline API function docs.
4590         (gtk_spin_button_new_with_range): New convenience constructor.
4591         (gtk_spin_button_set_increments): New adjustment helper.
4592         (gtk_spin_button_set_range): New adjustment helper.
4593
4594         * gtk/testgtk.c : added test of the new convenince constructor and
4595         value_changed signals.
4596
4597 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
4598
4599         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
4600         listen to the reorder signal.
4601
4602 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
4603
4604         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
4605         to get the aux info structure fo the widget.
4606
4607         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
4608         above function.
4609
4610         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
4611
4612         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
4613         to get the size of the window manager frame, basically the same
4614         code that gdk_window_get_root_origin() had
4615         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
4616
4617         * gtk/gtkwindow.c (gtk_window_set_default_size): use
4618         gdk_window_resize() if the window is realized and resizeable
4619
4620         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
4621         typo so that setting gravity works
4622
4623         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
4624         allocation if auto_shrink is on, even if the default size
4625         has not changed.
4626
4627         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
4628         g_return_if_fail
4629
4630 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
4631
4632         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
4633         reordering/sorting work.  Now pretty much works.
4634
4635         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
4636         reorder mostly work.  Still need to get the parity correct.
4637
4638         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
4639         signal, so I can listen for the sort_column_changed signal so I
4640         can change my "sort_indicator" property.  Cool.
4641
4642 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
4643
4644         [ Patch from Havoc Pennington, hp@redhat.com ]
4645
4646         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
4647         Add functions gdk_window_begin_resize_drag/begin_move_drag
4648         to start resizing or moving a toplevel window. This
4649         is done either using the _NET_WM_MOVERESIZE protocol,
4650         or, if that isn't present, by emulation.
4651
4652         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
4653         to export the above to GTK+-land.
4654
4655         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
4656         
4657         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
4658         Move this function into gdkwindow, since we need it
4659         when implementing fallback resizing.
4660
4661         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
4662         Fix typo when setting gravity.
4663
4664         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
4665         Add an optional (but on by default) resize grip for resizing 
4666         the parent window.
4667
4668 01-03-29  Alexander Larsson  <alexl@redhat.com>
4669
4670         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
4671         Don't return TRUE from the event handler, that blocks all
4672         event signals on the tooltip widget. Now you can press buttons
4673         in toolbars again.
4674
4675 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
4676
4677         * gtk/testtext.c (create_buffer): Add missing NULL on
4678         valist.
4679
4680         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
4681         c-n-p problem with INCONSISTENT property.
4682
4683         [ Patch from Havoc Pennington  <hp@redhat.com> ]
4684
4685         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
4686         hook.
4687
4688         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
4689         signal as a hook for extending the default popup menu
4690
4691         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
4692         use radio menu items for the input method menuitems
4693
4694         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
4695         inserted unicode from Ctrl-Shift-hex input method
4696
4697         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
4698         validatation here, already done at GtkTextBuffer level.
4699
4700         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
4701         popup_menu run action signal and Shift+F10 and Menu keybindings.
4702
4703         * gtk/gtkentry.c: implement a default handler for popup_menu
4704
4705         * gtk/gtktextview.c: implement a default handler for popup_menu
4706
4707         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
4708         from a key event
4709         
4710         * gtk/gtklabel.c: remove "trailer" cruft
4711
4712 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
4713
4714         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
4715         handle reordering of trees.  Seems to mostly work w/ the exception
4716         of the parity flag.
4717
4718         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
4719         signal.
4720
4721 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
4722
4723         * gtk/gtkwidget.h: c++ fixes.
4724
4725 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
4726
4727         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
4728         memory.
4729
4730 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
4731
4732         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
4733         Nils Barth fixing event return values. (#51041)
4734
4735         * gtk/gtkwidget.c: Fix some return values for default
4736         functions.
4737
4738         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
4739         return values for trough_keys functions.
4740
4741         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
4742         value for add_accelerator (shoudl have been a void
4743         return.)
4744
4745         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
4746         Fix return type of EVENT.
4747
4748         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
4749         signal return a boolean.
4750
4751 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
4752
4753         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
4754         reordered signal.
4755
4756         * tests/testtreesort.c (main): fix spelling.
4757
4758 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
4759
4760         * gtk/gtkliststore.c: More work on implementing sortable
4761         interface.
4762
4763 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
4764
4765         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
4766         reference the widgets in the resulting list. (#11821)
4767         This makes this consistent with gtk_container_children.
4768
4769         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
4770         uses of gtk_window_list_toplevels.
4771
4772 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
4773
4774         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
4775         a virtual function to set whether the IM context should use 
4776         the preedit string. (#51922)
4777         
4778 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
4779
4780         * gdk/gdkpango.h: Remove stale FIXME comment.
4781
4782 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
4783
4784         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
4785         Fixed bug that returned NULL if a filename was selected.
4786
4787 2001-03-24  Havoc Pennington  <hp@pobox.com>
4788
4789         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
4790         to contain the word "theme"
4791
4792 2001-03-24  Havoc Pennington  <hp@pobox.com>
4793
4794         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
4795         slower but finer-grained
4796         (gtk_hsv_focus): get initial focus on the ring or triangle 
4797         according to tab direction
4798
4799         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
4800
4801 2001-03-23  Havoc Pennington  <hp@pobox.com>
4802
4803         * gtk/gtkhsv.c: make this somewhat key-navigable
4804
4805         * gtk/gtkfontsel.c: mnemonics
4806
4807         * gtk/gtkgamma.c: mnemonics
4808
4809         * gtk/gtkcolorsel.c: add mnemonics to labels
4810
4811 2001-03-22  Havoc Pennington  <hp@pobox.com>
4812
4813         Applied big patch from Seth Lytle to fix event handler return
4814         values, slightly modified.
4815
4816         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
4817         handled.
4818         (gtk_calendar_key_press): return TRUE for GDK_space triggers
4819         select_day
4820
4821         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
4822         (gtk_clist_button_release): return TRUE if handled
4823
4824         * gtk/gtkcolorsel.c (mouse_release):
4825         (palette_activate): 
4826         (palette_press): 
4827         (palette_new): 
4828         (mouse_press): 
4829         (get_screen_color): 
4830         fixed return type (void to gboolean), return TRUE,
4831         added GTK_SIGNAL_FUNC cast
4832
4833         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
4834         (void to gboolean), and return TRUE
4835         (gtk_combo_button_release): changed return value to TRUE after
4836         gtk_grab_add on combo->popwin
4837
4838         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
4839         collapse or expand
4840
4841         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
4842         button/motion
4843
4844         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
4845         press/release and motion that trigger act
4846
4847         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
4848
4849         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
4850         for GDK_Return
4851         
4852         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
4853         (gtk_list_button_release): return TRUE if selection
4854
4855         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
4856         press
4857
4858         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
4859         (gtk_menu_shell_button_release): chain parent_menu_shell retval
4860
4861         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
4862         nothing triggered
4863         (gtk_notebook_button_release): return TRUE if we do anything
4864
4865         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
4866         (gtk_spin_button_button_release): return TRUE or chained retval
4867
4868         * gtk/gtktext.c (gtk_text_button_press): 
4869         (gtk_text_button_release): return TRUE
4870         (gtk_text_key_press): remove redundant retval code
4871         
4872         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
4873         and sensitive
4874         (gtk_tree_item_subtree_button_click): changed type to gint, and return
4875         TRUE if sensitive
4876
4877         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
4878         return TRUE
4879
4880 2001-03-23  Havoc Pennington  <hp@redhat.com>
4881
4882         * gtk/testgtk.c: fix warnings
4883
4884         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
4885
4886         * gtk/gtktextview.c: fix warnings
4887
4888         * gtk/gtktext.c (find_cursor_at_line): fix warning
4889
4890         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
4891
4892         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
4893         of this function
4894
4895         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
4896         fix warning
4897
4898         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
4899
4900         * gtk/gtkfontsel.c: fix warning
4901
4902         * gtk/gtkcolorsel.c: fix warnings
4903
4904 2001-03-23  Havoc Pennington  <hp@redhat.com>
4905
4906         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
4907
4908         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
4909
4910         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
4911         and deprecated gtk_check_menu_item_set_show_toggle().
4912         
4913         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
4914
4915         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
4916
4917         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
4918
4919 2001-03-23  Havoc Pennington  <hp@redhat.com>
4920
4921         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
4922         some docs
4923
4924 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
4925
4926         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
4927         this.
4928
4929         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
4930         set_cell to set_value
4931
4932         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
4933         set_cell to set_value
4934
4935 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
4936
4937         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4938         fix braino.
4939         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
4940         support.
4941
4942         * gtk/gtktreeview.c: Addition of initial sortable support.
4943
4944         * gtk/gtktreestore.c: Addition of initial sortable support.
4945
4946         * gtk/gtkliststore.c: Addition of initial sortable support.
4947
4948         * gtk/gtkmarshal.list: yet another marshaller.
4949
4950         * gtk/gtktreedatallist.[ch]: shared code between the store models
4951         for handling sorting headers.
4952
4953 2001-03-22  Havoc Pennington  <hp@redhat.com>
4954
4955         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
4956         (gtk_container_unset_focus_chain): Add ability to override the 
4957         focus chain for a container explicitly
4958
4959 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
4960
4961         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
4962         added PROP_MNEMONIC_WIDGET.
4963
4964         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
4965         (gtk_window_remove_mnemonic): 
4966         (gtk_window_add_mnemonic): fixed assertions.
4967         (gtk_window_activate_mnemonic): constrain modifier checks to those
4968         permitted by gtk_accelerator_get_default_mod_mask().
4969         got rid of gtk_window_get_default_accel_group().
4970
4971         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
4972         activatable widgets either by focussing or a warning.
4973         added a signal accumulator to ::activate_mnemonic which stops the
4974         emission once a handler returned TRUE.
4975
4976 2001-03-22  Havoc Pennington  <hp@pobox.com>
4977
4978         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
4979         the stock item label
4980
4981         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
4982
4983         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
4984
4985         * demos/gtk-demo/*.c: Add mnemonics all over the place
4986
4987         * gtk/gtklabel.h: mark parse_uline deprecated
4988
4989 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4990
4991         * gtk/gtkitemfactory.[ch]:
4992         Add support for stock and normal imagemenuitems.
4993         
4994         * gtk/testgtk.c:
4995         Add some tests for mnemonics, stock toolbars, stock
4996         and image menuitems in itemfactory and gdk_window_scroll.
4997
4998 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4999
5000         * gtk/gtkbutton.[ch]:
5001         * gtk/gtkdialog.c:
5002         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
5003         removed accel_group argument. Renamed gtk_button_new_accel() to
5004         gtk_button_new_with_mnemonic() and removed accel_group argument.
5005
5006         * gtk/gtkcheckbutton.[ch]:
5007         New function gtk_check_button_new_with_mnemonic().
5008
5009         * gtk/gtkentry.c:
5010         Override activate_mnemonic and just grab focus.
5011
5012         * gtk/gtkitemfactory.c:
5013         Don't add menu uline accel group, instead use mnemonics support.
5014
5015         * gtk/gtklabel.[ch]:
5016         New support for mnemonics.
5017
5018         * gtk/gtkmarshal.list:
5019         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
5020
5021         * gtk/gtkmenu.[c]:
5022         * gtkmenushell.c:
5023         Use mnemonics instead of accel groups for uline
5024         support in menu items.
5025         Removed gtk_menu_get_uline_accel_group() and
5026         gtk_menu_ensure_uline_accel_group().
5027
5028         * gtk/gtkmenuitem.c:
5029         Override activate_mnemonic to handle switching between
5030         menu items if there are collisions.
5031         
5032         * gtk/gtknotebook.c:
5033         Connect to activate_mnemonic on the tab_label, so that
5034         activating it switches to that notebook page.
5035
5036         * gtk/gtkwidget.[ch]:
5037         Add activate_mnemonic signal. New function
5038         gtk_widget_activate_mnemonic() to emit it.
5039         Default implementation does activate/grab_focus.
5040
5041         * gtk/gtkwindow.[ch]:
5042         Add support for mnemonics in windows.
5043         New functions:
5044         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
5045         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
5046
5047         * gtk/testgtk.c:
5048         Update to function name changes.
5049         
5050 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5051
5052         * gtk/gtkimagemenuitem.[c]:
5053         Add gtk_image_menu_item_new_from_stock()
5054
5055 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
5056
5057         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5058         Fix buglet in meeting.
5059
5060 2001-03-19  Havoc Pennington  <hp@redhat.com>
5061
5062         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
5063         add a bunch of accessor functions. This is because we have
5064         reasonable expectations of extending what fields it contains in
5065         the future.
5066
5067         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
5068         changes
5069
5070         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
5071         GtkIconSource   
5072
5073 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
5074
5075         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
5076         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
5077
5078         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
5079           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
5080           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
5081           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
5082         Change float to double everywhere with the exception of 0<->1.0 alignment
5083         and GtkCurve.
5084
5085 2001-03-19  Tor Lillqvist  <tml@iki.fi>
5086
5087         * gdk/win32/gdkdrawable-win32.c
5088         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
5089         output.
5090
5091         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
5092         gdkwin32.h.
5093
5094 2001-03-18  Tor Lillqvist  <tml@iki.fi>
5095
5096         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
5097         print_event_state, print_event): Use preprocessor macro to make
5098         code more compact. Print also GDK_WINDOW_STATE events.
5099         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
5100         
5101         * gtk/gtk.def
5102         * gtk/makefile.mingw.in: Update.
5103
5104         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
5105         to catch also Cygwin.
5106
5107 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
5108
5109         * gtk/gtkspinbutton.[hc]: added rc-style argument
5110         GtkSpinButton::shadow_type.
5111         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
5112         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
5113         rc-style settings.
5114
5115         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
5116
5117         * gtk/gtkwidget.c: quark cleanups.
5118
5119         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
5120         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
5121         to create_rc_style() (we don't do cloning in standard OO sense).
5122         added per rc style properties.
5123         
5124         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
5125         property values and for caching those. some cleanups.
5126         
5127         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
5128         
5129         * gtk/gtksettings.[hc]: new file for global rc-file properties
5130         (at least currently, should get extended to support X properties
5131         and other communication mechanisms).
5132         
5133         * gtk/gtkwidget.[hc]: added style property support:
5134         (gtk_widget_class_install_style_property_parser): install style
5135         property pspec with parser function for rc-file values other
5136         than LONG, DOUBLE or STRING.
5137         (gtk_widget_class_install_style_property): same as above without
5138         parser (parsers are going to be needed quite infrequently).
5139         (gtk_widget_style_get_property): retrive style property value.
5140         (gtk_widget_style_get_valist): same as above with varargs support,
5141         has NOCOPY semantics.
5142         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
5143
5144 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
5145
5146         * demos/gtk-demo/main.c (row_activated_cb): modified to use
5147         "row_activated" signal.
5148
5149         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
5150         stupidity.  Lets actually pass in the row with this signal...
5151
5152 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
5153
5154         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
5155
5156         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
5157
5158         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
5159         everything into the ::destroy function, and freed a lot more.
5160
5161 2001-03-16  Havoc Pennington  <hp@redhat.com>
5162
5163         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
5164         instead of gint16, to avoid overflow issues, since sizes > 16-bit
5165         are now allowed.
5166
5167 2001-03-16  Havoc Pennington  <hp@redhat.com>
5168
5169         * Applied patch from Nils Barth (bug # 51041) to 
5170         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
5171         in various places.
5172
5173 2001-03-15  Havoc Pennington  <hp@redhat.com>
5174         
5175         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
5176         for properties to set on the tag.
5177
5178         * gtk/testtext.c: fixups to reflect create_tag change
5179         
5180         * gtk/gtktexttag.c (gtk_text_tag_set_property):
5181         background/foreground stipple are objects, not boxed.
5182
5183         * demos/gtk-demo/textview.c: intellihancing
5184
5185 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
5186
5187         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
5188         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
5189
5190 2001-03-16  Alexander Larsson  <alexl@redhat.com>
5191
5192         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
5193         Fix sign error with queued region translations.
5194
5195 2001-03-15  HideToshi Tajima  <tajima@happy>
5196
5197         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
5198         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
5199         * gtk/gtkentry.c (update_im_cursor_location): 
5200         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
5201         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
5202         set_cursor_pos to set_cursor_location in GtkInputContext class
5203
5204 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
5205
5206         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
5207         the location of the cell relative to its area.
5208         * gtk/gtkcell*: modified for above change
5209         * gtk/gtktreeview.c: modified for above change.
5210
5211 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
5212
5213         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
5214          (gtk_tree_view_finalize): actually unref the model.  Thanks to
5215         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
5216
5217 2001-03-14  Havoc Pennington  <hp@redhat.com>
5218
5219         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
5220         
5221         * gtk/gtk.h: remove gtkdata.h
5222
5223         * gtk/Makefile.am: remove gtkdata
5224         
5225         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
5226         not "disconnect" on the adjustments.
5227         
5228         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
5229         GtkData
5230
5231         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
5232         not GtkData
5233
5234         * configure.in: handle case where X render exists, but Pango lacks
5235         Xft support.
5236
5237 2001-03-15 Alexander Larsson  <alexl@redhat.com>
5238
5239         * gtk/gtktoolbar.[ch]:
5240         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
5241         to add stock items to toolbars.
5242
5243         * gtk/Makefile.am:
5244         Remove ../gdk/gdkim.h from gdk_headers.
5245
5246 2001-03-15  Sven Neumann  <sven@gimp.org>
5247
5248         * gdk/gdkim.h: removed
5249         
5250         * gdk/gdkprivate.h
5251         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
5252
5253 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
5254
5255         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
5256         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
5257         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
5258         set_cursor_pos() virtual method
5259
5260         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
5261         (gtk_im_context_xim_set_cursor_pos): add implementation for
5262         set_cursor_pos() method
5263
5264         * gtk/gtkentry.c (recompute_idle_func): set current cursor
5265         position to input methods
5266
5267 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
5268
5269         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
5270         code a lot.
5271
5272         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
5273         g_mem_chunk.
5274         (_gtk_tree_data_list_alloc): use g_mem_chunk.
5275         (_gtk_tree_data_list_node_to_value): Fix to switch on
5276         G_TYPE_FUNDAMENTAL.
5277         (_gtk_tree_data_list_value_to_node): Fix to switch on
5278         G_TYPE_FUNDAMENTAL.
5279         (_gtk_tree_data_list_node_copy): Fix to switch on
5280         G_TYPE_FUNDAMENTAL.
5281
5282 2001-03-12  Havoc Pennington  <hp@redhat.com>
5283
5284         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
5285         to convert to new property API. Also, change default_width and
5286         default_height get_property to return 0 as the flag value for
5287         "unset"; -1 is not a valid value for these fields.
5288
5289 2001-03-12  Havoc Pennington  <hp@redhat.com>
5290
5291         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
5292         enum with registration for icon sizes, instead of strings.
5293
5294         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
5295         gtkwidget.c: Fix to reflect GtkIconSize
5296         
5297 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5298
5299         Make GtkFB compile and link.
5300         
5301         * gdk/linux-fb/gdkdrawable-fb2.c:
5302         window->mapped to GDK_WINDOW_IS_MAPPED(). 
5303         
5304         * gdk/linux-fb/gdkwindow-fb.c:
5305         window->mapped to GDK_WINDOW_IS_MAPPED(). 
5306         Added gdk_window_shape_combine_region.
5307         Added assorted placeholders for unimplemented new GdkWindow API calls.
5308
5309 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5310
5311         * gtk/gtkfilesel.c:
5312         Add more test when converting filenames from/to utf-8.
5313         Don't allow entering text in the filename entry which isn't allowed in
5314         a filename. Just beep instead.
5315
5316 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5317
5318         * gtk/gtkclist.c:
5319         Scroll using gdk_window_scroll(). Don't wait for exposes.
5320         Move the column headers in an order that makes them flash less.
5321
5322 2001-03-10  Hans Breuer  <hans@breuer.org>
5323
5324         * gdk/gdk.def : updated
5325
5326         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
5327         to offseting the clip_mask at the right place
5328
5329         * gdk/win32/gdkwindow-win32.c : don't create background brushes
5330         for all the gdkClasses, especially not for the input_only case.
5331         Otherwise flickering wont be avoidable, because we don't get
5332         WM_ERASEBKGND message for these windows.
5333
5334         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
5335         and fixed massive redraw problems apparently triggered by Alexanders 
5336         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
5337         but it seems to work quite well :-)
5338
5339         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
5340         prototype
5341
5342 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
5343
5344         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
5345         (gtk_list_store_set_cell): Fix a stupid typo.
5346
5347 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
5348
5349         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
5350         select_all not work if you're in SINGLE mode (it doesn't make that
5351         much sense, anyway.)
5352
5353         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
5354         handle types more sanely.
5355         (_gtk_tree_data_list_value_to_node): handle types more sanely.
5356         (_gtk_tree_data_list_node_copy): handle types more sanely.
5357
5358         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
5359         GValue better. Converts the type as well.
5360
5361         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
5362         GValue better. Converts the type as well.
5363
5364 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
5365
5366         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
5367         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
5368         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
5369         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
5370
5371         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
5372         gdk_im/gdk_ic.
5373
5374 2001-03-09  Hans Breuer  <hans@breuer.org>
5375
5376         * gdk/gdk.def : updated
5377
5378         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
5379         for their palette
5380
5381         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
5382         removing
5383
5384         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
5385         removing and implemented Havoc's GdkWindow state functions; 
5386         stick/unstick only as no-op, cause I don't know how to emulate 
5387         on win32 ...
5388
5389         * gtk/gtk.def : updated
5390
5391         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
5392
5393         * gtk/gtktypeutils.c : #include <string.h>
5394
5395         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
5396
5397 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
5398
5399         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
5400         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
5401         not a boxed.
5402
5403 2001-03-09  Alexander Larsson  <alexl@redhat.com>
5404
5405         * docs/Changes-2.0.txt:
5406         Document expose event->region change and that gtk_widget_event
5407         doesn't allow passing expose events.
5408
5409         * gdk/gdkevents.h:
5410         Add region to expose event.
5411         
5412         * gdk/gdkevents.c:
5413         Handle event->region in gdk_event_copy() and gdk_event_free().
5414
5415         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
5416         Generate expose_event->region when creating expose events.
5417
5418         * gdk/x11/gdkevents-x11.c:
5419         Generate expose events with regions when translating X events.
5420
5421         * gtk/gtkcontainer.[ch]:
5422         Default expose handler that propagates expose events to NO_WINDOW
5423         children. New function gtk_container_propagate_expose()
5424
5425         * gtk/gtkwidget.[ch]:
5426         Moved gtk_widget_event implementation to gtk_widget_event_internal.
5427         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
5428         expose events. New function gtk_widget_send_expose() to send expose
5429         events. New function gtk_widget_region_intersect() to calculate
5430         window/region intersections.
5431         
5432         * gtk/gtkmain.c (gtk_main_do_event):
5433         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
5434         Use gtk_widget_send_expose() to send expose events.
5435         
5436         * gtk/gtkbin.c:
5437         * gtk/gtkbox.c:
5438         * gtk/gtkfixed.c:
5439         * gtk/gtkimagemenuitem.c:
5440         * gtk/gtklist.c:
5441         * gtk/gtkpacker.c:
5442         * gtk/gtktable.c:
5443         * gtk/gtktree.c:
5444         Remove expose handler, using the default container implementation
5445         instead.
5446         
5447         * gtk/gtkbutton.c:
5448         * gtk/gtkcheckbutton.c:
5449         * gtk/gtkeventbox.c:
5450         * gtk/gtkfixed.c:
5451         * gtk/gtkhandlebox.c:
5452         * gtk/gtklayout.c:
5453         * gtk/gtklistitem.c:
5454         * gtk/gtkmenu.c:
5455         * gtk/gtkmenubar.c:
5456         * gtk/gtkmenuitem.c:
5457         * gtk/gtknotebook.c:
5458         * gtk/gtkoptionmenu.c:
5459         * gtk/gtkpaned.c:
5460         * gtk/gtkscrolledwindow.c:
5461         * gtk/gtktogglebutton.c:
5462         * gtk/gtktoolbar.c:
5463         * gtk/gtktreeitem.c:
5464         * gtk/gtkviewport.c:
5465         Chain expose handler to parent class handler. Use
5466         gtk_container_propagate_expose() to propagate exposes.
5467
5468         * gtk/gtkclist.c (check_exposures):
5469         * gtk/gtktext.c (process_exposes):
5470         Use gtk_widget_send_expose instead of gtk_widget_event.
5471
5472 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
5473
5474         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
5475
5476 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
5477
5478         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
5479         unref the nodes.   Fixes bug #50058.
5480
5481         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
5482         "::ref_iter" to "::ref_node".
5483         (gtk_tree_model_unref_node): change "::unref_iter" to
5484         "::unref_node". Fixes bug #50064.
5485
5486 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
5487
5488         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
5489         support for invisible cells.
5490          (gtk_tree_view_bin_expose): ditto
5491
5492 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
5493
5494         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
5495         on gobjects.
5496
5497         * tests/testtreefocus.c (main): New test file.
5498
5499         * tests/testtreeview.c: update to latest glib changes.
5500
5501         * tests/testtreecolumns.c: update to latest glib changes.
5502
5503 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
5504
5505         * gtk/testgtk.c: re-enabled event watcher emission hooks.
5506
5507 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
5508
5509         * *.c: added accumulator data argument to g_signal_newc()
5510         functions.
5511
5512         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
5513         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
5514         * gtk/treestoretest.c (make_window):
5515         s/g_signal_connect/g_signal_connectc/.
5516
5517         * gtk/gtktextbuffer.c: completed signal arg fixups,
5518         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
5519
5520 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
5521
5522         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
5523         G_CONST_RETURN.
5524
5525         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
5526         ::hierarchy-changed signal when a widget changes
5527         from anchored to unanchored or vice versa.
5528         (anchored means 
5529          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
5530         Use a private flag to keep track of this efficiently.
5531
5532 2001-03-07  Havoc Pennington  <hp@redhat.com>
5533
5534         * gtk/testgtk.c (create_spins): uglify so that size request gets
5535         tested.
5536
5537         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
5538         request on values for upper/lower, completes #6152
5539
5540 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
5541
5542         * Makefile.am: Remove gtk-config-2.0 again.
5543         (Grrrr, pkg-config. And stops make loops.)
5544
5545 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
5546
5547         * gtk/gtksignal.[hc]: removed old emission hook API.
5548         
5549         * docs/Changes-2.0.txt: fixed sections.
5550         
5551         * gtk/gtktextbuffer.c: signal arg fixups.
5552
5553 2001-03-07  Havoc Pennington  <hp@redhat.com>
5554
5555         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
5556
5557         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
5558         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
5559         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
5560         validation and the redraw which is higher priority than the
5561         validation.
5562
5563 2001-03-07  Havoc Pennington  <hp@redhat.com>
5564
5565         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
5566         (gtk_entry_set_property): remove trailer
5567
5568         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
5569         (gtk_entry_get_width_chars): new functions, to set size request to 
5570         a given number of characters
5571
5572         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
5573
5574         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
5575         (gtk_dialog_get_has_separator): new function
5576         (run_delete_handler): fix to not emit "response" signal
5577         because we already did in the delete event handler installed
5578         at dialog creation time.
5579         
5580         * gtk/gtkdialog.h: add a has_separator property,
5581         add GTK_DIALOG_NO_SEPARATOR flag
5582
5583 2001-03-07  Havoc Pennington  <hp@redhat.com>
5584
5585         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
5586         off decorations for a window.
5587
5588         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
5589         changes
5590
5591         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
5592         to get location of PangoLayout inside the label, closes #51198
5593
5594         * gtk/testgtk.c (create_bbox): fix up button box usage
5595
5596         * gtk/testcalendar.c (create_calendar): fix up button box usage
5597
5598         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
5599
5600         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
5601
5602         * gtk/gtkhbbox.h: deprecations
5603
5604         * gtk/gtkvbbox.h: deprecations
5605
5606         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
5607         emulate deprecated gtk_button_box_get_spacing
5608
5609         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
5610         the "set global default" functions
5611         (struct _GtkButtonBox): remove "spacing" field, use the one from 
5612         GtkBox base class
5613
5614         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
5615
5616         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
5617         render the icon, return the missing image icon.
5618
5619         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
5620         image icon if the load fails.   
5621
5622         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
5623         when no image is found; should be the Netscape "missing image"
5624         icon eventually but for now is a random image
5625
5626         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
5627         role for the session manager
5628
5629         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
5630
5631         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
5632         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
5633
5634         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
5635
5636 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
5637
5638         * gtk/*.c: marshaller fixes.
5639         
5640         * gtk/gtkmarshal.list: extreme cleanup.
5641
5642         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
5643         param spec for now.
5644
5645         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
5646         where appliable.
5647
5648         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
5649         special cased autogenerated boxed types from gtktypebuiltins_ids.c
5650         which are not reference counted:
5651         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
5652         PangoFontDescription, GtkTreeIter and GtkTreePath.
5653
5654 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
5655
5656         * gtk/gtktreeselection.h: 
5657         * gtk/gtktreemodel.c:
5658         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
5659         file should be included directly, and gobject/gmarshal.h
5660         as well as gtk/gtkmarshal.h even can't be included directly.
5661
5662         * Makefile.am: grr, install gtk-config-2.0.
5663
5664         * gtk/testgtk.c:
5665         * gtk/simple.c:
5666         * gtk/gtkmenu.c:
5667         * gtk/gtkitemfactory.c: use g_object_connect() instead of
5668         passing "*signal*::*" args to gtk_widget_set().
5669         
5670         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
5671         
5672         * gtk/*.c: removed trailer arg from property setters and getters.
5673         macro fixups.
5674
5675 2001-03-07  Alexander Larsson  <alexl@redhat.com>
5676
5677         * gtk/gtklabel.c (set_markup): Removed warning
5678
5679 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
5680
5681         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
5682         field to allow you to hide cell renderers.
5683
5684         * gtk/gtkcellrenderer.c: Add support for invisible cells.
5685
5686         * gtk/gtktreeview.c: Add support for invisible cells.
5687
5688 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
5689
5690         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
5691         Add "clicked" signal back to columns.
5692
5693         * ChangeLog: remove conflict markers.
5694
5695 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
5696
5697         * gtk/gtkbutton.c: Add animation of activation by, on 
5698         activate, pressing the button, and adding a timeout that 
5699         releases the button after 250ms or on key release and
5700         emits ::clicked. (#51501)
5701
5702         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
5703         action area, we connect to ::clicked instead of ::activate
5704         so the dialog stays up through the animation.
5705
5706 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
5707
5708         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
5709         check the ignore_enter flag for the menu shell that
5710         the item is actually a child of, not for attached
5711         submenus. (#51536)
5712
5713 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
5714
5715         * gtk/gtkmain.c (gtk_propagate_event): Only do special
5716         special key-press grab handling for widgets within
5717         GtkWindows. Otherwise, fall through to normal case.
5718
5719         This prevents key events being sent twice to GtkInvisible
5720         widgets, which can cause all sorts of mischief.
5721
5722 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
5723
5724         * gtk/gtkmain.c (gtk_propagate_event): When a grab
5725         widget is in effect, give the grab widget a first
5726         crack at KEY_PRESS/RELEASE events. (#424)
5727
5728 2001-03-06  James Henstridge  <james@daa.com.au>
5729
5730         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
5731         offset for the window_state_event to point at window_state_event
5732         rather than no_expose_event.
5733
5734 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
5735
5736         * gtk/gtkimmodule.h: fix busted /* comment */
5737
5738 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
5739
5740         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
5741         object properties.
5742
5743 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
5744
5745         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
5746         add object properties.
5747
5748         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
5749         to add object properties.
5750
5751         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
5752         object properties.
5753
5754         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
5755         add object properties.
5756
5757         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
5758         object properties.
5759
5760 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
5761
5762         * gtk/gtktreemodel.c: renamed "child_toggled" to
5763         "has_child_toggled".
5764
5765         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
5766         handle new signal name.
5767
5768         * gtk/gtktreestore.c: Updated to handle new signal name.
5769         * gtk/gtklisttore.c: Updated to handle new signal name.
5770         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
5771
5772 2001-03-05  Alexander Larsson  <alexl@redhat.com>
5773
5774         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
5775         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
5776
5777 2001-03-05  Michael Natterer  <mitch@gimp.org>
5778
5779         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
5780         pixbuf-engine coincidentially also failed to make one of it's
5781         parent_class pointers static, causing overwriting of GtkLabel's
5782         parent_class pointer in pixbuf_style_class_init().
5783         (Will commit the fix to the pixbuf-engine too).
5784
5785 2001-03-05  Alexander Larsson  <alexl@redhat.com>
5786
5787         * gdk/gdkwindow.h:
5788         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
5789         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
5790         gdk_window_set_icon_list for net wmspec functionality.
5791
5792         * gdk/x11/gdkwindow-x11.c:
5793         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
5794         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
5795         gdk_window_set_icon_list.
5796         Added gdk_wmspec_change_state helper function and used it in the code.
5797         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
5798
5799         * gtk/gtkdialog.c (gtk_dialog_init):
5800         Set GDK_WINDOW_TYPE_HINT_DIALOG.
5801
5802         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
5803         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
5804
5805         * gtk/gtkwindow.c:
5806         new function gtk_window_set_type_hint.
5807         On realize, set type hint and modal hint.
5808
5809         * gtk/gtkwindow.h:
5810         Added type_hint field and gtk_window_set_type_hint.
5811
5812 2001-03-05  Alexander Larsson  <alexl@redhat.com>
5813
5814         * gtk/gtklabel.[ch]:
5815         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
5816         New function gtk_label_get_accel_keyval () to get the underline accelerator
5817         of the label. Setting the label pattern overrides other attributes.
5818
5819 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
5820
5821         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
5822         Added missing initializers to gtk_rc_style_init().
5823
5824 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
5825
5826         * gtk/gtktextview.c: fixed bug #51097 about setting 
5827         gtk_text_view_set_border_window_size() if the widget is 
5828         already realized.
5829
5830 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
5831
5832         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
5833
5834         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
5835         comment. Won't do to have duplicated doc comments between
5836         the platform subdirs.
5837
5838 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
5839
5840         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
5841           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
5842
5843         Detectable auto-repeat - make a repeating key generate
5844         press/press/press/release instead of press/release pairs.
5845
5846         If we have Xkb and XkbSetDectableAutoRepeat supports
5847         that, we do it that way. Otherwise, when we get
5848         a release event, we check ahead with XPending to see
5849         if the next key is a KeyPress with the same keycode
5850         and timestamp. (Not 100% reliable, but pretty close.)
5851           
5852 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
5853         
5854         * gtk/gtkmain.c (gtk_propagate_event): Only do special
5855         special key-press grab handling for widgets within
5856         GtkWindows. Otherwise, fall through to normal case.
5857  
5858         This prevents key events being sent twice to GtkInvisible
5859         widgets, which can cause all sorts of mischief.
5860  
5861 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
5862  
5863         * gtk/gtkmain.c (gtk_propagate_event): When a grab
5864         widget is in effect, give the grab widget a first
5865         crack at KEY_PRESS/RELEASE events. (#424)
5866  
5867 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
5868
5869         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
5870         to extend the selection. (Roughly based on patch
5871         from Jay Cox, #50939)
5872
5873         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
5874         to properly handle previous GDK_BUTTON_PRESS. 
5875         (Patch from Jay Cox, #50938)
5876
5877         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
5878         '\0' back along with the deleted text. (#51148)
5879
5880 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
5881
5882         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
5883         the group when extracting it from the X keyboard event.
5884
5885         * modules/input/Makefile.am modules/input/imipa.c: 
5886         Simple module for entering IPA. (Do we need a 
5887         gtk-stupid-input-tricks CVS module?)
5888
5889 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
5890
5891         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
5892         const.
5893
5894         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
5895
5896         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
5897         is no focus widget for the dialog currently, grab the focus as well
5898         as the default.
5899
5900         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
5901         the action area's children to iterate through, not the
5902         dialog's children.
5903
5904 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
5905
5906         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
5907         Add plug-socket tests. (Won't work worth a darn until I commit
5908         the rest of the plug-socket changes, but no reason these
5909         can't go into CVS now.)
5910
5911 2001-03-02  Havoc Pennington  <hp@redhat.com>
5912
5913         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
5914         _gdk_region_get_xrectangles()
5915
5916         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
5917
5918         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
5919
5920         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
5921         function, contributed by Ron Steinke    
5922
5923         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
5924         gdk_net_wm_supports
5925
5926         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
5927         New function, contributed by Ron Steinke
5928
5929         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
5930         used to line up the text in the entry when using the entry for
5931         editable sheet cell hacks
5932
5933         * gtk/testgtk.c (create_entry): test the activate_default setting
5934         on GtkEntry
5935
5936         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
5937         cause the entry to activate the default button for a dialog when 
5938         activated
5939         (gtk_entry_get_activates_default): new function
5940
5941 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
5942
5943         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
5944         Hwang to move call to sync_selection() up a few lines
5945         to before the row list is modified, to fix crash when
5946         removing rows in the undo_selection list.
5947
5948         (Test case provided by Daniel Elstner:
5949
5950         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
5951
5952 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
5953
5954         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
5955         of tree->root_tree in parent_set rather than _map(), 
5956         fixing #50892 in a bit better manner.
5957
5958 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
5959
5960         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
5961
5962 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
5963
5964         * gtk/gtkstyle.c : Remove duplicate fwd decl for
5965         gtk_default_draw_shadow.
5966
5967 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
5968
5969         * gdk/gdkimage.c (gdk_image_new): Remove excess 
5970         warning, make warnings more verbose, treat a error
5971         in shmat as permanent, and don't try again.
5972         (#51163, Ed Randall.)
5973
5974 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
5975
5976         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
5977         delay for the first click before starting to scroll.
5978         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
5979
5980         * gtk/gtktext.c: GtkText should have I-beam cursor. 
5981         (based on gtk-enf-990513-1.patch, Eric Fisher.)
5982
5983 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
5984
5985         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
5986         cleanup to remove some references to unused
5987         ->xoffset, ->yoffset.
5988
5989 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
5990
5991         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
5992         mask. (#51039, fix from Martin Maierhofer)
5993
5994 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
5995
5996         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
5997         for unshifted + and shifted = for non-us keyboards.
5998         Make <Control>+ and <Control>- work as well as 
5999         <Control>KP_Plus, <Control>KP_Minus for recursive
6000         open/close.  (#2682, René Seindal)
6001
6002 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
6003
6004         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
6005         the active menu item before deactivating the menu,
6006         so gtk_menu_popdown doesn't change the history. (#50964)
6007         
6008 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
6009
6010         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
6011         draw lines with text_gc rather than black_gc.
6012         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
6013
6014 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
6015
6016         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
6017         Move handling of buttons fully in gtktreeviewcolumn.  This code is
6018         less interrelated then it was, but it still requires the
6019         GtkTreeView to map it.
6020
6021         * test/testtreecolumn.c: Now I can add a column to one view,
6022         remove it, add it to the another view, remove it, then re-add it
6023         to the first.  Nifty.
6024
6025 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
6026
6027         * docs/tutorial/gtk-tut.sgml: Minor corrections
6028
6029 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
6030
6031         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
6032         GtkRowReference.
6033
6034 2001-02-28  Havoc Pennington  <hp@redhat.com>
6035
6036         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
6037         draw_default
6038         (gtk_widget_draw_focus): remove this function; we could instead
6039         make it just gtk_widget_draw(), but in most cases I think the
6040         result would be broken user code, so think it's better to have
6041         that code not compile and get fixed
6042         (gtk_widget_draw_default): ditto
6043
6044         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
6045         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
6046         
6047         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
6048         widgets lose/get the default, instead of calling draw_default
6049         
6050         * docs/Changes-2.0.txt: note about all this
6051
6052         Then fixed every widget in GTK, I won't list all the filenames.
6053
6054 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
6055
6056         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
6057         _gtk_tree_row_reference_deleted.
6058         (inserted_callback): Proxy out to
6059         _gtk_tree_row_reference_inserted.
6060         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
6061         get around signal emission ordering problem.
6062
6063         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
6064         fix to work with SINGLE 
6065         (_gtk_tree_selection_internal_select_node): Major sanitization on
6066         selections.  SINGLE now seems to work.
6067
6068         * tests/Makefile.am: add testtreecolumn.c:
6069
6070         * tests/testtreecolumn.c: New test.  Mostly points out selection
6071         bugs currently, but will test columns later.
6072
6073         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
6074         selection bug.  I hate touching this code -- it's scary.
6075
6076 2001-02-26  Havoc Pennington  <hp@redhat.com>
6077
6078         * gtk/testgtk.c: test the window state stuff
6079
6080         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
6081         window come to the user's attention as if it were just created
6082         (gtk_window_iconify): new function
6083         (gtk_window_deiconify): new function
6084         (gtk_window_stick): new function
6085         (gtk_window_unstick): new function
6086         (gtk_window_maximize): new function
6087         (gtk_window_unmaximize): new function
6088
6089         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
6090
6091         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
6092
6093         * gdk/x11/gdkevents-x11.c: create window state events when
6094         appropriate
6095         (gdk_wmspec_supported): new function
6096
6097         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
6098         iconification before showing the window
6099         (gdk_window_deiconify): new function
6100         (gdk_window_stick): new function
6101         (gdk_window_unstick): new function
6102         (gdk_window_maximize): new function
6103         (gdk_window_unmaximize): new function
6104
6105         * gdk/gdkwindow.c: store the window state in the window; 
6106         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
6107         window->mapped.
6108         (gdk_window_get_state): return the current window state
6109
6110         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
6111         (gdk_event_get_state): handle GDK_WINDOW_STATE
6112         (gdk_synthesize_window_state): function to create the window state
6113         events
6114
6115         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
6116         event, for changes to "window state" such as maximized, sticky, 
6117         etc.
6118         
6119         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
6120         focuses a window
6121
6122         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
6123         finds out if we support a given WM spec hint
6124
6125 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
6126
6127         * docs/faq/gtk-faq.sgml: New question re memory leaks.
6128
6129 2001-02-25  Hans Breuer  <hans@breuer.org>
6130
6131         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
6132         cause we want to loose those prototypes only in the latter case
6133
6134         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
6135         GdkPixmapImplWin32 because it itsn't derived from it. Use the
6136         impl member variable instead
6137
6138         * gtk/gtk.def : updated
6139
6140         * gtk/gtklist.c : 
6141         * gtk/gtkmenus.c : include <string.h> for memset ()
6142
6143         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
6144         for everthing built here, but for gtk-x.x.dll only. This solves
6145         problem of indifferent gtk type definitions
6146
6147 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
6148
6149         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
6150
6151 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
6152
6153         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
6154         column that is exposed.
6155
6156         (_gtk_tree_view_update_size): Changed name from set_size, and
6157         changed function to do more work, and not force people calling it
6158         to figure out the size.  Simplifies a lot of code elsewhere.
6159
6160 2001-02-23  Alexander Larsson  <alexl@redhat.com>
6161
6162         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
6163         return solid masks for xpms that have no transparent color.
6164         This makes the ..._create_from_xpm... API backwards
6165         compatible.
6166
6167 2001-02-23  Tor Lillqvist  <tml@iki.fi>
6168
6169         * README.win32: Update. Mention the gtk-1-3-win32-production
6170         branch.
6171
6172         * gdk/win32/bdfcursor.c: New file. A program that generates
6173         xcursors.h. Thanks to Stefan Ondrejicka.
6174
6175         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
6176         compact format.
6177
6178         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
6179
6180         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
6181         function, uses xcursors.h.
6182         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
6183         cursor from inline data instead of using LoadCursor() to generate
6184         it from a resource.
6185
6186         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
6187         event, must check the Windows message for mouse button state, as
6188         the GDK event state might not have been built if it is
6189         undelivered. Remove one goto.
6190
6191         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
6192         SetCursor() if the current cursor as returned by GetCursor() is
6193         the window's previous cursor. The ChildWindowFromPoint() test
6194         apparently didn't work correctly.
6195
6196         * gdk/win32/rc/*.cur: Remove.
6197
6198         * gdk/win32/rc/gdk.rc.in: Remove cursors.
6199
6200         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
6201
6202         * gtk/makefile.{mingw,msc}.in: Updates.
6203
6204 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
6205
6206         * gtk/gtktreemodel.h: add functions for signal emission.
6207
6208         * gtk/gtktreestore.c: move to use above functions instead of
6209         g_signal_emit.
6210
6211         * gtk/gtkliststore.c: ditto
6212
6213 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
6214
6215         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
6216         GObject instead of GtkObject.
6217
6218         * gtk/gtkliststore.c: ditto.
6219
6220         * gtk/gtktreemodelsort.c: ditto.
6221
6222         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
6223         GtkTreeModelIface, instead of in each model.
6224
6225 2001-02-21  Havoc Pennington  <hp@redhat.com>
6226
6227         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
6228         unbreak this function
6229
6230         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
6231         properties
6232
6233         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
6234         properties
6235
6236         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
6237         properties
6238
6239         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
6240         mean unset the max length
6241
6242 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
6243
6244         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
6245         Changed name to be set_cell_data_func to make it clear what
6246         the functino does.  Close bug #51069.
6247
6248 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
6249
6250         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
6251         have memory actually freed.  Keeps box running longer.
6252
6253 2001-02-21  Alexander Larsson  <alexl@redhat.com>
6254         
6255         * gtk/gtkseparatormenuitem.[ch]:
6256         Added new menu separator item. The drawing and size handling
6257         is still done in GtkMenuItem, but the API is a bit more sane.
6258         
6259         * gtk/Makefile.am:
6260         Add gtkseparatormenuitem.[ch].
6261
6262         * gtk/gtk.h:
6263         Add gtkseparatormenuitem.h.
6264         
6265         * gtk/gtkentry.c:
6266         * gtk/gtkmenufactory.c:
6267         * gtk/gtktextview.c:
6268         Use the new API for menu separators.
6269         
6270         * demos/gtk-demo/menus.c (create_menu):
6271         Add some GtkSeparatorMenuItem demo code.
6272
6273 2001-02-20  Havoc Pennington  <hp@redhat.com>
6274
6275         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
6276         Lee Mallabone
6277
6278         * gtk/gtkarrow.c: Convert to new property API, patch from 
6279         Lee Mallabone
6280
6281 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
6282
6283         * tests/testtreeview.c (toggled_callback): fix to reflect change
6284         in GtkTreeModelStore.
6285
6286 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
6287
6288         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
6289         function to create an icon set from a pixbuf.
6290
6291 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6292
6293         * gtk/gtkcellrenderertext.[ch]:
6294         Add a "markup" property.
6295
6296         * gtk/treestoretest.c:
6297         Use the markup property, remove some leftover stuff from
6298         GtkTreeModelMapping.
6299
6300 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6301
6302         * gtk/gtklabel.c (gtk_label_set_selectable):
6303         Queue a redraw if the selectable setting was changed.
6304
6305 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6306
6307         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
6308         Actually copy the whole gc, not just the public parts.
6309         
6310         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6311         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
6312         labels.
6313
6314 2001-02-19  Havoc Pennington  <hp@pobox.com>
6315
6316         * gdk/gdkwindow.c: docs
6317
6318         * gdk/gdkrgb.c: docs
6319
6320         * gdk/gdkregion-generic.c: docs
6321
6322         * gdk/gdkgc.c (gdk_gc_set_values): docs
6323
6324         * gdk/gdkdraw.c: docs
6325
6326         * gdk/gdkdrawable.h: deprecate drawable get/set data
6327
6328 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
6329
6330         * demos/gtk-demo/dialog.c: Add simple new demo.
6331
6332 2001-02-19  Havoc Pennington  <hp@redhat.com>
6333
6334         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
6335         insert_child_anchor signal, bug #50245
6336
6337         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
6338         from create_child_anchor, so the anchor is passed in
6339
6340         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
6341         (_gtk_widget_segment_new): have the child anchor object passed in, 
6342         instead of creating it.
6343
6344         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
6345         to gtk_text_buffer_get_modified
6346
6347 2001-02-19  Havoc Pennington  <hp@redhat.com>
6348
6349         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
6350         changed GLib without fixing GTK
6351
6352         * gtk/gtkrange.h: Rename all the stupid implementation detail 
6353         functions to have an underscore in front. Most of them should 
6354         probably just go away, but for starters don't export them.
6355         Bug #50482
6356
6357 2001-02-19  Havoc Pennington  <hp@redhat.com>
6358
6359         * gdk/gdkcolor.h: test was backward, so deprecated functions were
6360         excluded by default
6361
6362         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
6363         clean up the old code a bit
6364
6365         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
6366         inconsistent state
6367
6368         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
6369         draw inconsistent state
6370
6371         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
6372         (create_menu): add inconsistent test
6373
6374         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
6375         new function
6376         (gtk_check_menu_item_get_inconsistent): new function
6377         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
6378         state (using etched in for now)
6379
6380         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
6381         draw inconsistent state
6382
6383         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
6384         function, used when the user has selected a range of stuff in
6385         different states
6386         (gtk_toggle_button_get_inconsistent): accessor for that
6387         (gtk_toggle_button_paint): draw inconsistent state (etched in?
6388         don't know what else to do)
6389
6390 2001-02-19  Hans Breuer <hans@breuer.org>
6391
6392         * gtk/gtk.def : updated exported symbols
6393
6394         * gtk/makefile.msc.in : updated
6395
6396         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
6397         a colormap, when invoked from testgtk::entry. I'm not sure where
6398         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
6399         avoids immediate crashing ...
6400
6401         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
6402         any objections ?
6403
6404         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
6405         0 parameter. At least msvc doesn't like macros with var args. 
6406         I simply removed the extra 0, was it a feature or a typo ?
6407
6408         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
6409         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
6410         because the value assignment to the internal struct wasn't working.
6411         I'm not absolutely sure. The problem could have been resolved by
6412         changing the "func" declartion in the struct, but was the pointer
6413         to the function pointer intended ?
6414
6415         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
6416
6417         * gdk/gdk.def : updated exported symbols
6418
6419         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
6420         only use SetDIBitsToDevice if there is a palette at the drawable
6421         and the image is GDK_VISUAL_PSEUDO_COLOR
6422
6423         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
6424
6425         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
6426
6427         * gdk/*/makefile.msc : updated
6428
6429 2001-02-19  Havoc Pennington  <hp@redhat.com>
6430
6431         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
6432         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
6433
6434         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
6435         (gdk_key_repeat_restore): nuke
6436
6437         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
6438         (gdk_init_check): no atexit func
6439
6440         * gdk/gdkrgb.h: mark some stuff deprecated
6441
6442         * gdk/gdkcolor.h: mark some stuff deprecated
6443         
6444         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
6445
6446         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
6447
6448 2001-02-16  Havoc Pennington  <hp@redhat.com>
6449
6450         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
6451         scroll steps.
6452
6453         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
6454         steps, and add Ctrl-arrow shortcuts for paging visually as with
6455         HScale, since Page Up and Page Down move logically.
6456
6457         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
6458         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
6459         
6460         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
6461         steps
6462         (gtk_range_scroll): handle the visual steps
6463
6464         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
6465         scroll steps
6466
6467         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
6468         steps, not the logical ones.
6469
6470         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
6471         (scroll_vertical): handle up/down steps
6472
6473 2001-02-19 Alexander Larsson  <alexl@redhat.com>
6474
6475         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
6476         Copy data and free data with free().
6477
6478         * gdk-pixbuf/gdk-pixbuf.c:
6479         * gdk-pixbuf/io-jpeg.c:
6480         * gdk-pixbuf/io-png.c:
6481         Use g_try_malloc/g_free instead malloc/free.
6482         
6483         * gdk-pixbuf/test-gdk-pixbuf.c:
6484         Must... initialize... gobject...
6485         
6486         * gdk-pixbuf/pixops/timescale.c:
6487         * gtk/gtkcalendar.c:
6488         Use g_malloc instead of malloc.
6489         
6490 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
6491
6492         * gtk/testgtkrc:
6493         Comment out property assignments, these don't work yet.
6494
6495 2001-02-17  Havoc Pennington  <hp@pobox.com>
6496
6497         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
6498         bit.
6499
6500 2001-02-17  Havoc Pennington  <hp@pobox.com>
6501
6502         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
6503         shadowed variables that had broken size request in some cases,
6504         leading to bogus tooltips (#50996)
6505
6506 2001-02-06  Jon K Hellan  <hellan@acm.org>
6507
6508         Implement fast browsing of tooltips, bug #50619
6509         
6510         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
6511         and last_popdown
6512         
6513         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
6514         use_sticky_delay and last_popdown.
6515         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
6516         time of popdown.
6517         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
6518         is NULL.
6519         (gtk_tooltips_recently_shown): New static function.  Return true
6520         if < sticky_delay has elapsed since last popdown.
6521         (gtk_tooltips_event_handler): Display window after sticky_delay
6522         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
6523         since last popdown.
6524         
6525 2001-02-17  Havoc Pennington  <hp@pobox.com>
6526
6527         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
6528         instead of (). #6394
6529
6530         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
6531         G_CONST_RETURN, make it return by reference, #50473
6532         
6533 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
6534
6535         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
6536         generated ENTER_NOTIFY event with 0, otherwise not explicitely
6537         setup fields contain garbage (e.g. subwindow, breaking
6538         gdk_drawable_ref() upon event copy).
6539         (gtk_menu_stop_navigating_submenu_cb): same here.
6540
6541         * gtk/gtklist.c (gtk_list_vertical_timeout): 
6542         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
6543         * gtk/gtkclist.c (vertical_timeout): 
6544         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
6545         default-zero-intialization for unions to memset(,0,), as unions are
6546         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
6547         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
6548
6549         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
6550         g_closure_sink() warning.
6551
6552         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
6553         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
6554         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
6555         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
6556         
6557 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
6558
6559         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
6560         gtk_*_store_get, and moved to GtkTreeModel.
6561
6562         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
6563
6564         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
6565
6566         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
6567
6568         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
6569         set the func.
6570
6571         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6572         freeze/thaw notify between setting all the properties for a cell.
6573
6574         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
6575
6576 2001-02-15  Havoc Pennington  <hp@redhat.com>
6577
6578         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
6579         the X coordinates so they're with respect to the line, rather than 
6580         with respect to the layout.
6581
6582         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
6583         Mallabone
6584
6585         * gtk/testgtk.c (create_range_controls): add vscale tests, 
6586         and inverted test
6587
6588         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
6589         #50806
6590
6591         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
6592
6593         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
6594         gtk_text_iter_is_end
6595
6596         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
6597         rename gtk_text_buffer_get_end_iter
6598
6599         * gtk/testgtk.c (create_labels): Add test for selectable
6600
6601         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
6602         the selection stuff. This code is kind of broken since it doesn't 
6603         use the theme engine.
6604
6605         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
6606         fix infinite loop and y offset problem
6607         (gdk_draw_layout_line_with_colors): fix foreground color handling
6608
6609         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
6610         that makes the label selectable.
6611         
6612         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
6613         layout when the style is set, since fonts etc. could have changed.      
6614
6615 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
6616
6617         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
6618
6619         * gtk/gtktreemodelsimple.[ch]: removed.
6620
6621 2001-02-16  Alexander Larsson  <alexl@redhat.com>
6622
6623         * gtk/gtktreemodelmapping.[ch]:
6624         New files. Implement GtkTreeModelMapping.
6625         
6626         * gtk/Makefile.am:
6627         Add gtktreemodelmapping.[ch].
6628         
6629         * gtk/gtk.h:
6630         Add gtktreemodelmapping.h
6631
6632         * gtk/treestoretest.c:
6633         Test the GtkTreeModelMapping
6634
6635 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
6636
6637         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
6638         have a demo, we might as well pass in real values.  Thanks to
6639         clahey for pointing this out.
6640
6641 2001-02-14  Havoc Pennington  <hp@pobox.com>
6642
6643         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
6644         "static" to a private function
6645         (gtk_image_menu_item_class_init): remove destroy handler,
6646         add "image" object property
6647
6648 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
6649
6650         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
6651         Add a shortcut if the window and the current clip_region doesn't
6652         overlap. This is needed when there are a lot of windows in a
6653         window. The layout test in testgtk is a good test.
6654
6655         * gdk/linux-fb/gdkwindow-fb.c:
6656         Whitespace fix.
6657
6658 2001-02-13  Sven Neumann  <sven@convergence.de>
6659
6660         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
6661
6662 2001-02-13  Alexander Larsson  <alexl@redhat.com>
6663
6664         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
6665         Don't reference last_cursor if it is null. Fixes crash when rotating
6666         the screen before having moved the mouse.
6667
6668         * gdk/linux-fb/gdkcc-fb.c: Zapp!
6669
6670         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
6671
6672         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
6673         when using 90 or 270 degrees rotation.
6674
6675 2001-02-12  Havoc Pennington  <hp@pobox.com>
6676
6677         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
6678         it always set the foreground, even if we were only using
6679         a stipple.
6680         (gdk_draw_layout_line_with_colors): new function, allow
6681         override colors
6682         (gdk_draw_layout_with_colors): new function, allow override
6683         colors
6684         (gdk_pango_layout_line_get_clip_region): function to get the clip
6685         region for a logical text range
6686         (gdk_pango_layout_get_clip_region): get the clip region for a
6687         logical text range
6688
6689         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
6690         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
6691         the right number of arguments.
6692
6693         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
6694         enhance the function to check that node data corresponds to a 
6695         view still belonging to the tree.
6696
6697         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
6698         GtkTreePath
6699         (gtk_tree_view_inserted): ditto
6700         (gtk_tree_view_child_toggled): ditto
6701
6702         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
6703         simplify this code.
6704
6705         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
6706         a PangoAttrList
6707
6708         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
6709
6710         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
6711
6712         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
6713         size in the size request 
6714         (gtk_menu_bar_size_allocate): consider toggle size here
6715
6716         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
6717         that displays a widget in the toggle slot
6718
6719         * gtk/testgtk.c: test GtkImageMenuItem
6720
6721         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
6722         
6723         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
6724         request and allocation
6725
6726         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
6727
6728         * gtk/gtkcheckmenuitem.c
6729         (gtk_check_menu_item_toggle_size_request): ditto
6730         
6731 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
6732
6733         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
6734         reference.
6735
6736         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
6737         and refuse to initialize GTK+ if they fail.
6738
6739 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
6740
6741         * configure.in: Add check for gtk-doc version.
6742
6743 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
6744
6745         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
6746         where the xpad/ypad was only being used on one side!
6747
6748 2001-02-11  Tor Lillqvist  <tml@iki.fi>
6749
6750         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
6751         function, copied from X11 version.
6752
6753         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
6754         DestroyCursor failures. The reason for the problem (despite the
6755         inconsistent messages from GetLastError()) was that
6756         DestroyCursor() cannot be called while a cursor is set in a
6757         window. Set the new cursor first and then destroy the old one.
6758         Thanks to jpe@archaeopteryx.com.
6759
6760         * gdk/win32/gdkcc-win32.c: Remove.
6761
6762         * gdk/win32/Makefile.am: Remove from here, too.
6763         
6764         * gdk/gdk.def
6765         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
6766
6767         * gtk/gtk.def
6768         * gtk/makefile.mingw.in: Updates.
6769
6770 2001-02-08  Havoc Pennington  <hp@redhat.com>
6771
6772         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
6773         add a widget to a bin that already has a child.
6774
6775         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
6776
6777         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
6778         
6779         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
6780
6781         * gdk/gdk.h: remove gdkcc.h
6782
6783         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
6784
6785         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
6786         GdkPixbuf, since the previous implementation was GdkColorContext
6787         dependent.
6788
6789         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
6790         
6791 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
6792
6793         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
6794         a sane value!
6795
6796 2001-02-08  Havoc Pennington  <hp@redhat.com>
6797
6798         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
6799         lighten them.
6800
6801 2001-02-08  Havoc Pennington  <hp@redhat.com>
6802
6803         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
6804         validation idle
6805
6806         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
6807         cell renderer
6808
6809         * demos/pixbuf-demo.c (timeout): remove deprecated
6810         gtk_widget_draw
6811
6812         * demos/testpixbuf-save.c (main): remove deprecated
6813         gtk_drawing_area_size
6814
6815         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
6816         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
6817         at the start of the allocation.
6818         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
6819         unsetup or NULL model.
6820
6821         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
6822         even/odd/sorted cells in the tree view.
6823
6824         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
6825         bugfixes
6826
6827         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
6828         backgrounds with draw_flat_box using different detail for even/odd
6829         rows.
6830
6831         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
6832         row, so we can draw the alternating colors thing
6833
6834         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
6835         property from a synonym property, notify for the synonym.
6836         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
6837         (gtk_text_tag_get_property): Always return the font, even if
6838         all its fields aren't set
6839
6840         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
6841         store the attr list; it leaves us with no way to change attributes
6842         in _render according to the render flags, and no way to implement
6843         get_property. Instead store all the specific text attributes. 
6844         Separate whether an attribute is enabled from its value. Sync all
6845         properties with GtkTextTag, make them all consistent, etc.
6846
6847         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
6848         renderers can highlight the sort row/column     
6849
6850         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
6851         accessor functions to get values; this has the side effect of
6852         showing up which accessor functions were missing. Added those.
6853
6854         * gtk/gtktreeviewcolumn.h: Replace set_justification with
6855         set_alignment, to be consistent with GtkLabel, GtkMisc
6856
6857         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
6858         arrow.
6859
6860         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
6861
6862         * gtk/gtktreesortable.h: updates in here
6863
6864 2001-02-07  Sven Neumann  <sven@convergence.de>
6865
6866         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
6867         pango dimensions after painting the background. We used to draw
6868         gigantic flat boxes here.
6869
6870 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
6871
6872         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
6873         error introduced with earlier commit) (pointed out by
6874         Ollie Lho)
6875
6876 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
6877
6878         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
6879         which are no longer necessary.
6880
6881 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
6882
6883         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
6884
6885 2001-02-04  Tor Lillqvist  <tml@iki.fi>
6886
6887         * gdk/gdk.def
6888         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
6889         Provide dummy implementations.
6890
6891 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
6892
6893         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
6894
6895         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
6896         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
6897         deprecated this function.
6898
6899         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
6900         argument.
6901
6902 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
6903
6904         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
6905
6906 2001-02-03  Havoc Pennington  <hp@pobox.com>
6907
6908         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
6909         Mikael Hermansson with patch from Mikael (if there was a toggle
6910         start one after the first character in the range, this function
6911         was broken). Bug #50380
6912
6913 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
6914
6915         * configure.in: Remove confusing comment about X11.
6916
6917 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
6918
6919         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
6920         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
6921         
6922 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
6923
6924         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
6925         it breaks things on BSD. If you want to compile GTK+ with
6926         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
6927         when configuring, since GTK+ simply can't be "pure ANSI" 
6928         in the header files it uses. (#8170, Greg Hudson)
6929
6930 2001-02-02  Havoc Pennington  <hp@redhat.com>
6931
6932         * gtk/gtkwindow.c: docs
6933
6934         * gtk/gtkwidget.c: docs
6935         (gtk_widget_set_colormap): add a reference to the colormap
6936         (gtk_widget_get_default_colormap): add a reference to the colormap
6937
6938         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
6939
6940         * gtk/gtktextiter.c: docs
6941
6942         * gtk/gtkmain.c (gtk_propagate_event): docs
6943
6944         * gtk/gtkpaned.c (gtk_paned_get_position): docs
6945         (gtk_paned_set_position): docs
6946
6947         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
6948         sort interface, no implementation yet.
6949
6950         * demos/testpixbuf.c (new_testrgb_window): replace
6951         gtk_drawing_area_size() with gtk_widget_set_usize()
6952
6953         * demos/testpixbuf-drawable.c (main): ditto
6954         
6955         * gtk/testgtk.c: remove use of GtkStatusbarMsg
6956
6957         * gtk/gtktextbuffer.c: docs
6958
6959         * gtk/gtkstock.c: docs
6960
6961         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
6962
6963         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
6964
6965         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
6966         
6967         * gtk/gtkimage.c: add some docs in here
6968         (gtk_image_size_request): change name of
6969         gtk_widget_render_stock_icon
6970         (gtk_image_get_icon_set): don't dup returned string
6971         (gtk_image_get_icon_set): don't dup returned string
6972
6973         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
6974         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
6975         and gtkiconfactory.h functions
6976
6977         * gtk/gtkiconfactory.c: add some docs in here
6978
6979         * gtk/gtkmain.c (gtk_get_default_language): document
6980         (gtk_get_current_event): document
6981         (gtk_get_current_event_state): document
6982         (gtk_get_event_widget): document
6983
6984         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
6985
6986         * gtk/gtkcontainer.c: Add some documentation
6987         (gtk_container_add): give a more explanatory warning on adding an
6988         already-parented widget, this is kind of a FAQ and also a common
6989         typo that's easier to debug with a nice warning 
6990
6991         * gtk/gtkcellrenderertoggle.c
6992         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
6993         adding this, it's useless
6994         (gtk_cell_renderer_toggle_set_active): remove
6995         (gtk_cell_renderer_toggle_get_radio): add
6996
6997         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
6998         the NULL cell renderer, that doesn't make any sense to me. 
6999
7000         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
7001         demo code should never use deprecated features.
7002
7003         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
7004         code should never use deprecated features.
7005
7006         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
7007         gtk_widget_queue_clear_area deprecated
7008
7009         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
7010         deprecated
7011
7012         * gtk/gtklabel.h: mark gtk_label_get() deprecated
7013
7014         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
7015         a GdkImage deprecated, replaced by new consistently-named
7016         functions       
7017
7018         * gtk/gtkmain.h: Mark gtk_exit() deprecated
7019
7020         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
7021
7022         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
7023         deprecated
7024
7025         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
7026         so it won't appear in docs and confuse people.
7027
7028         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
7029
7030         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
7031         macros deprecated. (can't mark the type itself deprecated, since
7032         GtkProgressBar is not deprecated and we need the type decl to use
7033         GtkProgressBar)
7034
7035         * gtk/gtkpixmap.h: Mark deprecated
7036
7037         * gtk/gtkoldeditable.h: Mark deprecated
7038
7039         * gtk/gtklist.h: Mark deprecated
7040
7041         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
7042         for anything anymore.
7043
7044         * gtk/gtkctree.h: Mark deprecated
7045
7046         * gtk/gtkclist.h: Mark deprecated
7047
7048         * gtk/gtkpreview.h: Mark deprecated
7049
7050         * gtk/gtkpacker.h: Mark deprecated
7051
7052         * gtk/gtktipsquery.h: Mark deprecated
7053
7054         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
7055
7056         * gtk/gtkvruler.h: Add comment that it will move out of GTK
7057
7058         * gtk/gtkhruler.h: Add comment that it will move out of GTK
7059
7060         * gtk/gtkruler.h: Add comment that it will move out of GTK
7061
7062         * gtk/gtkgamma.h: Add comment that it will move out of GTK
7063
7064         * gtk/gtkcurve.h: Add comment that it will move out of GTK
7065
7066 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
7067
7068         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
7069         gdk_colormap_sync private since it was never exported
7070         in a header file.
7071
7072         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
7073         colormap->colors[] for StaticGray, StaticColor colormaps.
7074
7075         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
7076         was being used as if it was image->bits_per_pixel.
7077
7078         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
7079         for the image in the GdkImage structure since it isn't
7080         reconstructable, and we need it to handle packed types
7081
7082         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
7083         the assumption that on Win32 image->bits_per_pixel == image->depth,
7084         always.
7085
7086         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
7087
7088         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
7089         warning message if no converter can be found. 
7090
7091 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
7092
7093         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
7094         chars to isupper() / tolower(). (#567)
7095
7096         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
7097         to clear up 64-bit warnings. (#567)
7098
7099 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
7100
7101         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
7102         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
7103
7104         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
7105         since some people set $(libdir) separately. (#1290, David Kaelbling)
7106
7107 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
7108
7109         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
7110         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
7111         MAXPATHLEN, but the code here depends on a fixed value.)
7112         (#4524)
7113
7114 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
7115
7116         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
7117         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
7118
7119 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
7120
7121         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
7122         viewable there is no way that moving the node will cause the 
7123         focus row to become not viewable, so omit check on the visibility
7124         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
7125
7126 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
7127
7128         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
7129         selection before inserting new text.
7130
7131 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
7132
7133         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
7134         Make the sensitivity of the reparented child track that of
7135         the original parent menu item. (#34218, David Hodson)
7136
7137         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
7138         the case where the current item is destroyed properly.
7139
7140         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
7141         some edge cases with child-less menuitems.
7142         
7143 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
7144
7145         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
7146         key pop down window. (#12074, Jon K Hellan)
7147
7148 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
7149
7150         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
7151         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
7152         The solution here isn't perfect - you get an extraneous
7153         emission of "toggle", which could conceivably confuse an app,
7154         but better than the current situation. LXR search seems to
7155         indicate that no apps in GNOME CVS connect to "toggle".
7156
7157 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
7158
7159         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
7160         gtk_public_h_sources to directly here to avoid warning when
7161         building srcdir != builddir. (#9656)
7162
7163 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
7164
7165         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
7166         handlers in gtkrange.c return the proper values (TRUE == handled)
7167         (#10316).
7168
7169         This is just the tip of the iceberg, but gtkrange.c is the
7170         most common place where the propagation is problematical,
7171         and also a place where it is almost certainly safe to change
7172         this in the stable branch.
7173
7174         (You don't want right click popups on a range control or anything...)
7175
7176 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
7177
7178         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
7179         area on focus out, even if a background pixmap isn't set.
7180         (#13941)
7181         
7182 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
7183
7184         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
7185         to deal with setting the shape properly when scrolling arrows are
7186         turned on, but not visible because there is sufficient space.
7187         (#13432)
7188
7189 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
7190
7191         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
7192         items with submenus, destroy the item along with the submenu.
7193         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
7194         properly.
7195
7196         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
7197         later.
7198
7199 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
7200
7201         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
7202         the focus widget sometimes wasn't drawn with the default if there
7203         was no default widget.
7204
7205         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
7206         unreference pixmaps. 
7207
7208         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
7209         for some extra safety.
7210
7211 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
7212
7213         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
7214         the text of a cell to the old pointer value better, by
7215         copying the new text before freeing the old text. Some code
7216         cleanup. (#8079, Karl Nelson)
7217
7218 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
7219
7220         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
7221         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
7222
7223 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
7224
7225         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
7226         item from a menu, check to see if it matches 
7227         menu->old_active_menu_item, and if so, unref and clear
7228         old_active_menu_item (Patch from Pavel Cisler)
7229
7230         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
7231         menu_shell->active_menu_item, if it is the child being
7232         removed. (Patch based on that of Gene Ragan, #50337)
7233
7234 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
7235
7236         * gdk/linux-fb/gdkselection-fb.c: 
7237         * gdk/linux-fb/gdkcolor-fb.c: 
7238         * gdk/linux-fb/gdkdrawable-fb2.c: 
7239         * gdk/linux-fb/gdkfont-fb.c: 
7240         * gdk/linux-fb/gdkim-fb.c: 
7241         * gdk/linux-fb/gdkinput.c: 
7242         * gdk/linux-fb/gdkkeyboard-fb.c: 
7243         * gdk/linux-fb/gdkmain-fb.c: 
7244         * gdk/linux-fb/gdkrender-fb.c: 
7245         A bunch of whitespace cleanup.
7246         
7247 2001-01-30  Havoc Pennington  <hp@pobox.com>
7248
7249         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
7250         #ifdef GTK_ENABLE_BROKEN.
7251
7252         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
7253         GTK_ENABLE_BROKEN just before including the broken headers.
7254         
7255         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
7256         deprecated types registered.
7257
7258         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
7259         we have to test the broken stuff.
7260
7261         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
7262         
7263 2001-01-30  Havoc Pennington  <hp@redhat.com>
7264
7265         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
7266         here where prev pointer was set to the wrong thing
7267
7268         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
7269         (gtk_tree_path_is_descendant): new function
7270
7271         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
7272         cached length
7273         (gtk_list_store_get_iter): don't modify iter if we can't get the
7274         path.
7275
7276         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
7277         
7278         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
7279         GtkTreeDragDest
7280
7281         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
7282         was causing segfault
7283
7284         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
7285         pointer to NULL
7286
7287         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
7288
7289         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
7290         on returning FALSE
7291         (gtk_list_store_iter_children): ditto
7292         (gtk_list_store_iter_nth_child): ditto
7293         (gtk_list_store_iter_nth_child): ditto
7294         (gtk_list_store_iter_parent): ditto
7295
7296         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
7297         on iter->user_data != NULL instead of silently accepting it.
7298         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
7299         we are returning TRUE.
7300         (gtk_tree_store_iter_children): ditto
7301         (gtk_tree_store_iter_nth_child): ditto
7302         (gtk_tree_store_iter_parent): ditto
7303         (gtk_tree_store_insert): remove handling of parent->user_data ==
7304         NULL, replace with parent == NULL       
7305
7306         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
7307         and a comment explaining things
7308
7309         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
7310         interface support to GtkTreeStore.
7311
7312         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
7313         FALSE if no prev, fix
7314
7315         * gtk/gtktreeview.c (set_source_row): use a row reference
7316         (set_dest_row): use a row reference
7317
7318 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
7319
7320         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
7321         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
7322         (gtk_tree_selection_select_iter): The same as above.
7323
7324 2001-01-26  Havoc Pennington  <hp@redhat.com>
7325
7326         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
7327         which holds a handle to a specific row (particular set of values
7328         in the model, i.e. pointer-identity row).
7329
7330         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
7331         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
7332         Still need to use it for the src/dest row saved on the drag context.
7333
7334 2001-01-26  Havoc Pennington  <hp@redhat.com>
7335
7336         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
7337
7338         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
7339         not offset by TREE_VIEW_HEADER_HEIGHT
7340         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
7341         TREE_VIEW_HEADER_HEIGHT
7342
7343         * configure.in (included_loaders): for me, --with-included-loaders
7344         generates the error "the specified loader yes does not exist",
7345         i.e. the arg defaults to "yes", so change test for value ""
7346         to test for value "yes", and include all loaders in that case.
7347
7348         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
7349
7350         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
7351         handle TREE_VIEW_VERTICAL_SEPARATOR
7352         (gtk_tree_view_bin_expose): fix to consider the row offset as
7353         pointing halfway into vertical separator.       
7354         (gtk_tree_view_draw_node_focus_rect): ditto
7355
7356         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
7357         --gtk-debug=updates, which causes gdk_window_set_debug_updates
7358         (TRUE) to be called.
7359
7360         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
7361         debug mode where the invalid region is colored in on invalidate,
7362         so you can see the flicker and know whether your redraw code is 
7363         doing a good job.
7364
7365         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
7366         tree window coordinates (clip rect is in tree window coords)
7367
7368         * gtk/Makefile.am: add gtktreednd.[hc]
7369
7370         * gtk/gtkliststore.c: implement gtktreednd interfaces.
7371
7372         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
7373         drag-and-drop data operations on a model (so we can set up tree
7374         drag-and-drop automatically)
7375
7376         * gtk/testgtk.c: Add a window to change sensitivity in the
7377         GtkLabel test; add a way to change the entry frame in GtkEntry
7378         test
7379
7380         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
7381         (gtk_entry_get_has_frame): new functions to remove the frame
7382         around an entry
7383         (gtk_entry_size_request): shrink requisition if no frame
7384         (gtk_entry_draw_focus): don't draw frame if no frame
7385
7386         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
7387         checks inside a cell renderer
7388         (gtk_default_draw_option): ditto for options
7389
7390         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
7391         children from the alignment, not the button
7392         (gtk_tree_view_column_init): ref/sink the column, to emulate
7393         GObject refcounting.
7394
7395         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
7396         
7397         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
7398         Use theme functions to draw the toggles 
7399
7400         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
7401
7402         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
7403         GdkPangoAttrEmbossed to use in rendering insensitive text
7404
7405         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
7406
7407         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
7408         using new GDK features
7409         
7410 2001-01-24  Alexander Larsson  <alexl@redhat.com>
7411
7412         * gtk/gtkimage.c:
7413         Splitted gtk_image_clear into gtk_image_clear() and
7414         gtk_image_reset(). Call gtk_image_clear() in ::destroy
7415         to avoid leaks.
7416
7417         * gtk/gtklabel.c (set_markup):
7418         Don't leak text.
7419
7420         * gtk/gtktextlayout.c:
7421         Always free display->shaped_objects.
7422
7423         * gtk/testgtk.c (create_clist):
7424         Don't leak custom style.
7425
7426 2001-01-23  Alexander Larsson  <alexl@redhat.com>
7427
7428         * gtk/gtkcolorsel.c (grab_color_at_mouse):
7429         Don't leak image. Simplify using gdk_colormap_query_color().
7430         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
7431
7432         * linux-fb/gdkcolor-fb.c:
7433         Implemented gdk_colormap_query_color.
7434
7435 2001-01-23  Alexander Larsson  <alexl@redhat.com>
7436
7437         * linux-fb/gdkcursor-fb.c:
7438         Don't leak built-in cursors.
7439
7440         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
7441         Don't leak tmp_points.
7442
7443         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
7444         Don't modify desc. Don't leak font if the PangoFont
7445         isn't found.
7446         
7447         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
7448         Free dash_list.
7449
7450         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
7451         Don't leak string.
7452         
7453 2001-01-20  Havoc Pennington  <hp@pobox.com>
7454
7455         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
7456         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
7457         me, matches Pango
7458
7459 2001-01-22  Havoc Pennington  <hp@redhat.com>
7460
7461         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
7462
7463         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
7464
7465         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
7466         Remove, move back to gdk-pixbuf
7467
7468         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
7469         to all the word functions
7470
7471         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
7472         before doing anything on NULL layout or if we don't have the focus
7473
7474         * gtk/testtext.c (fill_example_buffer): "justification"
7475
7476         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
7477         to be called "justification" not "justify"
7478
7479         * demos/gtk-demo/textview.c (create_tags): "justification"
7480         
7481         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
7482
7483 2001-01-22  Alexander Larsson  <alexl@redhat.com>
7484
7485         * gdk/gdkwindow.c (gdk_window_invalidate_region):
7486         Don't leak visible_region. Use visible_region instead of region.
7487         
7488         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
7489         Don't do extra gdk_drawable_ref(). This is not X.
7490         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
7491         gdk_fb_focused_window is ref:ed.
7492         (gdk_fb_window_send_crossing_events): Watch out for destroyed
7493         windows.
7494
7495 2001-01-22  Alexander Larsson  <alexl@redhat.com>
7496
7497         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
7498         Don't leak the PangoFontDescriptor.
7499
7500 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
7501
7502         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
7503         when not realized.
7504         (gtk_tree_view_scroll_to_cell): Make work when not realized.
7505         (gtk_tree_view_realize): add scroll_to support
7506         (gtk_tree_view_finalize): add a finalize method.  Populate.
7507         (gtk_tree_view_insert_column): ref and sink the column.
7508         (gtk_tree_view_append_column): ref and sink the column.
7509         (gtk_tree_view_queue_draw_node): New function to handle redrawing
7510         individual nodes.  Should make the code much more efficient, if
7511         actually used.
7512
7513 2001-01-19  Havoc Pennington  <hp@redhat.com>
7514
7515         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
7516         byte_offset variable was being used to mean both "offset into
7517         layout" and "offset into buffer line" which was no longer true
7518         with addition of preedit string; fix
7519
7520 2001-01-19  Havoc Pennington  <hp@redhat.com>
7521
7522         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
7523
7524         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
7525         function
7526
7527         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
7528         implement
7529
7530         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
7531         scroll_to_cell, matches TextView scroll functions better
7532         (gtk_tree_view_tree_to_widget_coords): new function
7533         (gtk_tree_view_widget_to_tree_coords): new function
7534         (gtk_tree_view_get_visible_rect): new function
7535         (gtk_tree_view_get_path_at_pos): accept negative coordinates
7536         (gtk_tree_view_draw_node_focus_rect): new function moved from
7537         draw_focus, also, use width of bin_window as width of the focus
7538         rect
7539         (gtk_tree_view_expand_row): fix bug where it didn't recognize
7540         already-expanded rows
7541         (gtk_tree_view_get_cell_rect): new function
7542         (gtk_tree_view_get_path_at_pos): return the click position
7543         relative to the passed-in cell
7544         (gtk_tree_view_set_expander_column): new function
7545
7546         * configure.in: remove gtk-config-2.0 chmod
7547
7548         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
7549         and properly handle drags with targets we don't understand
7550         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
7551         scrolling anyway
7552         (gtk_text_view_drag_drop): stop scrolling here though, and set the
7553         mark invisible
7554
7555         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
7556         function
7557         (gtk_drag_dest_get_target_list): new function
7558         (gtk_drag_dest_set_target_list): new function
7559         
7560         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
7561
7562         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
7563         related to drag-and-drop
7564
7565 2001-01-19  Alexander Larsson  <alexl@redhat.com>
7566
7567         * gdk/linux-fb/gdkprivate-fb.h:
7568         Define EMULATE_GDKFONT.
7569         Add extra pango_font stuff to GfkFontPrivate.
7570         
7571         * gdk/linux-fb/gdkdrawable-fb2.c:
7572         * gdk/linux-fb/gdkfont-fb.c:
7573         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
7574         emulation using PangoFont.
7575
7576 2001-01-17  Havoc Pennington  <hp@pobox.com>
7577
7578         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
7579         all the non-deprecated set_foo functions. Added missing object
7580         properties, and added g_object_notify() to setters. 
7581         Wrote docs.
7582         
7583 2001-01-18  Tor Lillqvist  <tml@iki.fi>
7584
7585         * gtk/gtkmain.c
7586         * gtk/gtkrc.c: (Win32) Use the new
7587         g_win32_get_package_installation_(sub)directory() functions.
7588
7589         * config.h.win32.in: New file.
7590         
7591         * config.h.win32: Removed.
7592
7593         * configure.in: Output config.h.win32.
7594
7595         * Makefile.am: Add it to EXTRA_DIST.
7596
7597         * gtk/gtk.def: Update.
7598
7599 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
7600
7601         * gtk/gtklabel.c (gtk_label_size_request): Set the
7602         attributes onto the PangoLayout even if they are newly
7603         created from label->pattern.
7604
7605 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
7606
7607         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
7608
7609         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
7610         structures in functions. Fixes bug where gtk_dataset_*
7611         was accidentally still being used in one place, causing
7612         every dest side event to be treated independently.
7613
7614         * gtk/gtkdnd.c: Remove last vestages of handling
7615         ::draw (fixes warning)
7616         
7617         * gtk/gtkentry.[ch]: Add drag and drop support.
7618
7619         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
7620         new function gtk_check_drag_threshhold() for checking
7621         to check if (dx,dy) has exceeded the threshhold for starting
7622         a drag and use it everywhere.
7623
7624 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
7625
7626         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
7627         add -I{includedir}/gtk-2.0.
7628
7629         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
7630         gdk/gdk-pixbuf.h: Doc fixups.
7631         
7632         * gtk/gtkobject.h: Remove trailing , from enum
7633
7634 2001-01-17 Alexander Larsson <alexl@redhat.com> 
7635
7636         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
7637         Doh! Mixed up x and y.
7638
7639         * gdk/linux-fb/gdkglobals-fb.c:
7640         Removed gdk_fb_pointer_grab_window_events,
7641         added _gdk_fb_pointer_grab_owner_events and
7642         _gdk_fb_keyboard_grab_owner_events.
7643
7644         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
7645         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
7646         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
7647         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
7648         Send crossing events after ungrab finished.
7649         (gdk_keyboard_grab): Set ..._owner_events
7650         (type_masks): Move out of function.
7651         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
7652         gdk_fb_keyboard_event_window): New functions, return the
7653         window an event should be targeted at. Handles grabs and
7654         event propagation. Can return NULL.
7655         (gdk_event_make): Remove event_mask checking. Now always
7656         returns an event.
7657                 
7658         * gdk/linux-fb/gdkkeyboard-fb.c:
7659         * gdk/linux-fb/gdkproperty-fb.c:
7660         * gdk/linux-fb/gdkselection-fb.c:
7661         Use new event_window/gdk_event_make() behaviour.
7662         
7663         * gdk/linux-fb/gdkmouse-fb.c:
7664         Use new event_window/gdk_event_make() behaviour.
7665         Only send motion events if in the same window.
7666         If grabbed, use cursor from window if sibling of grabbed
7667         window, and cursor from grabbed window otherwise.
7668
7669         * gdk/linux-fb/gdkprivate-fb.h:
7670         Update gdk_fb_window_send_crossing_events, gdk_event_make
7671         and grab varaible declarations. Add gdk_fb_*_event_window().
7672
7673         * gdk/linux-fb/gdkwindow-fb.c:
7674         Use new event_window/gdk_event_make() behaviour.
7675         Keep correct track of focus window.
7676         (gdk_window_set_events): Set all specific button motion masks
7677         if GDK_BUTTON_MOTION_MASK set.
7678
7679         * gtk/gtkdnd.c (gtk_drag_update):
7680         Free info->last_event if gdk_drag_motion returned FALSE.
7681
7682 2001-01-16  Tor Lillqvist  <tml@iki.fi>
7683
7684         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
7685         Eliminate redraws when input-only windows are shown or
7686         hidden. Thanks to jpe@archaeopteryx.com.
7687
7688 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
7689
7690         * docs/faq/gtk-faq.sgml: FAQ update:
7691           - Update to bugzilla
7692           - Add GTK+ and security/SUID/SGID
7693           - Add DnD question
7694
7695 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
7696
7697         * gdk/linux-fb/gdkdnd-fb.c:
7698         Some cleanups.
7699         
7700 2001-01-15  Havoc Pennington  <hp@pobox.com>
7701
7702         * tests/testtreeview.c: add test stuff for CellRendererToggle
7703
7704         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
7705         accessor
7706
7707         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
7708         only toggle on button press (would do release like GtkButton, but
7709         we'd need implicit grab code for treeview cells)
7710
7711 2001-01-16  Tor Lillqvist  <tml@iki.fi>
7712
7713         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
7714
7715         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
7716         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
7717
7718         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
7719         to g_{locale,filename}_{to,from}_utf8 to match current API.
7720
7721         * gtk/makefile.msc.in (gtk_OBJECTS)
7722         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
7723
7724         * gtk/gtk.def: Update.
7725
7726 2001-01-15  Tor Lillqvist  <tml@iki.fi>
7727
7728         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
7729         implementaion that more closely mimics the events that an X server
7730         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
7731         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
7732         with nested preview widgets, for instance, more responsive when
7733         you move the mouse quickly into them.
7734         (find_window_for_pointer_event): Make it actually compile.
7735         (gdk_event_translate): Set send_event to the value of
7736         InSendMessage (). This doesn't really mean the same as X11's
7737         send_event flag, but is close enough, says jpe@archaeopteryx.com
7738
7739 2001-01-15  Alexander Larsson  <alexl@redhat.com>
7740
7741         * gdk/linux-fb/gdkdnd-fb.c:
7742         Implemented drag and drop.
7743         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
7744         when it tries to free and then copy the same event (info->last_event).
7745         I am not sure about why this happens, but will continue looking.
7746
7747 2001-01-15  Alexander Larsson  <alexl@redhat.com>
7748
7749         * gdk/linux-fb/gdkwindow-fb.c:
7750         Use gdk_window_invalidate_rect instead of
7751         gdk_window_invalidate_rect_clear to minimise flashing.
7752         When hiding windows you need to clear the root window though.
7753
7754 2001-01-15  Alexander Larsson  <alexl@redhat.com>
7755
7756         * gdk/linux-fb/gdkdrawable-fb2.c:
7757         For optization, add an full_shapes argument to gdk_fb_clip_region.
7758         If this is false, only the cliprects of the shapes are used.
7759
7760         * gdk/linux-fb/gdkprivate-fb.h:
7761         Export gdk_fb_window_peek_shape.
7762         Add full_shapes to gdk_fb_clip_region.
7763
7764         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
7765         When moving a window, don't clear everything under the it, just the
7766         root window. Makes stuff faster and flash less.
7767         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
7768         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
7769         offset of the shape.
7770         
7771
7772 2001-01-12  Havoc Pennington  <hp@redhat.com>
7773
7774         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
7775         current invalid region, fixes redraw bug while scrolling the 
7776         text widget
7777
7778         * gtk/gtktextview.c, gtk/gtktextview.h:
7779         Rearrange the scrolling/validation/etc. code in a major way, 
7780         so it seems to make sense to me. Probably isn't genuinely that
7781         much better, but...
7782
7783         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
7784         notifies
7785
7786         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
7787
7788 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
7789
7790         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
7791         Hide mouse pointer while rotation. Show it afterwards.
7792
7793 2001-01-12  Alexander Larsson  <alexl@redhat.com>
7794
7795         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
7796         windows in consideration when generating clip region.
7797
7798         * gdk/linux-fb/gdkfb.h:
7799         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
7800
7801         * gdk/linux-fb/gdkprivate-fb.h:
7802         Add shape to GdkWindowFBDatat.
7803         exported gdk_fb_window_get_abs_shape().
7804         removed gdk_fb_draw_lines declaration.
7805
7806         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
7807         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
7808         send focus changes when there is a grabbed window.
7809         (gdk_window_get_pointer): Handle shaped windows.
7810         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
7811         (gdk_fb_window_peek_shape): Returns the shape for a window,
7812         handles GDK_FB_USE_CHILD_SHAPE.
7813         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
7814         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
7815         (gdk_window_shape_combine_mask): Implement.
7816
7817         * gtk/gtkwindow-decorate.c:
7818         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
7819         setting the shape of a window makes the window transparent.
7820
7821 2001-01-11  Havoc Pennington  <hp@redhat.com>
7822
7823         * gtk/gtktreemodelsimple.h: Oops, broke some macros
7824
7825 2001-01-10  Havoc Pennington  <hp@redhat.com>
7826
7827         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
7828         add this function, bug 40251
7829
7830         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
7831         of type macro   
7832
7833 2001-01-11  Alexander Larsson  <alexl@redhat.com>
7834
7835         * acconfig.h:
7836         Added ENABLE_SHADOW_FB
7837
7838         * configure.in:
7839         Added --disable-shadowfb
7840
7841         * gdk/linux-fb/gdkcursor-fb.c:
7842         Update shadowfb when updating cursor
7843
7844         * gdk/linux-fb/gdkdrawable-fb2.c:
7845         Added wrappers for shadowfb that calls  the normal drawable
7846         methods, but calls gdk_shadow_fb_update(bounding box) when
7847         GdkWindows are drawed to.
7848         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
7849         which also returns the bounding box.
7850
7851         * gdk/linux-fb/gdkfb.h:
7852         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
7853
7854         * gdk/linux-fb/gdkgeometry-fb.c:
7855         Update shadowfb when scrolling window.
7856
7857         * gdk/linux-fb/gdkglobals-fb.c:
7858         Add _gdk_fb_screen_angle.
7859         
7860         * gdk/linux-fb/gdkkeyboard-fb.c:
7861         Test code for screen rotation. Shift-F2 in the xlate driver
7862         rotates the screen.
7863
7864         * gdk/linux-fb/gdkmain-fb.c:
7865         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
7866
7867         * gdk/linux-fb/gdkmouse-fb.c:
7868         Use fb_width/height instead of modeinfo.xres/yres.
7869
7870         * gdk/linux-fb/gdkprivate-fb.h:
7871         Added fb_men, fb_width, fb_height & fb_stride. When using
7872         shadow fb these can differ from the framebuffer stuff.
7873         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
7874         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
7875         _gdk_fb_screen_angle. Removed CM, RP.
7876
7877         * gdk/linux-fb/gdkrender-fb.c:
7878         Added code for shadowfb handling and screen rotation using
7879         shadowfb.
7880
7881         * gdk/linux-fb/gdkwindow-fb.c:
7882         Use fb_mem, fb_stride, fb_width, fb_height.
7883         Added recompute_rowstride to reset the rowstride of all windows.
7884         Added gdk_fb_recompute_all() which recomputes rootwindow size,
7885         window abs positions and window rowstrides. Usefull when the
7886         rotation has changed.
7887
7888 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
7889
7890         * docs/faq/gtk-faq.sgml: update to make web site updating easier
7891
7892 2001-01-10  Havoc Pennington  <hp@redhat.com>
7893
7894         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
7895         where sibling == iter
7896         (gtk_tree_store_insert_after): handle sibling == iter
7897         (gtk_tree_store_prepend): remove stamp checks
7898         (gtk_tree_store_insert_before): ditto
7899         (gtk_tree_store_append): ditto
7900         (gtk_tree_store_get_path): ditto
7901         (gtk_tree_store_get_value): ditto
7902         (gtk_tree_store_iter_has_child): ditto
7903         (gtk_tree_store_iter_n_children): ditto
7904         (gtk_tree_store_iter_nth_child): ditto
7905         (gtk_tree_store_insert_after): ditto
7906         (gtk_tree_store_is_ancestor): ditto
7907         (gtk_tree_store_iter_depth): ditto
7908         (gtk_tree_store_insert_before): assert that sibling's parent is
7909         the same as the passed-in parent
7910         (gtk_tree_store_insert_after): assert that sibling's parent is
7911         the same as the passed-in parent
7912
7913         
7914         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
7915         function to get the first iterator in a model
7916         
7917         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
7918         conventionally the "root" in this sense is just NULL afaict.
7919
7920         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
7921         where sibling == iter
7922         (gtk_list_store_insert_after): handle case where sibling == iter
7923
7924         * tests/testtreeview.c (run_automated_tests): fairly lame basic
7925         automated tests for ListStore, TreeStore
7926
7927         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
7928         (gtk_list_store_insert): update tail pointer, and fix it to work
7929         (gtk_list_store_insert_before): update tail pointer, and fix it to work
7930         (gtk_list_store_append): use tail to be faster
7931         (gtk_list_store_prepend): fix it, update tail pointer
7932         (gtk_list_store_insert_after): fix it, update tail pointer
7933
7934         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
7935         the list
7936
7937 2001-01-09  Havoc Pennington  <hp@redhat.com>
7938
7939         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
7940         is NULL due to a pending resize
7941
7942         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
7943         column width to values less than 1
7944
7945         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
7946         width to be between min/max width, and still set the width 
7947         even if autosize is turned on, so the tree view can use this 
7948         function in order to autosize.
7949         (gtk_tree_view_column_init): set initial width to 1 not 0
7950
7951         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
7952         setter function to modify column width, so we get notification
7953         (gtk_tree_view_insert_iter_height): ditto
7954         (gtk_tree_view_calc_size): ditto
7955         (gtk_tree_view_check_dirty): ditto
7956
7957         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
7958         properties to change all the interesting attributes of the tree
7959         view column.
7960         (gtk_tree_view_column_set_header_clickable): rename set_clickable
7961         (gtk_tree_view_column_get_clickable): add
7962         (gtk_tree_view_column_set_cell_renderer): don't unset the current
7963         attributes; assume a cell renderer with equivalent object
7964         properties has been swapped in. Do g_object_notify().
7965         (gtk_tree_view_column_set_visible): g_object_notify
7966         (gtk_tree_view_column_get_sizing): rename from get_col_type
7967         (gtk_tree_view_column_set_sizing): g_object_notify
7968         (gtk_tree_view_column_set_width): add g_object_notify
7969         (gtk_tree_view_column_set_min_width): ditto
7970         (gtk_tree_view_column_set_max_width): ditto
7971         (gtk_tree_view_column_set_title): ditto
7972         (gtk_tree_view_column_set_clickable): ditto
7973         (gtk_tree_view_column_set_widget): ditto
7974         (gtk_tree_view_column_set_justification): ditto
7975
7976 2001-01-09  Havoc Pennington  <hp@redhat.com>
7977
7978         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
7979         there are no rows in the model
7980
7981         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
7982         NULL, then return the start of the list
7983
7984         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
7985         if we can't get any rows from an empty model 
7986
7987         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
7988         extraneous * after function pointer typedef usage
7989
7990         * Makefile.am: don't specify full path to cp and rm
7991
7992         * gtk/gtkcellrenderertextpixbuf.c
7993         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
7994         NULL before dereferencing, fixes a segfault that happened from
7995         time to time
7996
7997         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
7998         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
7999         and reindent the function
8000         (gtk_cell_renderer_pixbuf_get_size): indentation
8001
8002         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
8003         we quit it
8004         (gtk_dialog_add_buttons_valist): add g_return_if_fail
8005         (gtk_dialog_set_default_response): New function, to set default
8006         button
8007         (gtk_dialog_set_response_sensitive): New function, to set 
8008         sensitivity of buttons
8009
8010         * gtk/gtkcellrendererpixbuf.c
8011         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
8012         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
8013
8014         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
8015         handle any G_TYPE_OBJECT subclass, not just the base class, and 
8016         also boxed types.
8017         (_gtk_tree_data_list_value_to_node): ditto
8018
8019         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
8020         --gtk-debug=tree
8021
8022         * gtk/gtkmain.c: add GTK_DEBUG_TREE
8023
8024         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
8025
8026 2001-01-09  Tor Lillqvist  <tml@iki.fi>
8027
8028         * gdk/win32/gdkevents-win32.c: Implement better mouse
8029         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
8030         (find_window_for_pointer_event): New function.
8031         (gdk_event_translate): Use it when handling mouse events.
8032
8033 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
8034
8035         * configure.in:
8036         Added --with-included-loaders option
8037
8038         * gdk-pixbuf/Makefile.am:
8039         * gdk-pixbuf/gdk-pixbuf-io.c:
8040         Add support for including selected gdk-pixbuf loaders only.
8041
8042         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
8043         gtk_window_set_has_frame):
8044         Added inline documentation.
8045
8046         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
8047         * docs/reference/gdk/tmpl/windows.sgml:
8048         Added inline documentation.
8049
8050 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
8051
8052         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
8053         realizing buttons that have already been realized.
8054
8055 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
8056
8057         * tests/testtreeview.c (main): Show menu items before adding to
8058         option menu.
8059
8060         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
8061         around if we kill them.
8062
8063         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
8064         Return if we pass in a NULL model.
8065
8066 2001-01-08  Havoc Pennington  <hp@redhat.com>
8067
8068         * tests/testtreeview.c: hack on this some
8069
8070         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
8071         gtk_tree_store_set_valist, v is for arrays, valist for varargs
8072         list
8073         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
8074
8075         * gtk/gtkliststore.h: Add varargs set() and get() convenience
8076         functions
8077
8078 2001-01-08  Alexander Larsson  <alexl@redhat.com>
8079
8080         * gtk/gtkwindow-decorate.[hc]:
8081         * gtk/Makefile.am:
8082         New files. Contains an implementation of a minimal WM for
8083         linux-fb.
8084
8085         * gtk/gtkwindow.h:
8086         Add the possibility for GtkWindows to specify a frame. This
8087         is used for the window decoration code, but could concievably
8088         be used for X programs too (xmms style windows).
8089         GtkWindow->frame is the toplevel window if the window is framed.
8090         The signal frame_event gets all events that are targeted to
8091         GtkWindow->frame.
8092         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
8093         
8094         * gtk/gtkwindow.c:
8095         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
8096         Call out to gtkwindow-decorate.c for WM support in linx-fb.
8097
8098 2001-01-08  Alexander Larsson  <alexl@redhat.com>
8099
8100         * docs/README.linux-fb:
8101         Correct filename ~/.pangoft2_aliases
8102
8103         * gdk/gdkwindow.h:
8104         Added new function gdk_window_get_decorations.
8105
8106         * gdk/linux-fb/gdkfb.h:
8107         Removed _gdk_window_get_decorations declaration.
8108         Renamed _gdk_window_set_child_handler to
8109         gdk_fb_window_set_child_handler.
8110
8111         * gdk/linux-fb/gdkwindow-fb.c:
8112         Renamed _gdk_window_set_child_handler to
8113         gdk_fb_window_set_child_handler.
8114
8115         * gdk/x11/gdkwindow-x11.c:
8116         New function gdk_window_get_mwm_hints().
8117         Implemented gdk_window_get_decorations.
8118
8119         * docs/reference/gdk/tmpl/windows.sgml:
8120         * docs/reference/gdk/gdk-sections.txt:
8121         Added gdk_window_get_decorations docs.
8122         
8123 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
8124
8125         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
8126         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
8127         gdk_fb_window_send_crossing_events):
8128         Possibly send focus events when the mouse moves from one
8129         window to another.
8130
8131 2001-01-07  Tor Lillqvist  <tml@iki.fi>
8132
8133         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
8134         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
8135         to match current API.
8136
8137         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
8138         environment variable is set, don't call g_error when on a
8139         palettized (PseudoColor) display. Some people want to use GTK+ 
8140         in 256-colour mode even though works only partially.
8141
8142         * gdk/gdk.def
8143         * gtk/gtk.def
8144         * gtk/makefile.mingw.in: Update.
8145
8146 2001-01-05  Havoc Pennington  <hp@redhat.com>
8147
8148         * tests/testtreeview.c: hack on this a bit
8149
8150         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
8151         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
8152
8153         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
8154         was spelled incorrectly
8155         (GTK_IS_TREE_MODEL_SIMPLE): ditto
8156
8157         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
8158         from gtk_tree_view_set_headers_active   
8159
8160         * gtk/gtktexttag.c:
8161         (gtk_text_tag_get_property): handle PROP_DIRECTION
8162         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
8163         properties, bug 40235
8164
8165         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
8166         forward_to_line_end
8167
8168 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
8169
8170         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
8171         modules/input/gtkimcontextxim.c: Adapt to new prototypes
8172         for unicode,locale,filename conversion functions.
8173
8174 2001-01-05  Havoc Pennington  <hp@redhat.com>
8175
8176         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
8177         broken if called on the first position in the buffer.
8178
8179         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
8180         forward_to_delimiters to be called only if we aren't already at
8181         the delimiters.
8182
8183 2001-01-05  Havoc Pennington  <hp@redhat.com>
8184
8185         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
8186
8187 2001-01-05  Alexander Larsson  <alexl@redhat.com>
8188
8189         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
8190         colormap in here. Sync from X port.
8191         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
8192         Sync from X port.
8193         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
8194         This happens now and then, and i don't think it is a bug.
8195         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
8196         != endpoint.
8197         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
8198         GDK_LINE_SOLID.
8199
8200         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
8201         some of the fields filled in at least.
8202
8203         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
8204         miLineArcD is no more, remove it from the function definition.
8205
8206 2001-01-04  Havoc Pennington  <hp@redhat.com>
8207
8208         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
8209         this
8210
8211         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
8212         user_data instead of tree_node
8213
8214         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
8215         TREE_VIEW_COLUMN_SIZE
8216
8217         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
8218         "size" field to "width" finishes bug 40061
8219
8220         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
8221         for bitfields, bug 40268
8222
8223 2001-01-04  Havoc Pennington  <hp@redhat.com>
8224
8225         Rename some stuff:
8226         
8227         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
8228
8229         s/GtkModelSimple/GtkTreeModelSimple/g;
8230         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
8231         s/gtk_model_simple/gtk_tree_model_simple/g;
8232         s/gtkmodelsimple/gtktreemodelsimple/g;
8233
8234         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
8235
8236         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
8237         s/column_set_col_type/column_set_sizing/g;
8238
8239         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
8240         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
8241
8242         s/GtkCellRendererType/GtkCellRendererState/g;
8243         
8244         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
8245         (gtk_cell_renderer_toggle_class_init): change "state" property to
8246         "active", to match GtkToggleButton
8247         (gtk_cell_renderer_toggle_get_active): new function, bug
8248         40269
8249         (gtk_cell_renderer_toggle_set_active): new function
8250         (gtk_cell_renderer_toggle_set_property): route changes to toggle
8251         state through gtk_cell_renderer_set_active
8252
8253 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
8254
8255         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
8256         temporarily until they work again.  Brought up to date with
8257         changes in the model.
8258         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
8259         model.
8260
8261 2001-01-04  Havoc Pennington  <hp@redhat.com>
8262
8263         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
8264         equal to the line length, then position iterator before paragraph 
8265         separators. Fixes crash reported by Mikael Hermansson when
8266         pressing left arrow from the start of a line.   
8267
8268         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
8269         about byte indexes off the end
8270         (iter_set_from_char_offset): add g_error about char offsets
8271         off the end
8272
8273 2001-01-03  Havoc Pennington  <hp@redhat.com>
8274
8275         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
8276
8277         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
8278         of private functions; remove inclusion of private headers.
8279
8280         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
8281         function, so we don't need private functions in gtktextdisplay.c
8282
8283         * gtk/gtktextiterprivate.h: underscore-ification
8284
8285         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
8286         to instead say "only useful to implement widgets"
8287
8288         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
8289         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
8290         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
8291
8292         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
8293         This function was completely broken
8294
8295         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
8296
8297         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
8298
8299         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
8300
8301         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
8302
8303         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
8304
8305         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
8306
8307         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
8308         gtk_paint_layout
8309
8310         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
8311         gtk_paint_layout
8312
8313         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
8314         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
8315         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
8316         which were not implemented.     
8317
8318         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
8319         insert_pixbuf signal. Rename delete_text to delete_range since it
8320         also deletes pixbufs and child anchors. This almost closes bug
8321         40245 (still need to deal with child anchors)
8322
8323         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
8324         insert_pixbuf, change signal names as appropriate, change types of
8325         signals taking marks/tags to have the specific type, not just
8326         G_TYPE_OBJECT
8327         
8328         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
8329         closes bug 40051
8330
8331         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
8332         unnecessary remove_contents() call
8333         (gtk_option_menu_class_init): add a "changed" signal, closes
8334         bug 40039
8335         (gtk_option_menu_update_contents): emit "changed" if the 
8336         active menu item changes
8337
8338         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
8339         cast to GtkObject, reported by Jonas Borgstrom
8340         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
8341         we can't do stuff with side effects in finalize. Instead, spew a
8342         warning if the loader isn't closed.
8343
8344         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
8345         colormap in here, non-X ports probably need to sync to this change
8346
8347         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
8348         assertion that colormap != NULL, you can set the colormap to NULL
8349         if you like.
8350         
8351         * Makefile.am: remove gtk-config-2.0
8352
8353         * configure.in: Use pkg-config to locate GLib. Remove
8354         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
8355         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
8356         Use pkg-config to locate Pango. Output correct Pango libs to
8357         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
8358
8359         * Makefile.am (pkgconfig_DATA): install only target-specific pc
8360         files
8361         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
8362         X11 pc files
8363
8364         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
8365         unref from here
8366
8367 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
8368
8369         * configure.in:
8370         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
8371
8372 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
8373
8374         * gtk/gtktextlayout.c
8375         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
8376         variable when moving back onto a single line.
8377
8378 2001-01-01  Havoc Pennington  <hp@redhat.com>
8379
8380         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
8381
8382         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
8383
8384         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
8385         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
8386
8387 2001-01-01  Havoc Pennington  <hp@redhat.com>
8388
8389         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
8390
8391         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
8392         GtkTextAttributes
8393
8394         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
8395         #40246
8396         (gtk_text_attributes_copy_values): rename from 
8397         gtk_text_attributes_copy
8398         (gtk_text_attributes_copy): a more standard GTK copy function, 
8399         which returns a new object
8400
8401 2001-01-01  Havoc Pennington  <hp@redhat.com>
8402
8403         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
8404         
8405         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
8406         don't fill in tree_view->priv->selection, kind of an unexpected
8407         side effect
8408
8409         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
8410         gtkintl.h
8411         
8412         * gtk/gtkcellrenderer.c: Remove definition of _ and include
8413         gtkintl.h
8414         (gtk_cell_renderer_get_property): remove calls to g_value_init
8415
8416         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
8417         gtkintl.h
8418
8419         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
8420         and include gtkintl.h
8421         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
8422         property names
8423
8424         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
8425         GtkTreeSelection
8426         (_gtk_tree_selection_new_from_with_view): rename, return
8427         GtkTreeSelection
8428         (_gtk_tree_selection_set_tree_view): rename with uscore
8429         (gtk_tree_selection_get_selected): fill in the "model" out param
8430         first, so it gets filled in even if we return at the top of the 
8431         function
8432         (gtk_tree_selection_real_select_all): add a comment and an else{}
8433         to clarify this a bit
8434         (gtk_tree_selection_real_unselect_all): add the same else{}
8435
8436         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
8437         set_tree_view to have underscore prefixes, move them to the
8438         private header, fix return type of new_with_tree_view
8439         (struct _GtkTreeSelection): mark struct
8440         fields private  
8441
8442         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
8443         GtkTreeModelFlags, not a guint
8444         (gtk_tree_path_prev): return gboolean not gint
8445         (gtk_tree_path_up): return gboolean not gint
8446
8447         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
8448         return GtkTreeModelFlags, not a guint
8449
8450         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
8451         that child model is non-null before unrefing it
8452         (g_value_int_compare_func): make this a qsort compare func, not 
8453         a boolean predicate
8454
8455         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
8456         (add -umn to the end), and mark it unimplemented
8457         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
8458         I don't see what it's for - doesn't the model always sort itself?
8459         (gtk_tree_model_sort_set_compare): this had the wrong signature
8460
8461         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
8462         Fix the docs to say that it destructively replaces existing
8463         attributes (previously said that it added attributes).
8464         (gtk_tree_view_column_set_visible): canonicalize bool before
8465         equality testing. Also, check for realization before
8466         hiding/showing the tree_column->window; if this window could exist
8467         before realization, then it's busted and needs fixing, we can't 
8468         create GDK resources pre-realization. Also, remove
8469         superfluous queue_resize(), since set_size() does that for us.
8470         (gtk_tree_view_column_set_col_type): check realization before 
8471         using tree_column->window
8472
8473         * gtk/gtktreedatalist.c: fix filename in copyright notice
8474
8475 2000-12-31  Havoc Pennington  <hp@pobox.com>
8476
8477         * gtk/gtktextview.c: Rearrange all the
8478         scroll-while-dragging-or-selecting code to be different, not
8479         necessarily better. ;-)
8480         (gtk_text_view_scroll_to_mark): Change this
8481         function to take within_margin as a fraction instead of a pixel
8482         value, and to take alignment arguments (indicating where to align 
8483         the mark inside the visible area)
8484         
8485         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
8486         to GtkObject
8487
8488         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
8489         behavior so that offsets past the end of the line are not 
8490         allowed, and an offset equal to the line length moves the iterator
8491         to the next line
8492         (gtk_text_iter_set_line_index): make parallel change
8493         (gtk_text_iter_get_bytes_in_line): add this function
8494         
8495         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
8496         of byte indexes off the end of the line; byte index at the end of
8497         the line now returns FALSE and doesn't fill in the requested
8498         values, byte index past the end of the line is an error.  Also,
8499         don't allow -1 offset anymore, since its meaning is unclear.
8500
8501         This change exposes some bug in visual cursor motion, where we
8502         end up with a huge invalid byte index; needs fixing. Symptom of 
8503         bug is a crash when you hit up arrow.
8504         
8505         (_gtk_text_line_char_locate): match the change to byte_locate
8506
8507         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
8508         from start of line properly. fixes bug reported by Mikael
8509         Hermansson where backspace would delete all text before the
8510         cursor.
8511
8512 2000-12-30  Tor Lillqvist  <tml@iki.fi>
8513
8514         * gdk/win32/gdkwindow-win32.c
8515         (gdk_window_impl_win32_get_visible_region): New function, as in
8516         the X11 backend.
8517         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
8518         instead of duplicating the same code here.
8519
8520         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
8521         GDK_COLORMAP macro.
8522
8523         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
8524         destroy function.
8525         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
8526         access that.
8527
8528         * gtk/gtk.def: Update.
8529
8530         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
8531
8532 2000-12-30  Havoc Pennington  <hp@pobox.com>
8533
8534         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
8535         colormap on input only windows, to avoid special cases all over
8536         the code for these windows.
8537
8538 2000-12-26  Tor Lillqvist  <tml@iki.fi>
8539
8540         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
8541         we are on a palettized display ("PseudoColor" in X11), as the code
8542         for that doesn't work anyway, and never has.
8543
8544 2000-12-22  Alexander Larsson  <alexl@redhat.com>
8545
8546         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
8547         Don't use isprint() for chars > 255.
8548
8549 2000-12-21  Havoc Pennington  <hp@redhat.com>
8550
8551         * tests/testtreeview.c: more work
8552
8553 2000-12-21  Alexander Larsson  <alexl@redhat.com>
8554
8555         * docs/README.linux-fb:
8556         Update the docs to the new pangoft2 way.
8557
8558 2000-12-21  Alexander Larsson  <alexl@redhat.com>
8559
8560         * configure.in:
8561         For linux-fb get the pangoft2 cflags and libs. This needs a recent
8562         pango version.
8563         Remove modules/linux-fb/Makefile.
8564
8565         * gdk/linux-fb/gdkdrawable-fb2.c:
8566         Render glyphs using freetype.
8567
8568         * gdk/linux-fb/gdkfb.h:
8569         Add new fb-specific functions needed for managing windows.
8570
8571         * gdk/linux-fb/gdkmain-fb.c:
8572         Remove gdk_font_init/fini() calls.
8573
8574         * gdk/linux-fb/gdkpango-fb.c:
8575         Remove old implementation. Use pangoft2 instead.
8576
8577         * gdk/linux-fb/gdkprivate-fb.h:
8578         Remove PangoFBFont and related stuff.
8579
8580         * gdk/linux-fb/gdkwindow-fb.c:
8581         Implement drawable->get_visible_region.
8582         Implement support for _gdk_window_set_child_handler () and
8583         _gdk_window_get_decorations().
8584
8585         * modules/Makefile.am:
8586         Remove linux-fb subdir.
8587
8588         * modules/linux-fb/*:
8589         Removed all.
8590         
8591 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
8592
8593         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
8594         calls, as they are no longer needed.
8595
8596         * gtk/gtktreemodelsort.c: Fix up the comparison code.
8597         
8598         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
8599         figure out how to emit a signal on an interface.
8600
8601 2000-12-20  Havoc Pennington  <hp@redhat.com>
8602
8603         * tests: new directory to contain tests, gtk/test* should move
8604         here sometime (with appropriate on-cvs-server hackery)
8605
8606         * tests/testtreeview.c, tests/Makefile.am: a test
8607         
8608         * configure.in (AC_OUTPUT): add tests/Makefile
8609
8610         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
8611         and "invisible_set" which were missing
8612
8613         * gtk/gtkrbtree.h: some cheesy indentation fix
8614         
8615 2000-12-20  Alexander Larsson  <alexl@redhat.com>
8616
8617         * gtk/gtkinvisible.c (gtk_invisible_realize):
8618         Attach the style to the window so that the style it is not
8619         leaked when unrealizing the window.
8620
8621 2000-12-18  Havoc Pennington  <hp@redhat.com>
8622
8623         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
8624         begin/end user action where appropriate
8625         (gtk_text_view_commit_handler): add begin/end user action
8626
8627         * gtk/gtktextbuffer.c: add begin/end user action signals, and
8628         bracket interactive operations with begin/end user action pair.
8629         
8630         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
8631         "interactive" arg from insert_text and delete_text signals.
8632         Add begin_user_action, end_user_action signals
8633         (gtk_text_buffer_begin_user_action): 
8634         (gtk_text_buffer_end_user_action): New functions to delimit 
8635         a user-visible action
8636
8637         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
8638         signals.
8639         
8640 2000-12-18  Havoc Pennington  <hp@redhat.com>
8641
8642         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
8643         was pretty non-working.
8644
8645         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
8646         by passing the length to g_utf8_validate().
8647
8648 2000-12-16  Havoc Pennington  <hp@pobox.com>
8649
8650         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
8651         Port to GObject, can go back in gdk-pixbuf after setting up 
8652         a gdk-pixbuf-marshal.h header over there.
8653
8654         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
8655         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
8656         args
8657         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
8658         set
8659         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
8660         here, do it when we create the buttons later
8661         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
8662         (gtk_tree_view_map): paranoia checks that column->button is shown 
8663         and unmapped
8664         (gtk_tree_view_size_request): only request visible children.
8665         Move header size calculation in here, for cleanliness, and 
8666         to maintain invariants for child widgets if we eventually 
8667         let users set different children inside the buttons
8668         (gtk_tree_view_map_buttons): factor out code to map buttons,
8669         since it was being called several times
8670         (gtk_tree_view_size_allocate_buttons): move_resize the drag
8671         windows instead of just moving them; their height may change 
8672         if we allow random widgets in there, or the theme changes.
8673         (gtk_tree_view_size_allocate): move button size allocation 
8674         above emitting the scroll signals, to ensure a sane state when we
8675         hit user code
8676         (gtk_tree_view_button_release): remove queue_resize after
8677         tree_view_set_size(), set_size() will handle any resize queuing
8678         that's needed
8679         (gtk_tree_view_focus_in): just queue a draw, don't fool with
8680         draw_focus goo
8681         (gtk_tree_view_focus): use gtk_get_current_event() and
8682         gdk_event_get_state()
8683         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
8684         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
8685         semicolon
8686         (gtk_tree_view_create_button): show the button here
8687         (gtk_tree_view_button_clicked): actually emit the clicked signal
8688         on the column
8689         (_gtk_tree_view_set_size): return right away if the size is
8690         unchanged, as a cheesy optimization
8691         (gtk_tree_view_setup_model): rename set_model_realized to 
8692         setup_model to match the flag that indicates whether we've 
8693         called it
8694         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
8695         exist, because set_scroll_adjustment does that and it shouldn't
8696         matter what order you call these in
8697         (gtk_tree_view_get_vadjustment): ditto
8698         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
8699         for paranoia
8700         (gtk_tree_view_set_headers_visible): call
8701         gtk_tree_view_map_buttons() instead of using cut-and-paste code
8702         (gtk_tree_view_append_column): clarify whether the return value
8703         is the count of columns before or after, and do the increment 
8704         separately from the return statement so you can tell from the code.
8705         (gtk_tree_view_remove_column): ditto
8706         (gtk_tree_view_insert_column): ditto
8707         (gtk_tree_view_get_column): remove g_return_if_fail for columns
8708         outside the existing range, the docs say that outside-range
8709         columns are allowed, so we handle them as documented. (Presumably
8710         this allows a nice loop with column != NULL as test.)
8711         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
8712         mean (left/right/center etc.).
8713         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
8714         (gtk_tree_view_expand_row): add docs
8715         (gtk_tree_view_collapse_row): add docs
8716
8717         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
8718         function to emit the clicked signal on a column
8719         
8720         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
8721         state of an event
8722         (gdk_event_get_time): don't treat GDK_SCROLL 
8723         as a button event, remove default case from switch so gcc 
8724         will whine if we don't explicitly handle all event types
8725
8726         * gtk/gtktreeselection.h: added some FIXME 
8727         
8728         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
8729         "columns" to "n_columns" and "column" to "columns" for clarity
8730
8731 2000-12-16  Havoc Pennington  <hp@pobox.com>
8732         
8733         * gtk/gtktextiter.c: General cleanup of the log attr iteration
8734         stuff. This should make e.g. the delete key work again in the
8735         text widget...
8736         (gtk_text_iter_forward_cursor_positions): handle negative count
8737         (gtk_text_iter_backward_cursor_positions): handle negative count
8738         (gtk_text_iter_forward_word_ends): handle negative count
8739         (gtk_text_iter_backward_word_starts): handle negative count
8740
8741         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
8742         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
8743         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
8744         GObject. No doubt will cause breakage.
8745
8746         * demos/gtk-demo/textview.c: remove hacks around
8747         non-GObject-ification of the text objects
8748
8749         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
8750         the text tag
8751         
8752 2000-12-14  Havoc Pennington  <hp@pobox.com>
8753
8754         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
8755         that we have Xrender
8756
8757 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
8758
8759         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
8760         Add two virtualized functions gdk_drawable_get_clip_region - to
8761         get the clip region when drawing.
8762         
8763         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
8764         use invalidate_region.
8765
8766         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
8767         region.
8768
8769         * acconfig.h configure.in: Check for Xft. For now, assume
8770         that if Xft is found, Pango was compiled with Xft support
8771         as well.
8772
8773         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
8774         gdk_colormap_query_color().
8775         
8776         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
8777         with Xft if appropriate.
8778
8779         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
8780         a pangoxft context if we have XFT and the environment
8781         variable GD_USE_XFT is set.
8782         
8783         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
8784         and also possibly an XftDraw structure.
8785
8786         * gtk/gtkfontsel.c: Handle the case where the font from the
8787         style doesn't match any of the fonts a bit better.
8788         
8789         * gtk/testgtk.c: Add tabs between directional segments for
8790         hebrew/arabic test. (Not really necessary, just a little
8791         prettier.)
8792
8793 2000-12-14  Havoc Pennington  <hp@redhat.com>
8794
8795         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
8796         reading a file
8797
8798 2000-12-14  Havoc Pennington  <hp@redhat.com>
8799
8800         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
8801         unused call to get_last_line()
8802
8803         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
8804         here until boxed is working (and maybe after that - we should
8805         really not gratuitously break old code)
8806
8807         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
8808         specific types for font_desc and tabs args, move them to
8809         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
8810         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
8811
8812         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
8813         use GTK_TYPE_POINTER for signal signatures as a hack-around
8814
8815         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
8816         PangoTabArray
8817
8818         * gtk/gtktextlayout.c (line_display_iter_to_index): 
8819         make static
8820         (line_display_index_to_iter): make static
8821
8822         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
8823         to marshal a string not a boxed
8824
8825         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
8826
8827         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
8828         since the UTF-8 isn't validated yet
8829
8830         * gtk/gtktextsegment.c (char_segment_check_func): don't require
8831         lines to end in '\n'
8832         
8833         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
8834         forward_to_delimiters, and grapheme boundaries
8835         (gtk_text_view_delete_from_cursor): properly handle non-newline
8836         delimiters, and grapheme boundaries
8837
8838         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
8839         to gtk_text_iter_forward_to_delimiters, and make it work properly
8840         if empty lines end with a character other than '\n'
8841
8842         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
8843         position
8844
8845 2000-12-15  Tor Lillqvist  <tml@iki.fi>
8846
8847         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
8848
8849         * gtk/gtk.def
8850         * gdk/gdk.def: Update.
8851
8852         * gdk/win32/gdkmain-win32.c
8853         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
8854         gdkmain-win32.c here.
8855
8856         * gdk/win32/makefile.mingw.in (all): No need to make
8857         gdk-win32res.o here, the makefile one step up will call us to make
8858         it.
8859
8860         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
8861         gdkkeys-win32.
8862
8863         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
8864
8865         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
8866         call to g_source_add().
8867
8868         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
8869         leak. Thanks to Andreas Kemnade.
8870
8871 2000-12-13  Havoc Pennington  <hp@pobox.com>
8872
8873         * gtk/gtktextbtree.h: Remove double _ in front of some functions
8874
8875         * gtk/gtktext*.[hc]: update accordingly
8876         
8877 2000-12-13  Havoc Pennington  <hp@pobox.com>
8878
8879         * gtk/gtktextbtree.h: Put _ in front of every function in this 
8880         header file
8881
8882         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
8883
8884 2000-12-13  Alex Larsson  <alexl@redhat.com>
8885
8886         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
8887         Add support for ps2 intellimouse.
8888
8889         * gdkkeyboard-fb.c:
8890         Move shift-F1 repaint handling to xlate handler only.
8891         
8892         * docs/README.linux-fb:
8893         Add imps2 to docs.
8894         Document the new refresh keys.
8895         
8896 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
8897
8898         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
8899
8900         * gtk/gtkbox.c: change property types from (u)long to (u)int for
8901         ::position and ::padding.
8902
8903         * gtk/gtkcontainer.c: make ::border_width an INT property.
8904
8905         * gtk/gtkpacker.c: make ::position an INT property.
8906
8907         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
8908         guard against NULL h/v scrollbars, since this is used at construction
8909         time.
8910
8911         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
8912         internal gtk_clist_constructor().
8913
8914         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
8915         gtk_ctree_constructor().
8916
8917         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
8918         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
8919
8920         * docs/reference/Makefile.am: fun stuff, disabled docs generation
8921         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
8922
8923         * gtk/gtkwidget.[hc]:
8924         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
8925         and gtk_widget_get().
8926         (gtk_widget_new): use g_object_new_valist().
8927         (gtk_widget_set): use g_object_set_valist().
8928
8929         * gtk/gtkobject.[hc]:
8930         removed gtk_object_arg_get_info(), gtk_object_getv(),
8931         gtk_object_query_args(), gtk_object_newv(),
8932         gtk_object_class_add_signals(),
8933         gtk_object_class_user_signal_new(),
8934         gtk_object_class_user_signal_newv(),
8935         gtk_object_arg_set(), gtk_object_arg_get(),
8936         gtk_object_args_collect(),
8937         gtk_object_default_construct(),
8938         gtk_object_constructed(),
8939         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
8940         removed nsignals, signals and n_args members from GtkObjectClass.
8941         (gtk_object_new): use g_object_new_valist().
8942         (gtk_object_set): use g_object_set_valist().
8943         (gtk_object_get): use g_object_get_valist().
8944         
8945         * gtk/gtkcompat.h: define gtk_object_default_construct().
8946         
8947         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
8948         g_object_new().
8949
8950         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
8951         fucntions, cleaned up method assignments (make sure your structures
8952         are setup properly before calling out). removed all GTK_CONSTRUCTED
8953         hacks ;)
8954
8955 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
8956
8957         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
8958         off-by-one error in checks. (Dave Lambert)
8959
8960 2000-12-12  Alexander Larsson  <alexl@redhat.com>
8961
8962         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
8963         Don't free gdk_fb_keyboard twice.
8964
8965 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
8966
8967         * gtk/testgtk.c:
8968         (create_tooltips): 
8969         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
8970         use GObject swapped_signal:: properties instead.
8971
8972         * gtk/gtkcellrenderertoggle.c: 
8973         * gtk/gtkcellrenderertextpixbuf.c: 
8974         * gtk/gtkcellrenderertext.c: 
8975         * gtk/gtkcellrendererpixbuf.c: 
8976         * gtk/gtkcellrenderer.c:
8977         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
8978         missing warnings for invalid property ids, install properties
8979         with g_object_class_install_property() now.
8980         
8981         * gtk/gtksignal.c:
8982         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
8983         
8984 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
8985         
8986         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
8987         to determine if a window is the focus widget within
8988         its toplevel.
8989
8990         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
8991         to be boolean.
8992
8993         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
8994         of the case where the container CAN_FOCUS to here instead
8995         of having it in each individual move-the-focus place.
8996
8997         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
8998         focusing to be geometric in a much more obvious sense. Arrowing
8999         around is still non-intuitive because it isn't perfect and
9000         because entries, etc, grab the arrow keys, but it at least
9001         usually will do what you expect now.
9002         
9003         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
9004         file.
9005
9006         * gtk/gtknotebook.c: Change tabs to be a single item in
9007         the focus chain. Make movement of focus on tabs with arrow
9008         keys wrap around.
9009         
9010         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
9011         CHECK_FIND_CHILD macro to give informative error messages
9012         instead of silent returns.
9013
9014         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
9015         flag since we handle GdkReturn on the tabs.
9016
9017         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
9018         windows rather than sending expose events directly.
9019
9020         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
9021         definition for GtkNotebookPage into .c file, since it is private.
9022
9023         * gtk/testgtk.c (create_notebook): Add option for 
9024         testing borderless notebook.
9025
9026         * gtk/testgtk.c (page_switch): Removed egregious poking
9027         around in GTK+ internals.
9028
9029         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
9030
9031         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
9032         properly through gtk_clist_focus. Make the title headers a
9033         single item in the tab-focus chain, and make left-right wrap
9034         around.
9035
9036         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
9037         focus method so that wrapping around works properly.
9038
9039         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
9040         that is handled for the widget now. 
9041
9042 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
9043
9044         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
9045         widgets as TOPLEVEL.
9046
9047         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
9048         TOPLEVEL widgets are containers.
9049
9050         * gtk/gtkinvisible.h: Remove useless include.
9051
9052 2000-12-11  Havoc Pennington  <hp@redhat.com>
9053
9054         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
9055         Handle chopping off \r\n and 0x2029 in addition to \n before
9056         passing to PangoLayout
9057
9058         * gtk/gtkimcontextsimple.c
9059         (gtk_im_context_simple_get_preedit_string): 
9060         return an empty string if no match is pending
9061
9062         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
9063         assertion that the returned preedit string was sane
9064
9065         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
9066         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
9067         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
9068
9069 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
9070
9071         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
9072         Fix up finalizer to chain to its parent.
9073
9074 2000-12-11  Alexander Larsson  <alexl@redhat.com>
9075
9076         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
9077         Clearified the difference between the keyboard types. Wrote a note
9078         about the magic sysrq key to get out of raw mode.
9079
9080 2000-12-09  James Henstridge  <james@daa.com.au>
9081
9082         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
9083         member to hold masks for detecting the start of a protocol packet.
9084         (mouse_devs): add packet start masks for ps2 and ms device types.
9085         Left the mask for fidmour blank, as I have no idea what it should
9086         be.
9087         (handle_mouse_io): skip bytes until we get to the start of a
9088         packet.  My Logitech mouse seems to be passing an extra NULL pad
9089         byte, and GPM does a similar thing here.
9090         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
9091         this is the ms mouse driver.
9092         (gdk_fb_mouse_ms_packet): fix up button handling, which was
9093         completely broken except for button1.  It was checking the wrong
9094         bit in the packet for the status of the right mouse button, and
9095         wrongly assuming right == button2 rather than 3.  I fixed that and
9096         also added support for middle button (button2).
9097
9098 2000-12-08  Havoc Pennington  <hp@redhat.com>
9099
9100         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
9101         that cause a segfault on text insertion
9102
9103         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
9104         warning
9105
9106         * gtk/gtktextiter.c (test_log_attrs): use
9107         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
9108
9109         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
9110         Get log attrs for a line, using a cache stored on the buffer
9111         
9112         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
9113         reported by Jeff Franks
9114
9115 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9116
9117         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
9118         /dev/ttyS0 -> /dev/mouse
9119
9120 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9121
9122         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
9123         Added dummy gdk_fontset_load.
9124
9125 2000-12-08  Alexander Larsson  <alexl@redhat.com>
9126
9127         * docs/README.linux-fb:
9128         * docs/Makefile.am:
9129         Initial GtkFB docs.
9130         
9131         * gdk/linux-fb/Makefile.am:
9132         Define GDK_DATA_PREFIX.
9133
9134         * gdk/linux-fb/gdkmain-fb.c:
9135         Fix typo.
9136         Change default display to /dev/fb0.
9137
9138         * gdk/linux-fb/gdkpango-fb.c:
9139         Add $(prefix)/share/fonts/ to font path.
9140         
9141 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9142
9143         * gdk/linux-fb/gdkkeyboard-fb.c:
9144         New file containing the abstracted keyboard driver. Most code
9145         taken from gdkinput-ps2.c
9146
9147         * gdk/linux-fb/gdkinput-ps2.c:
9148         Removed file.
9149         
9150         * gdk/linux-fb/Makefile.am:
9151         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
9152
9153         * gdk/linux-fb/gdkcolor-fb.c:
9154         display->fb was renamed to display->fb_fd.
9155
9156         * gdk/linux-fb/gdkcursor-fb.c:
9157         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9158
9159         * gdk/linux-fb/gdkinput.c:
9160         Moved gdk_input_init here from gdkinput-ps2.c
9161
9162         * gdk/linux-fb/gdkmain-fb.c:
9163         display->fb was renamed to display->fb_fd.
9164         Now the tty and the console is opened here instead
9165         of in the keyboard driver. Also check GDK_VT to see what
9166         tty to open.
9167         Move gdk_beep () here from gdkinput-ps2.c
9168         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9169
9170         * gdk/linux-fb/gdkmouse-fb.c:
9171         Add header.
9172         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9173         Return correct keyboard modifiers.
9174         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
9175
9176         * gdk/linux-fb/gdkprivate-fb.h:
9177         Add tty and vt info to display.
9178         Add orignal modeinfo storage to display
9179         Update global functions
9180
9181         * gdk/linux-fb/gdkwindow-fb.c:
9182         Added gdk_fb_window_find_focus().
9183         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9184
9185 2000-12-07  Havoc Pennington  <hp@pobox.com>
9186
9187         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
9188         function, noticed by Alex
9189
9190 2000-12-06  Elliot Lee  <sopwith@redhat.com>
9191
9192         * configure.in: Detect freetype properly
9193
9194         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
9195         above.
9196
9197 2000-12-06  Alexander Larsson  <alexl@redhat.com>
9198
9199         * gdk/linux-fb/Makefile.am:
9200         Add gdkmouse-fb.c
9201         
9202         * gdk/linux-fb/gdkmouse-fb.c:
9203         New file. Abstracted the mouse drivers a bit.
9204
9205         * gdk/linux-fb/gdkcursor-fb.c:
9206         The cursor hide/show functions was moved here from gdkinput-ps2.c.
9207
9208         * gdk/linux-fb/gdkinput-ps2.c:
9209         Removed old mouse handling code. Moved cursor handling code
9210         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
9211         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
9212         gdk_mouse_get_info.
9213
9214         * gdk/linux-fb/gdkmain-fb.c:
9215         Pass NULL pointers for x,y in gdk_mouse_get_info call.
9216
9217         * gdk/linux-fb/gdkprivate-fb.h:
9218         Removed public gdk_fb_find_common_ancestor, added and renamed
9219         functions for the new mouse handling code.
9220
9221         * gdk/linux-fb/gdkwindow-fb.c:
9222         Moved gdk_fb_window_send_crossing_events here. added global
9223         variable gdk_fb_window_containing_pointer. made
9224         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
9225         renamed to gdk_mouse_get_info.
9226
9227 2000-12-06  Alexander Larsson  <alexl@redhat.com>
9228
9229         * gdk/linux-fb/gdkevents-fb.c:
9230         Update to match latest gmain/gsource changes.
9231
9232         * gdk/linux-fb/gdkinput-ps2.c:
9233         Bogus gdk_keymap_get_entries_for_keycode implementation so that
9234         it links. Will be implemented later.
9235
9236 2000-12-03  Havoc Pennington  <hp@pobox.com>
9237
9238         * gdk/Makefile.am: add gdkkeys.[hc]
9239
9240         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
9241         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
9242
9243         * acconfig.h, configure.in: add checks and command line options
9244         for XKB
9245
9246         * gdk/x11/gdkkeys-x11.c: Implement the above functions
9247         
9248         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
9249         and group in the key event
9250
9251         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
9252         field with the low-level hardware key code, and a group
9253         field with the keyboard group
9254
9255         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
9256         and declare a couple globals used for keymap handling
9257         
9258         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
9259         hold down Shift-Control and type a hex number to get a Unicode 
9260         character corresponding to the hex number
9261         (gtk_im_context_simple_get_preedit_string): Fix cursor position
9262         (return bytes not chars)
9263
9264 2000-12-05  Elliot Lee  <sopwith@redhat.com>
9265
9266         * gdk/gdkcolor.h: Make GdkColor specify element sizes
9267         to avoid waste on 64-bit platforms.
9268
9269 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
9270
9271         * INSTALL: Fix link to PNG home, remove reference
9272         to fribidi.
9273
9274         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
9275         
9276         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
9277         tested.)
9278
9279         * gtk/gtkcheckmenuitem.c: Permanently turn on
9280         always_show_toggle.
9281
9282         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
9283         be NULL. (Vladimir Klebanov, #26545)
9284
9285         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
9286         some signed/unsigned comparison problems. (#6510,
9287         David Kaelbling)
9288
9289         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
9290         return type to boolean (Oskar Liljeblad, #18648)
9291
9292 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9293
9294         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
9295         Remove bogus colormap setting.
9296
9297 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9298
9299         * gdk/linux-fb/gdkcolor-fb.c:
9300         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
9301
9302         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
9303         Must set colormap.
9304         
9305 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
9306
9307         * docs/tutorial/gtk-tut.sgml: DND updates
9308
9309 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
9310
9311         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
9312         Remove old debug g_warning().
9313         (gdk_fb_draw_drawable): The src argument can be either a wrapper
9314         or an implementation, just pass the implementation to draw_drawable_2.
9315         
9316         * gdk/linux-fb/gdkprivate-fb.h:
9317         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
9318
9319         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
9320         clear and invalidate area when window is destroyed.
9321         (send_map_events): Remove old commented out code.
9322
9323 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9324
9325         * gdk/linux-fb/gdkpango-fb.c:
9326         Use italic instead of oblique in font aliases.
9327         
9328         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
9329         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
9330         other unsupported functions.
9331
9332 2000-12-04  Havoc Pennington  <hp@redhat.com>
9333
9334         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
9335
9336         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
9337
9338         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
9339
9340         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
9341         hack to avoid infinite loops (synthetic expose event) - 
9342         Owen has more appropriate fixes in a branch he'll check in later.
9343
9344         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
9345         separator, CR, and CRLF as line ends
9346
9347         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
9348         into lines using pango_find_paragraph_boundary(); other bits of
9349         the widget are still going to be broken if the boundary isn't '\n'
9350         though
9351
9352 2000-12-04  Alexander Larsson  <alexl@redhat.com>
9353
9354         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
9355         multiply.
9356
9357         * gdk/linux-fb/gdkpango-fb.c:
9358         Copied some 26.6 scaling macros from pango to clean up the rounding.
9359         (pango_fb_font_get_glyph_info): Correct sign on x value.
9360
9361         * gdk/linux-fb/gdkprivate-fb.h:
9362         Removed unreferenced external functions.
9363
9364         * modules/linux-fb/Makefile.am: Use ` instead of '.
9365
9366         * modules/linux-fb/basic.c:
9367         Remove dead code. In particular the dummy lang engine which broke all
9368         pango layouts in GtkFB. Don't include tables-big.i anymore.
9369
9370         * modules/linux-fb/tables-big.i:
9371         Upgrade to latest version from pango. Left for reference, basic_ranges
9372         moved to basic.c.
9373         
9374 2000-12-04  Havoc Pennington  <hp@redhat.com>
9375
9376         Fix bugs Alex found:
9377         
9378         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
9379         to "draw"
9380
9381         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
9382
9383         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
9384
9385         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
9386         implementation in here, apparently the expose() implementation was
9387         dead code.
9388
9389 2000-12-04  Alexander Larsson  <alexl@redhat.com>
9390
9391         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
9392         Return positive descent.
9393
9394 2000-12-02  Havoc Pennington  <hp@pobox.com>
9395
9396         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
9397         method and signal
9398         
9399         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
9400         calls gdk_window_process_updates() to push the exposes through
9401         (gtk_widget_class_init): No more draw signal, no
9402         gtk_widget_real_draw()  
9403         
9404         * gtk/gtkbin.c (gtk_bin_draw): remove
9405
9406         * gtk/gtkbox.c (gtk_box_draw): remove
9407
9408         * gtk/gtkbutton.c (gtk_button_draw): remove
9409
9410         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
9411
9412         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
9413
9414         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
9415
9416         * gtk/gtkclist.c (gtk_clist_draw): remove
9417
9418         * gtk/gtkentry.c (gtk_entry_draw): remove
9419
9420         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
9421
9422         * gtk/gtkfixed.c (gtk_fixed_draw): remove
9423
9424         * gtk/gtkframe.c (gtk_frame_draw): remove
9425
9426         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
9427
9428         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
9429
9430         * gtk/gtklayout.c (gtk_layout_draw): remove
9431
9432         * gtk/gtklist.c (gtk_list_draw): remove
9433
9434         * gtk/gtklistitem.c (gtk_list_item_draw): remove
9435
9436         * gtk/gtkmenu.c (gtk_menu_draw): remove
9437
9438         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
9439
9440         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
9441
9442         * gtk/gtknotebook.c (gtk_notebook_draw): remove
9443
9444         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
9445
9446         * gtk/gtkpacker.c (gtk_packer_draw): remove
9447
9448         * gtk/gtkrange.c (gtk_range_draw): remove
9449
9450         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
9451
9452         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
9453
9454         * gtk/gtktable.c (gtk_table_draw): remove
9455
9456         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
9457
9458         * gtk/gtktext.c (gtk_text_draw): remove
9459
9460         * gtk/gtktextview.c (gtk_text_view_draw): remove
9461
9462         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
9463
9464         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
9465
9466         * gtk/gtktree.c (gtk_tree_draw): remove
9467
9468         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
9469
9470         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
9471
9472         * gtk/gtkviewport.c (gtk_viewport_draw): remove
9473
9474         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
9475
9476         * gtk/gtkvscale.c (gtk_vscale_draw): remove
9477
9478         * gtk/gtkwindow.c (gtk_window_draw): remove
9479
9480 2000-20-01  Anders Carlsson  <andersca@gnu.org>
9481
9482         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
9483         a GtkToggleButton is both insensitive and active, it was being
9484         drawn by the GtkButton draw handler which doesn't check the
9485         state. Now it's calling gtk_toggle_button_paint instead.
9486         
9487 2000-12-01  Havoc Pennington  <hp@redhat.com>
9488
9489         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
9490         dangling pointers to the appearance attributes from the 
9491         line display
9492
9493         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
9494         width/height to mean "full width/height of drawable"
9495
9496         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
9497         click to select word/line
9498         
9499         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
9500         when getting log attrs. Get a slice, so that pixmaps and stuff
9501         are properly handled.
9502
9503         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
9504         paste into the selection (replaces selection now, previously
9505         crashed or added to selection). Reveals longstanding btree bug -
9506         select multiple lines, middle-click on the selection, boom. This
9507         isn't related to my changes though.
9508
9509         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
9510         PangoLogAttrs changes
9511         (gtk_entry_move_backward_word): ditto
9512
9513         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
9514         functions return bool whether the iter moved onto a
9515         dereferenceable position.
9516  
9517         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
9518         functions for motion in terms of display lines.
9519
9520         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
9521         get the buffer a mark is inside
9522         
9523 2000-12-01  Alexander Larsson  <alexl@redhat.com>
9524
9525         * gdk/linux-fb/Makefile.am:
9526         * modules/linux-fb/Makefile.am:
9527         Freetype 2 final uses freetype-config
9528
9529         * gdk/linux-fb/gdkpango-fb.c:
9530         Upgrade to use Freetype 2 final.
9531         More flexible support for font aliases, this also fixes a bug with
9532         GtkFontSelector, as the aliases must be visible in the font/family list,
9533         or GtkFontSelector reads uninitialized memory.
9534
9535 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
9536
9537         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
9538         XGetIMValues to properly terminate variable argument list, and do
9539         NULL return check for ic_values and xim_styles.
9540
9541         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
9542         Restore preedit state after XmbResetIC().
9543         
9544         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
9545         XvaCreateNestedList() should take XvaNestedList, but not
9546         XvaNestedList*.
9547
9548         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
9549         preedit_draw_callback, preedit_caret_callback): Match
9550         "preedit-changed" signal name to "preedit_changed" to be
9551         consistent to the spec.
9552
9553         * gtk/gtkimcontextsimple.c (check_table):
9554         Match "preedit-changed" to "preedit_changed" to be consistent
9555         to the spec.
9556
9557 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
9558
9559         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
9560         gc->clip_region == NULL>
9561
9562 2000-11-30  Tor Lillqvist  <tml@iki.fi>
9563
9564         Changes by Hans Breuer:
9565         
9566         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
9567         Dont't use negative width and height as max_hints. This fixes
9568         Owen's recent testgtk changes for win32.
9569
9570         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
9571         gdk_win32_hdc_release): These are exported and may be called with
9572         other drawable types than our GdkDrawableImplWin32 (?).
9573
9574         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
9575         so always #define USE_BACKING_STORE.
9576
9577         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
9578         of printf for debugging output.
9579
9580         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
9581         
9582         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
9583
9584         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
9585         declaration.
9586
9587         * gtk/gtktexttypes.h: Ditto.
9588
9589         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
9590         (GDK_VoidSymbol) also if in case of arg check failure.
9591
9592         * gtk/gtkimcontextsimple.c
9593         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
9594         position to the pointer, but to the variable it points to.
9595
9596         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
9597
9598         * gtk/gtk.def: Updates.
9599
9600 2000-11-29  Elliot Lee  <sopwith@redhat.com>
9601
9602         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
9603         GTK_TYPE_TREE_MODEL.
9604
9605 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9606
9607         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
9608         Set the size of the font from the description.
9609         (gdk_text_width): Gross hack that calculates the width
9610         of text by text_length * size/2. This is necessary because
9611         GtkLabel does some ugly gtk_string_width call to calculate
9612         an good size.
9613         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
9614
9615 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
9616
9617         * docs/tutorial/gtk-tut.sgml: DND updates
9618
9619 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9620
9621         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
9622         If you pass width or height == 0 to gdk_window_clear_area they
9623         should be calculated from the window size.
9624
9625 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9626
9627         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
9628         a grab, but no grab-cursor, use the cursor from the grabbed
9629         window. (gdk_fb_window_send_crossing_events): Send normal
9630         enter/leave notifications if grab and owner_events == TRUE.
9631
9632 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9633
9634         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
9635         Do implicit button grabs, even if the window doesn't
9636         want the event.
9637         (gdk_fb_window_send_crossing_events): If there is a
9638         grab, only the grabbed window gets normal enter/leave
9639         notifications. On ungrab go from grabbed window to current.
9640         Don't send any notification to b when propagating from c -> b.
9641         If setting a grab on window, don't set prev_window.
9642         (handle_mouse_input): Send enter/leave events to the window the
9643         mouse is over, not the grabbed one.
9644         
9645 2000-11-28  Elliot Lee  <sopwith@redhat.com>
9646
9647         * gdk/gdkregion-generic.c: Zap warning.
9648         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
9649         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
9650
9651 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
9652
9653         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
9654         The cursor should be hidden if it is part of either the
9655         source or destination region. Not only if it is in both.
9656         (gdk_window_set_transient_for): Silence warnings.
9657
9658 2000-11-28  Alexander Larsson  <alexl@redhat.com>
9659
9660         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
9661         The default mode in X is Pie Arcs, therefore that is
9662         what Gtk+ uses.
9663
9664 2000-11-28  Alexander Larsson  <alexl@redhat.com>
9665
9666         * gdk/linux-fb/gdkinput-ps2.c:
9667         Implement correct EnterNotify/LeaveNotify:
9668         (gdk_fb_window_send_crossing_events): New function that sends
9669         all GdkCrossingEvents from the last mouse-window to the specified
9670         destination.
9671         (gdk_fb_window_visibility_crossing): Removed function.
9672         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
9673         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
9674         instead of gdk_window_get_pointer() for better readability.
9675
9676         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
9677         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
9678
9679         * gdk/linux-fb/gdkprivate-fb.h:
9680         removed gdk_fb_window_visibility_crossing, added
9681         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
9682
9683         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
9684         New function that finds the least common ancestor of two windows.
9685         (gdk_window_show, gdk_window_hide):
9686         Use gdk_fb_window_send_crossing_events.
9687         (gdk_fb_window_move_resize): Send configure events to toplevel
9688         windows. Use gdk_fb_window_send_crossing_events.
9689
9690 2000-11-27  Havoc Pennington  <hp@redhat.com>
9691
9692         * gtk/gtkprivate.h (enum): Remove a trailing comma
9693
9694 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
9695
9696         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
9697         the "changed" callback of the adjustment.  We need to redraw the
9698         spin button's arrows when the adjustment's range changes.
9699         (adjustment_changed_cb): Draw the arrows.
9700         (gtk_spin_button_value_changed): Draw the arrows.
9701
9702 2000-11-23  Alexander Larsson  <alexl@redhat.com>
9703
9704         * gdk/linux-fb/gdkselection-fb.c:
9705         Initial selection implementation.
9706
9707         * gtk/gtkselection.c:
9708         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
9709         requestor in gtk_selection_request.
9710         
9711         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
9712         Added gdk_selection_property atom.
9713
9714         * gdk/linux-fb/gdkprivate-fb.h:
9715         Export _gdk_selection_window_destroyed.
9716         Removed mask_off_x/y from GdkCursorPrivateFB.
9717         Removed hbearing, added top, left to PangoFBGlyphInfo.
9718
9719         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
9720         Call _gdk_selection_window_destroyed
9721         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
9722         the root window has been created.
9723         (static_dx_hack, static_dy_hack, compare_draw_rects,
9724         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
9725         in region. They are already sorted. Instead just traverse them in
9726         reverse if draw_direction < 0.
9727         
9728         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
9729         Double-clicks must be sent after the normal button_press.
9730         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
9731         
9732         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
9733         Pass _gdk_fb_screen_gc instead of NULL.
9734
9735         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
9736         Initialize gdk_selection_property.
9737         (gdk_event_make): Remove unused code.
9738
9739         * gdk/linux-fb/gdkcursor-fb.c:
9740         Make the pixmap for the cursor the same size as the mask. Also remove
9741         the mask_off_x/y fields in GdkCursorPrivateFB and combine
9742         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
9743         Now the whole cursor is visible.
9744
9745         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
9746         Fix bug where xdest+height instead of ydest+height was used
9747         to calculate if the source and dest overlapped. This fixes the
9748         redraw bug when the main window in testgtk was scrolled when
9749         partially covered by a tall window.
9750         Copy rectangles in region in order depending on draw_direction.
9751         Also moved the draw_direction flipping of start_y and end_y into
9752         the gc functions, as this might not be what all of them want.
9753         (gdk_fb_draw_lines): Support dashed lines.
9754         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
9755         so that the text is positioned correctly (was 1 pixel high).
9756
9757         gdk/linux-fb/gdkgc-fb.c:
9758         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
9759         all lines were drawn a pixel to short. Also checked the default of
9760         the rest of the values, and they're the same as X now.
9761
9762         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
9763         Clean up pixel positioning of the glyphs. Just use bgy->top and
9764         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
9765         to all divisions to get correct rounding behaviour.
9766
9767         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
9768         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
9769         Moved start_y/end_y flip into draw_drawable implementations.
9770         Flip also x rendering when draw_direction < 0.
9771         Remove unneccesary multiply with draw_direction.
9772
9773 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
9774
9775         * docs/tutorial/gtk-tut.sgml:
9776           - get rid of gtk_toggle_button_toggled FUD
9777           - start DND section - needs work - based on:
9778                 http://wolfpack.twu.net/docs/gtkdnd/
9779
9780 2000-11-22  Alexander Larsson  <alexl@redhat.com>
9781
9782         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
9783         Correct calculation of font metrics. Now GtkEntrys have sane
9784         size.
9785
9786 2000-11-22  Alexander Larsson  <alexl@redhat.com>
9787
9788         * gdk/gdktypes.h:
9789         Add new type GdkSpan
9790         
9791         * docs/reference/gdk/gdk-sections.txt,
9792         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
9793         gdk/gdkregion.h:
9794         Implement and document gdk_region_spans_intersect_foreach.
9795
9796         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
9797         Add new file gdkrender-fb.c which contains all core
9798         rendering code.
9799         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
9800         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
9801         (optimized rectangle fillers).
9802
9803         * gdk/linux-fb/gdkdrawable-fb2.c:
9804         Move all rendering code to gdkrender-fb.c.
9805         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
9806         Use the new span intersection functions in gdk_fb_fill_spans.
9807         gdk_fb_draw_rectangle() clips filled rectangles and calls
9808         gc->fill_rectangle with the result.
9809         gdk_fb_fill_spans() gets extra argument "sorted".
9810
9811         * gdk/linux-fb/gdkevents-fb.c:
9812         Remove unused includes and defines.
9813         New function gdk_fb_get_time() to get correct time for events.
9814
9815         * gdk/linux-fb/gdkinput-ps2.c:
9816         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
9817         Make sure to set the time of all events.
9818
9819         * gdk/linux-fb/gdkmain-fb.c:
9820         Use gdk_fb_get_time ().
9821
9822         * gdk/linux-fb/gdkprivate-fb.h:
9823         New virtual GC calls: fill_span & fill_rectangle.
9824         Export gdk_fb_get_time().
9825         gdk_fb_fill_spans() gets extra argument "sorted".
9826
9827         * gdk/linux-fb/mi*.c:
9828         Use GdkSpan instead of GdkRectangle.
9829         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
9830         from XFree 4 source)
9831         
9832 2000-11-22    <jrb@redhat.com>
9833
9834         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
9835         reversing the order in an if statement will do.  Doing so managed
9836         to make the treemodelsort half work.  Other half will follow after
9837         I get the insert function fully fixed.
9838
9839 2000-11-21  Elliot Lee  <sopwith@redhat.com>
9840         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
9841         more than 2 bits. Besides, I need to implement an evil hack. :)
9842
9843 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
9844
9845         * docs/tutorial/gtk-tut.sgml: minor corrections
9846
9847 2000-11-20  Jonathan Blandford <jrb@redhat.com>
9848         * gtk/gtktreemodelsort.h: Add convertion functions to let you
9849           convert to and from relative path's and iters.
9850
9851         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
9852           testing sorting functions a bit better.  Currently broken -- will
9853           fix in morning.
9854
9855 2000-11-20  Havoc Pennington  <hp@redhat.com>
9856
9857         * gtk/gtkwidget.c: Documented a bunch of functions in here
9858         (gtk_widget_realize): Warn if you try to realize
9859         a widget with no parent that isn't a toplevel
9860         (gtk_widget_intersect): return a gboolean
9861
9862 2000-11-20  Havoc Pennington  <hp@redhat.com>
9863
9864         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
9865         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
9866         scrolling to be implemented in GDK to finish. Also, right now
9867         we just size_allocate all children on every layout change,
9868         which is pretty lame. Test commented out of testtext.c, 
9869         until it works better.
9870
9871 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
9872
9873         * gdk/linux-fb/gdkdrawable-fb2.c:
9874         Removed unused arguments from gdk_fb_drawable_get_pixel().
9875
9876         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
9877         Renamed fidur specific mouse packet data in MouseDevice to
9878         generic. Used it in ps2 mouse handling code to avoid blocking
9879         reads.
9880
9881 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
9882
9883         * demos/gtk-demo/main.c: Changed to have the list become
9884         non-italic when the demo window is destroyed through an external
9885         event (like a close button).  Doing so found three bugs in the
9886         widget.
9887
9888         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
9889
9890         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
9891         we actually set the cell.
9892
9893         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
9894
9895         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
9896         free a leaked path.  Thanks memprof.
9897
9898 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
9899
9900         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
9901         off-by-one error when destroying allocated segments
9902         on failure. (Elliot)
9903
9904 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
9905
9906         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
9907         memleaks found by Evan Martin.
9908
9909 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
9910
9911         * Released 1.3.2
9912         
9913         * NEWS: Updates for 1.3.2
9914
9915 2000-11-17  Tor Lillqvist  <tml@iki.fi>
9916
9917         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
9918         but in general for window system specific events.
9919
9920         * gtk/gtk.def
9921         * gtk/makefile.mingw.in
9922         * gtk/makefile.msc.in: Update.
9923         
9924         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
9925
9926 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
9927
9928         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
9929         distribute gtk.immodules.
9930
9931         * gtk/Makefile.am (install-data-local): Don't install the
9932         gtk.immodules file created for the uninstalled modules;
9933         instead run gtk-query-immodules after install
9934
9935 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
9936
9937         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
9938         -rpath to the right install location.
9939
9940         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
9941         -export-dynamic.
9942
9943         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
9944         properly.
9945
9946 2000-11-15  Havoc Pennington  <hp@pobox.com>
9947
9948         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
9949         patch from Mikael Hermansson to temporarily stop blinking while
9950         the user is using the keyboard to type or navigate. 
9951
9952         Also, when blinking, stay on for longer than we stay off. Also,
9953         return from start_cursor_blink if !cursor_visible, to save
9954         checking that flag all over the place before we call
9955         start_cursor_blink.
9956
9957 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
9958
9959         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
9960         only contain a "fontset" line, which is now ignored.
9961
9962         * gtk/gtkentry.c (gtk_entry_button_release): Make 
9963         double-click-to-select-word work.
9964         
9965 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
9966
9967         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
9968         Don't move back one char when we are actually at the end of the 
9969         paragraph.
9970
9971 2000-11-15  Robert Brady  <robert@suse.co.uk>
9972
9973         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
9974         'o' < 'p'.
9975         
9976         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
9977         bind_textdomain_codeset.
9978
9979         (gtk_init_check): Make the warning about translating default:LTR
9980         sterner.
9981         
9982 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
9983
9984         * **/Makefile.am : remove unecessary rules for win32-specific
9985         config-substituted targets. If you want these rules, use
9986         --enable-maintainer-mode (called automatically by autogen.sh).
9987         Stops a lot of unneccessary make-time warnings.
9988
9989         * gtk/gtktext{layout,display}.c: Factor in total width as
9990         well as screen when figuring alignment for word-wrap as well as
9991         no wrap; this is necessary to handle lines that cannot be wrapped
9992         at all.
9993
9994 2000-11-15  Havoc Pennington  <hp@redhat.com>
9995
9996         * gtk/testtext.c: Implement essential color cycling feature
9997
9998 2000-11-15  Havoc Pennington  <hp@redhat.com>
9999
10000         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
10001         when we invalidate the main window.
10002
10003         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
10004         GtkTextView will now invalidate the side windows for us when text
10005         changes.
10006
10007 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
10008
10009         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
10010         unconditionally, since we may need to update the horizontal
10011         scrollbars even if the height didn't change.
10012
10013         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
10014         the extra attrs, since some of them affect size.
10015
10016         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
10017         x_offset correctly.
10018
10019 2000-11-15  Havoc Pennington  <hp@redhat.com>
10020
10021         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
10022         don't move the first line out into the margin, instead move the
10023         whole paragraph in order to make space for the first line within 
10024         the margin
10025
10026 2000-11-15  Havoc Pennington  <hp@redhat.com>
10027
10028         * gtk/gtktextview.c (changed_handler): offset redraw rect by
10029         xoffset in addition to yoffset, so horizontal scrolling doesn't
10030         break redraws
10031
10032 2000-11-15  Havoc Pennington  <hp@redhat.com>
10033
10034         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
10035         from the cursor
10036         (render_layout_line): fix reversed test that caused weird
10037         underlines to get drawn
10038
10039 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
10040
10041         * gdk/linux-fb/gdkprivate-fb.h:
10042         Fix debug macros.
10043         
10044 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
10045
10046         * gdk/linux-fb/gdkprivate-fb.h:
10047         Added virtual functions set_pixel, get_color,
10048         fill_span and draw_drawable to the GC.
10049         Added global _gdk_fb_screen_gc to use instead of
10050         NULL when drawing to the screen.
10051         Added _gdk_fb_gc_calc_state() prototype.
10052
10053         * gdk/linux-fb/gdkgc-fb.c:
10054         Call _gdk_fb_gc_calc_state() on any gc state change.
10055
10056         * gdk/linux-fb/gdkglobals-fb.c:
10057         Add _gdk_fb_screen_gc
10058                 
10059         * gdk/linux-fb/gdkdrawable-fb2.c:
10060         _gdk_fb_gc_calc_state() calculates best functions
10061         for the GC state and depth.
10062         Moved bpp specialized code to separate functions.
10063         Added optimized 24 bpp AA draw_drawable.
10064
10065         * gdk/linux-fb/gdkevents-fb.c:
10066         Silence gcc warning.
10067
10068         * gdk/linux-fb/gdkimage-fb.c:
10069         Use _gdk_fb_screen_gc
10070
10071         * gdk/linux-fb/gdkwindow-fb.c:
10072         Init and use _gdk_fb_screen_gc
10073
10074         * gdk/linux-fb/mitypes.h:
10075         Remove unused types.
10076
10077 2000-11-14  Havoc Pennington  <hp@pobox.com>
10078
10079         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
10080         to pixels
10081
10082 2000-11-14  Havoc Pennington  <hp@pobox.com>
10083
10084         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
10085
10086         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
10087         unknown char, no real reason we were using a variable. 
10088         Remove gtk_text_unknown_char variable. Fix all the text widget
10089         files accordingly.
10090
10091         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
10092         since the Unicode spec seems to prefer that character for our
10093         purposes.
10094
10095 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
10096
10097         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
10098         value of g_getenv() isn't freeable, so g_strdup it.
10099
10100         * modules/input/inuktitut.c: Inuktitut input method.
10101
10102         * modules/input/Makefile.am: Build this.
10103         
10104 2000-11-14  Elliot Lee  <sopwith@redhat.com>
10105
10106         * gtk/Makefile.am: Install gtk.immodules, needed for operation
10107         of gtk programs.
10108
10109 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
10110
10111         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
10112         reversed > that was causing Home to go to end of previous line.
10113
10114         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
10115         modified-keypresses (leave for bindings.)
10116
10117         * modules/input/Makefile.am: Remove useless -export-dynamic
10118         from module LDFLAGS.
10119
10120 2000-11-14  Havoc Pennington  <hp@redhat.com>
10121
10122         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
10123         higher.
10124
10125         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
10126         account. Also, render rise, underline, background, etc. for
10127         pixbufs as well as text. Also, draw underlines one pixel higher.
10128
10129         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
10130         PangoAttribute for the rise, so it gets drawn properly. Also,
10131         add the GtkTextAppearance attribute for pixbuf/widget segments
10132         as well; we should go ahead and have rise, underline, background,
10133         stipple work for those
10134
10135         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
10136         Pango
10137
10138 2000-11-15  Tor Lillqvist  <tml@iki.fi>
10139
10140         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
10141
10142         * gtk/gtk.def: Update.
10143
10144         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
10145         included.
10146         (gtk_rc_get_im_module_file): Use run-time installation directory
10147         on Win32.
10148
10149         * gdk/win32/rc/gdk.rc: Remove.
10150         * gdk/win32/rc/gdk.rc.in: New file.
10151         * gdk/win32/rc/Makefile.am: New file
10152         * gdk/win32/Makefile.am: Corresponding changes.
10153
10154         * gtk/gtk.rc: Remove.
10155         * gtk/gtk-win32.rc.in: New file.
10156         * gtk/Makefile.am: Corresponding changes.
10157
10158         * configure.in: Corresponding changes.
10159
10160         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
10161         has a built gtkcompat.h. Developers using CVS code on Win32 can
10162         hand-edit it from gtkcompat.h.in.
10163
10164         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
10165         gtkcompat.h from gtkcompat.h.win32.
10166
10167 2000-11-14  Havoc Pennington  <hp@redhat.com>
10168
10169         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
10170         to default to GDK_ACTION_MOVE if the drag is within a single
10171         widget. Defaults to GDK_ACTION_COPY between widgets.
10172
10173 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
10174
10175         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
10176
10177         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
10178
10179         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
10180         srcdir != builddir
10181
10182         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
10183
10184         * configure.in (GTK_VERSION): Up to 1.3.2
10185
10186         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
10187         gtkimcontextxim.h
10188
10189         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
10190         missing doc comment.
10191
10192 2000-11-14  Alexander Larsson  <alexl@redhat.com>
10193
10194         * modules/linux-fb/basic.c:
10195         Use the glib iconv wrappers.
10196
10197 2000-11-13  Havoc Pennington  <hp@pobox.com>
10198
10199         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
10200         still more bugs.
10201
10202         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
10203         scroll the GdkWindows before realization.
10204
10205 2000-11-13  Havoc Pennington  <hp@redhat.com>
10206
10207         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
10208         where GC didn't always get updated properly
10209
10210         * demos/gtk-demo/textview.c (create_tags): Use subattributes
10211         of fonts instead of setting the entire font
10212
10213         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
10214         setting entire font
10215
10216         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
10217
10218         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
10219         a bunch of individually-settable font attributes. You can still 
10220         use the "font" and "font_desc" args, they just set all the font
10221         attributes at once.
10222
10223 2000-11-13 Elliot Lee <sopwith@redhat.com>
10224
10225         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
10226
10227 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
10228
10229         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
10230         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
10231
10232         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
10233         work better.
10234
10235 2000-11-13  Havoc Pennington  <hp@redhat.com>
10236
10237         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
10238         the module file.
10239
10240         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
10241         dest->language
10242
10243         * gtk/testtext.c: Test pixels above/below/inside paragraphs
10244         settings
10245
10246         * gtk/gtktextview.c: Implement object args and setters/getters for
10247         all the aspects of the GtkTextAttributes that are not set from
10248         GtkWidget attributes. This is spacing, justification, margins,
10249         etc.
10250
10251         (gtk_text_view_set_arg)
10252         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
10253         args
10254         (gtk_text_view_class_init): Add args for justify, left_margin,
10255         right_margin, indent, and tabs
10256         
10257
10258         * gtk/gtktextlayout.c (set_para_values): fix to display indent
10259         attribute properly
10260
10261         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
10262         replace with indent attribute
10263
10264         * gtk/gtktextlayout.c (set_para_values): multiply indent by
10265         PANGO_SCALE
10266
10267         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
10268         rearranging code to do that
10269         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
10270         i.e. don't subtract the top_margin first, just to keep
10271         all margin-futzing in one place.
10272
10273         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
10274
10275         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
10276         special case of last line, Pango now handles this itself.
10277         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
10278         Y coordinate
10279         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
10280         (find_display_line_above): wasn't moving the byte index as it
10281         iterated over lines, so always returned byte 0. Also, port to use
10282         PangoLayoutIter.
10283         (find_display_line_below): same problem as
10284         find_display_line_above. Also, port to use PangoLayoutIter.
10285
10286 2000-11-13  Alexander Larsson  <alexl@redhat.com>
10287
10288         * gdk/linux-fb/*.[ch]:
10289         Massive reindent to gtk+ standard. My hands hurt.
10290
10291         * gdk/linux-fb/gdkcolor-fb.c:
10292         Move GdkColorPrivateFB from inherited to windowing_data
10293
10294         * gdk/linux-fb/gdkcursor-fb.c:
10295         _gdk_cursor_new_from_pixmap made static
10296
10297         * gdk/linux-fb/gdkdnd-fb.c:
10298         GdkDragContextPrivate moved to windowing_data
10299
10300         * gdk/linux-fb/gdkdrawable-fb2.c:
10301         Removed endian.h, use glib endianness macros instead
10302         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
10303         and GDK_DRAWABLE_IMPL_FBDATA
10304
10305         * gdk/linux-fb/gdkfont-fb.c:
10306         Add empty gdk_font_load(). Needed for linking of Gtk+.
10307
10308         * gdk/linux-fb/gdkimage-fb.c:
10309         Removed endian.h, use glib endianness macros instead
10310         Moved GdkImagePrivateFB to windowing_data
10311         gdk_image_new_bitmap didn't always allocate enough
10312         memory.
10313
10314         * gdk/linux-fb/gdkinput-ps2.c:
10315         Added semi-working support for MS serial mice.
10316
10317         * gdk/linux-fb/gdkprivate-fb.h:
10318         s/GdkWindowPrivate/GdkWindowObject/
10319         Removed GdkWindowPrivate typedef
10320         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
10321         Removed GDK_DRAWABLE_P
10322         Move GdkColorPrivateFB from inherited to windowing_data
10323         Moved GdkImagePrivateFB to windowing_data
10324
10325         * gdk/linux-fb/gdkvisual-fb.c:
10326         Removed some unused debug code.
10327
10328         * gdk/linux-fb/gdkwindow-fb.c:
10329         Use stock cursors instead of including X headers.
10330         s/GdkWindowPrivate/GdkWindowObject/
10331
10332         * gdk/linux-fb/mitypes.h:
10333         Removed unused types.
10334
10335         * modules/linux-fb/basic.c:
10336         Use the pango fribidi wrappers.
10337
10338 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10339
10340         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
10341         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
10342         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
10343         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
10344         GEqualFunc where applicable.
10345         
10346         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
10347         pango_font_description_equal as changed in pango.
10348         
10349         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
10350
10351         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
10352
10353         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
10354
10355         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
10356
10357         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
10358
10359         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
10360
10361         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
10362         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
10363
10364         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
10365         gtk_rc_styles_compare -> gtk_rc_styles_equal.
10366
10367 2000-11-12  Havoc Pennington  <hp@pobox.com>
10368
10369         * demos/gtk-demo/Makefile.am (democodedir): change demo install
10370         dir to datadir/gtk+-2.0/demo
10371
10372         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
10373         sorts of text widget and Pango font bugs. Urgh.
10374
10375         * demos/gtk-demo/Makefile.am (demos): Add textview.c
10376
10377         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
10378         tree that you should double click to see the demo. Fix 
10379         types of variables to reflect changed return values from 
10380         GtkTreeStore and GtkTreeViewColumn constructors.
10381
10382         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
10383         newly-created buffer to prepare for GObject semantics
10384
10385         * gtk/testtext.c: don't leak the buffer with GObject semantics
10386
10387         * gtk/testtextbuffer.c: ditto
10388         
10389 2000-11-12  Havoc Pennington  <hp@pobox.com>
10390
10391         Rename this testgtk to gtk-demo to avoid confusion, and 
10392         install it so people can use it as a supplement to 
10393         the documentation.
10394         
10395         * demos/gtk-demo: Moved from demos/testgtk
10396
10397         * demos/testgtk: Removed
10398
10399         * configure.in: make Makefile in gtk-demo
10400         
10401         * demos/gtk-demo/Makefile.am: Install sample source to 
10402         datadir/gtk-demo (maybe there's a better place?), and 
10403         rename the binary to gtk-demo
10404         
10405         * demos/gtk-demo/main.c (load_file): Load installed sample
10406         source if source isn't found in pwd.
10407
10408 2000-11-09  Havoc Pennington  <hp@pobox.com>
10409
10410         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
10411         argument to set the char displayed when visibility == FALSE
10412         (gtk_entry_create_layout): If !entry->visible, replace 
10413         all chars with the "invisible char"
10414
10415         * gtk/testgtk.c: Test the invisible_char deal
10416         
10417 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
10418
10419         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
10420         can't get a native font in the right encoding.
10421
10422 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
10423
10424         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
10425         respectively.
10426
10427 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
10428
10429         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
10430         Fix warning when moving between paragraphs.
10431
10432         * gtk/gtkentry.[ch]: Change move => move_cursor, 
10433         delete => delete_from_cursor, insert => insert_at_cursor
10434
10435 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
10436
10437         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
10438
10439         * modules/input/imthai-broken.c: A Thai input method for use if
10440         Thai keys are really generating Latin1 keysyms.
10441
10442         * modules/input/Makefile.am: Build these.
10443
10444 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
10445
10446         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
10447         g_filename_{to,from}_utf8 now takes an extra parameter.
10448
10449         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
10450         strftime into UTF-8.
10451
10452         (column_from_x, gtk_calendar_paint_day_names): Support RTL
10453         calendars.
10454
10455         (gtk_calendar_paint_day_names): Draw day names in the right 
10456         place.
10457         
10458 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
10459
10460         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
10461         problem with using result of g_get_charset() backwards -
10462         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
10463
10464         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
10465         negative min_width/height and max_width/height to
10466         mean "requisition"; this allows setting a window
10467         to be user-resizable in only one direction easily.
10468
10469         * gtk/testgtk.c (create_main_window): Remove hard-coded
10470         usize - set a default size in the vertical direction.
10471
10472 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
10473
10474         * gtk/gtkrange.c: Add some missing casts. Support 
10475         2 and 3 button clicks on the arrows to mean 
10476         "move by pages" and "jump to end". (Like gtkspinbutton)
10477
10478 2000-11-12 Hans Breuer <Hans@Breuer.Org>
10479
10480         * gdk/win32/makefile.msc : reflect build module changes
10481
10482         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
10483         from GdkPixmap*, cast implementation member instead.
10484
10485         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
10486         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
10487         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
10488         more Gdi functions return value checking. 
10489         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
10490         GdkImagePrivateWin32 *.
10491
10492         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
10493         menus useable again. Add #pragma message to keep reminded on this issue.
10494         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
10495         windows. This allows to enable backing store on Win32!
10496
10497         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
10498         in drawable is of impl type. Correct specific type checks appropriate.
10499  
10500         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
10501         GDK_WINDOW_DESTROYED before allocating new resources.
10502
10503         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
10504
10505         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
10506         (gdk_window_foreign_new) initialize parent handle.
10507         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
10508
10509         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
10510         Let the GDI invalidate the window on MoveWindow call to fix scrolling
10511         problems (e.g. main buttons in testgtk). 
10512
10513 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
10514
10515         * gtk/gtkentry.c (gtk_entry_key_press): Call 
10516         gtk_widget_activate for GDK_Return.
10517
10518         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
10519         of preedit cursor position.
10520
10521 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
10522
10523         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
10524         static.
10525
10526 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
10527
10528         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
10529         out support for multiple locales; that simple doesn't
10530         work reliably with current Xlib
10531
10532         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
10533         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
10534         Add support for positioning the cursor within the preedit string.
10535
10536 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
10537
10538         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
10539         at XIM input method module.
10540
10541         * gtk/gtktextview.c: Check for bindings after passing
10542         events to im context filter.
10543
10544 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
10545
10546         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
10547         empty attribute lists properly.
10548
10549 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
10550
10551         * gtk/queryimmodules.c (main): Return non-zero exit
10552         status if errors were encountered querying any
10553         modules.
10554
10555         * modules/input/Makefile.am (moduledir): remove
10556         leftover bin program target.
10557
10558         * docs/make-todo: Fix typo in error message.
10559
10560 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
10561
10562         * configure.in: Add modules/input/Makefile
10563
10564 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
10565
10566         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
10567         don't include gtkthemes.h.
10568
10569         * gtk/testgtk.c gtk/testtext.c: Set environment variables
10570         to point
10571
10572         * gtk/Makefile.am: Add new .c and .h files, build 
10573         gtk-query-immodules and use it to create a gtk.immodules
10574         file for use of test programs.
10575
10576         * gtk/gtkpreview.c: remove extra blank line.
10577
10578 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
10579
10580         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
10581         Add the ability to add extra tables beyond the default
10582         one, and also the ability to have compose sequences 
10583         that are prefixes of other compose sequences. 
10584
10585         * gtk/gtkimcontextsimple.c: Export a preedit string which
10586         consists of possible candidates for keystrokes that have
10587         been entered but not yet committed.
10588
10589         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
10590         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
10591
10592         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
10593         Add a function to add input-method switching menu items
10594         to a menu.
10595
10596         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
10597         when switching input methods.
10598
10599         * gtk/gtkimcontextsimple.[ch]: Change the format of
10600         the compose table to allow compose tables of different
10601         lengths / sequence.
10602
10603 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
10604
10605         * gtk/gtkimmodule.[ch]: Support routines for loading
10606         GtkIMContext implementations dynamically at runtime.
10607
10608         * modules/input/imcyrillic-translit.c: A sample input
10609         method (based on GtkIMContextSimple with an extra table),
10610         which demonstrates preedit strings and the module
10611         system for input modules
10612
10613         * gtk/queryimmodules.c: Program to query the available
10614         input modules and write the results into a file.
10615          
10616         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
10617         extra config options "im_module_file" (cache file for
10618         input method modules), and "im_module_path" - path
10619         to look for modules when generating cache file.
10620
10621         This doesn't scale.
10622
10623 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
10624
10625         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
10626         generic code from gtkthemes into a new abstraction
10627         GtkModule which has the logic for implementing
10628         a loadable module which implements a number of 
10629         GObject types.
10630
10631 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
10632
10633         * gtk/gtkeditable.[ch]: Convert GtkEditable from
10634         a class into an interface  
10635         
10636         * gtk/gtkoldeditable.[ch]: Move the old editable
10637         implementation into here, so legacy widgets can
10638         still rely on the implemenation. GtkOldEditable
10639         exports GtkEditable. Make selection handling
10640         code use new text conversion functions (and
10641         handle UTF-8 as a side-effect). Use GtkClipboard
10642         for CLIPBOARD.
10643
10644         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
10645         Adopt to match above changes.
10646
10647         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
10648         avoid GtkOldEditable implementation. Restructure
10649         to reduce number of places that modify state directly.
10650         Move to GtkBindingSet. Display the preedit string.
10651         Queue recomputation of PangoLayout and scroll position
10652         to improve effiency of doing complex changes naively.
10653         Add a menu with cut/copy/paste and input method selection.
10654
10655 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
10656
10657         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
10658         to set preedit string and attributes; display preedit string by
10659         inserting string and attributes at cursor when creating the
10660         GtkTextLineDisplay.
10661
10662         * gtk/gtktextlayout.c: Move all conversions between byte
10663         positions in PangoLayout and GtkTextIter into new functions
10664         line_display_iter_to_index/index_to_iter that properly
10665         handle the preedit string.
10666
10667         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
10668         it to return const char * (eventually will end up
10669         as GCONST char *, most likely.)
10670
10671         * gtk/gtktextview.[ch]: Handle the preedit string, call
10672         gtk_im_context_reset() as necessary, add a menu to switch
10673         input methods.
10674         
10675         * gtk/gtktextlayout.[ch]: Remove useless
10676         gtk_text_layout_get_log_attrs() function.
10677
10678 2000-11-11  Tor Lillqvist  <tml@iki.fi>
10679
10680         * gdk/gdk.def
10681         * gtk/gtk.def: Update.
10682
10683         * gdk/win32/*.c: Add last argument to g_type_register_static()
10684         calls.
10685
10686         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
10687
10688         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
10689         generated by older wheel mouse drivers. Get the correct y
10690         coordinate from WM_MOUSEWHEEL messages.
10691
10692         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
10693         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
10694         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
10695         Debugging functions.
10696
10697         * gdk/win32/gdkprivate-win32.h: Declare them.
10698
10699         * gdk/win32/gdkinput-win32.h: Add declaration for
10700         gdk_input_window_destroy().
10701
10702         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
10703
10704 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
10705
10706         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
10707         function to help handle keeping things in sync.
10708
10709 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
10710
10711         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
10712         BOXED marshallers.
10713
10714         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
10715         (gtk_list_store_class_init): use the new BOXED marshallers.
10716
10717         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
10718         new_with_values to new_with_types.
10719         (gtk_tree_store_get_column_type): add this.
10720         (gtk_tree_store_class_init): use the new BOXED marshallers.
10721
10722         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
10723         mirror some POINTER marshallers.
10724
10725 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
10726
10727         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
10728         allow more interesting iterators.  Also, made the lifecycle of
10729         iterators more explicit.
10730
10731         * gtk/gtktreemodelsort.[ch]: New model for sorting.
10732
10733         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
10734         types.
10735
10736 2000-11-09  Alexander Larsson  <alexl@redhat.com>
10737
10738         * demos/testgtk/menus.c:
10739         Changes to make the new testgtk compile after
10740         gtk_menu_append was removed.
10741
10742         * gdk/linux-fb/gdkdrawable-fb2.c
10743         (gdk_fb_get_depth, gdk_fb_get_visual,
10744         gdk_drawable_impl_fb_class_init): Implement
10745         these drawable functions. Now GtkImages work again.
10746
10747         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
10748
10749         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
10750         
10751         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
10752         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
10753         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
10754         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
10755
10756 2000-11-08  Havoc Pennington  <hp@pobox.com>
10757
10758         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
10759         visible_set args, don't know where these had gone, I thought they
10760         used to be there
10761
10762         * gtk/testtext.c: Add a menu item to apply invisibility tag;
10763         now we can test the feature and see that it's totally broken.
10764
10765 2000-11-08  Havoc Pennington  <hp@pobox.com>
10766
10767         Make DND copy pixbufs and tags when source and target share a 
10768         tag table.
10769         
10770         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
10771         in-process GTK_TEXT_BUFFER_CONTENTS target
10772         (gtk_text_view_drag_data_received): Paste from
10773         GTK_TEXT_BUFFER_CONTENTS if we receive it.
10774
10775 2000-11-08  Alexander Larsson  <alexl@redhat.com>
10776
10777         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
10778         API changes.
10779
10780         * gtk/gtkmenu.c: Add support for scrolling menus.
10781         Remove gtk_menu_append/prepend/insert, these have been moved to
10782         gtkcompat.h as #defines.
10783
10784         * gtk/gtkcompat.h.in:
10785         Add compatibility #defines for gtk_menu_append/prepend/insert
10786
10787         * gtk/gtkmenu.h: Add data needed for scrolling menus.
10788         GtkMenuPositionFunc gets an extra argument push_in.
10789         gtk_menu_append/prepend/insert removed.
10790         
10791         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
10792         positioning behaviour to fit to scrolling menus.
10793
10794         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
10795         into menuitem->submeny. That is wrong, and broke torn
10796         off submenus of torn off menus, since they were unrealized
10797         when the first menu was unrealized.
10798
10799         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
10800         gtk_menu_shell_select_item() since these need to be overridden in
10801         GtkMenu.
10802
10803         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
10804         positioning behaviour to fit to scrolling menus.
10805         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
10806         the current item so that it is prelighted when the menu pops up.
10807         This is a workaround to the fact that the menu doesn't get the
10808         initial enter event (due to grabs).
10809
10810         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
10811         s/gtk_menu_append/gtk_menu_shell_append/
10812
10813         * gtk/gtknotebook.c:
10814         s/gtk_menu_insert/gtk_menu_shell_insert/
10815
10816         * gtk/testgtk.c (create_menu, create_menus):
10817         Create the first menu with 50 items so that menu scrolling
10818         can be tested.
10819         
10820         
10821         Patch from Jonathan Blandford  <jrb@redhat.com>
10822
10823         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
10824         system to handle size requests.  First, we ask what the size of
10825         the toggle is.  Then, when allocating the size, we allocate the
10826         toggle_size first.  This way we can have multiple menu-item
10827         classes w/o needing a seperate class for each.
10828
10829         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
10830         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
10831
10832         * gtk/gtkcheckmenuitem.c
10833         (gtk_check_menu_item_toggle_size_request): New function to handle
10834         the toggle size-request.
10835
10836 2000-11-07  Havoc Pennington  <hp@redhat.com>
10837
10838         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
10839         Half-ass somewhat fix this function, so that scrolling to the
10840         insertion point works. Pango hacking is in the future to really
10841         fix it.
10842
10843         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
10844         length of data, no longer used.
10845
10846         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
10847         method contents in here, get rid of destroy method
10848         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
10849         that were backward. Remove debug spew.
10850         (cut_or_copy): Make the clipboard work with insert_range to
10851         preserve tags and pixbufs, not just the primary selection.
10852
10853 2000-11-07  Havoc Pennington  <hp@redhat.com>
10854
10855         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
10856         to gtk_text_mark_get_visible
10857
10858         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
10859         bug that was generating an invalid iterator
10860
10861         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
10862         ensure_char_offsets() in front of code placing the iter in an
10863         invalid state.
10864
10865         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
10866         make override_location arg const
10867         (paste): Replace the selection if we paste into the 
10868         current selection
10869
10870         * gtk/gtkselection.h: Remove "GtkSelectioData"
10871         (struct _GtkSelectionData): move the definition here.
10872
10873         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
10874         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
10875
10876         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
10877
10878         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
10879         (gtk_text_buffer_insert_range_interactive): implement
10880         (gtk_text_buffer_get_tags): Remove, replaced by
10881         gtk_text_iter_get_tags()
10882
10883         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
10884         limit parameter, to avoid infinite linear scan.
10885         (gtk_text_iter_backward_search): Add search limit
10886         (gtk_text_iter_forward_find_char): Add search limit
10887         (gtk_text_iter_backward_find_char): Add search limit
10888
10889 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
10890
10891         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
10892         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
10893         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
10894         gdk/linux-fb/gdkwindow-fb.c:
10895         use g_object_new() instead of g_type_create_instance() which
10896         is a private function for fundamental type implementations.
10897
10898         * gdk/linux-fb/gdkinput-ps2.c:
10899         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
10900         instead just store the current modifier state. Add a (somewhat broken)
10901         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
10902         Rename exported function gdk_input_ps2_get_mouseinfo to
10903         gdk_input_get_mouseinfo.
10904
10905         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
10906         gdk/linux-fb/gdkwindow-fb.c:
10907         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
10908         
10909
10910 2000-11-02  Havoc Pennington  <hp@redhat.com>
10911
10912         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
10913         use stock buttons. Should be 100% source compatible, appropriate
10914         filesel fields now point to dialog->vbox and dialog->action_area.
10915         On the bizarre side, dialog->action_area and filesel->action_area
10916         are not the same widget.
10917         (gtk_file_selection_init): Put some padding around the selection
10918         entry, so it isn't touching the GtkDialog separator.    
10919
10920         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
10921         use stock buttons, etc. Should also be source compatible.
10922         Set the dialog default title in _init not _new().
10923         
10924         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
10925         Use stock buttons; don't put a button box inside the existing
10926         dialog button box. Don't bother with push/pop colormap anymore.
10927
10928         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
10929         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
10930         for message dialog, and necessary for the font selection and color
10931         selection with help and apply buttons.
10932         
10933         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
10934         to the created button widget. Set GTK_CAN_DEFAULT on the button.
10935         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
10936         between buttons, put less padding around the action area.
10937         (gtk_dialog_run): Exit on unmap rather than on destroy. 
10938         This will also exit the loop if the widget is hidden.
10939         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
10940         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
10941         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
10942         special-case delete event.
10943
10944         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
10945         formatting
10946         
10947 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
10948
10949         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
10950         button to temporarily disable position recording in the
10951         "saved position" test.
10952
10953 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
10954
10955         * gtk/gtkthemes.c: added compat code that temporarily implements
10956         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
10957         going to be revamped by owen's upcoming GtkModule patches, but
10958         untill then people want gtk to build, right? ;)
10959
10960 2000-11-04  Havoc Pennington  <hp@pobox.com>
10961
10962         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
10963         list
10964
10965         * docs/Changes-2.0.txt: Add note about
10966         gtk_container_get_toplevels()
10967
10968         * gtk/gtktextview.h: formatting
10969         
10970         * gtk/gtktextview.c: don't start descriptions with "Returns",
10971         confuses gtk-doc
10972
10973 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
10974
10975         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
10976         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
10977
10978 2000-11-03  Havoc Pennington  <hp@redhat.com>
10979
10980         * gtk/gtktexttagtable.c: Docs
10981         (gtk_text_tag_table_size): return a signed int
10982
10983         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
10984         (gtk_text_tag_event): make the event_object a GObject
10985
10986         * gtk/gtktextview.c: Write API docs for all functions.
10987
10988         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
10989         for gtk_text_view_get_window_type() called on one of the private
10990         windows.
10991
10992         * gtk/gtktextview.c: Instead of accessing text_view->buffer
10993         directly, call get_buffer() which demand-creates a default
10994         buffer. So gtk_text_view_new() can be used to create a view with a
10995         default buffer in it, if you just want an empty text box users can
10996         put data in. Useful for GUI builders also.
10997
10998 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
10999
11000         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
11001         the charset encodign portion MUST be in lowercase.
11002         * gtk/gtkrc.az: added file for Azeri language
11003
11004 2000-11-03  Havoc Pennington  <hp@redhat.com>
11005
11006         Get widgets working on the btree/buffer side. Display of them 
11007         still doesn't work.
11008         
11009         * gtk/gtktextview.c: start implementing child widget stuff
11010
11011         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
11012
11013         * gtk/gtktextlayout.c: handle embedded widgets
11014
11015         * gtk/gtktextdisplay.c: handle embedded widgets
11016
11017         * gtk/gtktextchild.c: Implement all the child anchor goo
11018
11019         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
11020         function
11021
11022         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
11023         (insert_pixbuf_or_widget_segment): abstract out common portions of 
11024         creating a child anchor or a pixbuf segment.
11025         (gtk_text_btree_create_child_anchor): new function
11026         (gtk_text_btree_unregister_child_anchor): new function
11027
11028         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
11029         allocate_child signal on GtkTextLayout
11030
11031         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
11032         values
11033         (gtk_text_iter_get_child_anchor): new function
11034
11035         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
11036         default handler for the changed signal, which calls
11037         gtk_text_buffer_set_modified(), instead of just always emitting
11038         changed then calling set_modified() manually. I guess this is
11039         maybe more flexible. It seems logical.
11040
11041 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
11042
11043         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
11044         now.
11045
11046         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
11047
11048 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
11049
11050         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
11051         been marked static.
11052
11053 2000-11-02  Havoc Pennington  <hp@redhat.com>
11054
11055         * gtk/testgtk.c (create_labels): had a test backward
11056
11057         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
11058         fields, so the dest GC ends up with the correct clip origin, 
11059         etc. Fixes a bug where colored labels didn't redraw 
11060         properly.
11061
11062 2000-11-02  Alexander Larsson  <alexl@redhat.com>
11063
11064         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
11065         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
11066         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
11067         Add last argument to t_type_register_static call.
11068         
11069         * gdk/linux-fb/gdkdrawable-fb2.c:
11070         Add last argument to t_type_register_static call.
11071         export the get_image drawable virtual function.
11072
11073         * gdk/linux-fb/gdkimage-fb.c:
11074         Add last argument to t_type_register_static call.
11075         rename gtk_image_get to _gdk_fb_get_image and
11076         export it for use by gdkdrawable-fb2.
11077
11078         * gdk/linux-fb/gdkprivate-fb.h:
11079         export _gdk_fb_get_image.
11080
11081         * gdk/linux-fb/gdkselection-fb.c:
11082         Add new api call stubs.
11083
11084         * gtk/Makefile.am:
11085         Missing ( in linux-fb part.
11086
11087         * modules/linux-fb/Makefile.am:
11088         Must link with gdk_pixbuf or get unresolved symbol.
11089
11090 2000-11-01  Havoc Pennington  <hp@pobox.com>
11091
11092         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
11093         GTK_TYPE_TEXT_ITER and BOXED marshallers
11094
11095         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
11096
11097         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
11098         
11099         * gtk/gtk-boxed.defs: add GtkTextIter
11100
11101         * gtk/gtkmarshal.list: Add marshallers for text widget that 
11102         properly use OBJECT and BOXED
11103
11104 2000-11-01  Havoc Pennington  <hp@redhat.com>
11105
11106         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
11107
11108         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
11109         before returning it. 
11110         
11111 2000-11-01  Havoc Pennington  <hp@redhat.com>
11112
11113         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
11114         Clip the rectangle to be rendered to the drawable, since
11115         get_from_drawable() requires a region within the drawable
11116
11117 2000-11-01  Havoc Pennington  <hp@redhat.com>
11118
11119         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
11120         from coordinates.
11121
11122 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
11123
11124         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
11125         it isn't NULL.
11126
11127 2000-11-01  Havoc Pennington  <hp@pobox.com>
11128
11129         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
11130         on a label
11131         (gtk_label_finalize): unref the attr list if any.
11132
11133         * gtk/testgtk.c (create_get_image): close test on second click
11134         (make_message_dialog): close dialog if it exists
11135
11136         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
11137
11138         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
11139         gdk-pixbuf
11140
11141         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
11142         from Pango markup format
11143         (gtk_label_set_markup_with_accel): ditto but with accelerator
11144         parsing
11145
11146         * gtk/gtkimage.c (gtk_image_expose): reformatting.
11147
11148         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
11149         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
11150         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
11151         call gdk_window_get_origin().
11152
11153         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
11154         implement GDK_PIXBUF_ALPHA_FULL
11155         
11156 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
11157
11158         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
11159         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
11160         g_signal_handlers_disconnect_matched to block/unblock and disconnect
11161         multiple handlers respectively, instead of only treating the
11162         first handler found (bug reported by owen).
11163
11164 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
11165
11166         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
11167
11168         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
11169
11170         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
11171         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
11172         gtk/gtktreeviewcolumn.h: Fixed inline docs.
11173
11174         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
11175         widget.  Needs writing someday.
11176
11177         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
11178         the docs.
11179
11180 2000-10-30  Havoc Pennington  <hp@redhat.com>
11181
11182         * gtk/gtktextview.h, gtk/gtktextview.c:
11183         Rename delete_at_cursor delete_from_cursor, and 
11184         move to move_cursor.
11185
11186 2000-10-30  Havoc Pennington  <hp@redhat.com>
11187
11188         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
11189         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
11190         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
11191         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
11192         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
11193         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
11194         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
11195         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
11196         gtktexttypes.h, gtktextview.c, gtktextview.h:
11197
11198         Massive reindentation and reformatting. Arg alignment and comments
11199         still need fixing in various places.
11200
11201 2000-10-30  Havoc Pennington  <hp@redhat.com>
11202
11203         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
11204         to be named insert_at_cursor and delete_at_cursor so C++ can
11205         handle them.
11206
11207 2000-10-28  Tor Lillqvist  <tml@iki.fi>
11208
11209         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
11210         to get a double directory separator in case the home directory
11211         ends with one. This would cause trouble especially on Windows,
11212         where the path will be confused with the syntax for an an UNC
11213         (network share) path \\server\share\path.
11214         (gtk_rc_add_initial_default_files): Ditto.
11215
11216 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
11217
11218         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
11219
11220         * gtk/gtktextview.c: Use correct marshallers.
11221
11222 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
11223
11224         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
11225         use new iter stuff, and added all the appropriate signals et al.
11226
11227         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
11228         code is internal to gtk only.
11229
11230 2000-10-28  Tor Lillqvist  <tml@iki.fi>
11231
11232         * gtk/gtk.def
11233         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
11234         glib-genmarshal etc.
11235
11236 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
11237
11238         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
11239         parallel builds.
11240
11241 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
11242
11243         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
11244
11245 2000-10-27  Robert Brady  <robert@suse.co.uk>
11246
11247         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
11248         en_GB (British), ia (Interlingua).
11249
11250 2000-10-26  Havoc Pennington  <hp@redhat.com>
11251
11252         * gtk/gtktextiter.c (my_strrstr): fix constness warning
11253
11254         Fixed output of:
11255         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
11256         
11257         * gtk/gtktextsegment.c (char_segment_new): rename
11258         (_char_segment_new_from_two_strings): rename
11259         (_toggle_segment_new): rename
11260         
11261         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
11262         (make_clipboard_widget): make it static
11263         (text_get_func): static
11264         (text_clear_func): static
11265
11266         * gtk/gtkcolorsel.c (adjustment_changed): make this function
11267         static
11268         (hex_changed): make it static
11269         (hsv_changed): make it static
11270         (opacity_entry_changed): make it static
11271
11272         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
11273         (toggle_segment_check_func): rename with _gtk
11274
11275         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
11276         (_widget_segment_new): rename
11277         (_widget_segment_add): rename
11278         (_widget_segment_remove): rename
11279         (_widget_segment_ref): rename
11280         (_widget_segment_unref): rename
11281
11282         * gtk/gtktextmark.c (_mark_segment_new): Rename
11283         _gtk_mark_segment_new   
11284
11285 2000-10-26  Havoc Pennington  <hp@redhat.com>
11286
11287         * gtk/gtkmarshal.list: add new marshallers used by the text widget
11288         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
11289         types
11290
11291         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
11292         marshaller types
11293
11294         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
11295         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
11296         license on these files.
11297
11298         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
11299         work.
11300
11301         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
11302         runtime random number different for each tree, instead of 
11303         a constant I made up.
11304
11305 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
11306
11307         * gtk/Makefile.am: buncha cleanups, kludged build sources
11308         dependencies with a Makefile: oldest-source-stamp dependancy
11309         for the moment. automake is really fighting us here, with
11310         intentionally not allowing user-defined rules or dependancies
11311         prior to it's -include $(DEP_FILES) statement. sucks rocks!
11312
11313         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
11314         to public headers. tehy have a comment stating that they are
11315         "semi-public" aren't included by gtk.h and if enums popup there,
11316         they can be /*< skip >*/-ed.
11317
11318         * gtk/gtktextlayout.h: 
11319         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
11320         added LGPL... <SIGH>
11321
11322 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
11323
11324         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
11325         GtkTreeIter.  Added iterators everywhere.
11326
11327         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
11328
11329         * gtk/gtktreeviewselection.c: Changed to use the iterators.
11330
11331         * gtk/gtktreestore.c: Changed to use the iterators.
11332
11333         * gtk/gtkliststore.c: Commented out the code.  Will convert to
11334         iterators tomorrow.
11335
11336         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
11337         iterators tomorrow.
11338
11339         * gtk/treestoretest.c: Changed to use iterators.
11340
11341         * demos/testgtk/main.c: Moved to use the new iterator system.
11342
11343 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
11344
11345         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
11346         localization misbehaviour.
11347
11348         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
11349         a useless type without copy/free.
11350
11351         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
11352         of GTK_TYPE_CTREE_NODE.
11353
11354 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
11355
11356         * gtk/gtksignal.c:
11357         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
11358         applicable.
11359
11360         * gtk/gtk-boxed.defs (GtkSelectionData): specify
11361         gtk_selection_data_copy and gtk_selection_data_free
11362         do GtkSelectionData work as params in signals.
11363
11364 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
11365
11366         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
11367         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
11368         couldn't they at least give it a non-standard name?
11369         
11370         * gtk/gtktextlayout.c: arg! yet another implementation of
11371         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
11372
11373         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
11374         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
11375         home. now i know this _is_ a conspiracy.
11376
11377         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
11378         ::state-changed.
11379
11380         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
11381         (gtk_accel_group_create_add): marshaller signature fixups.
11382
11383         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
11384         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
11385
11386         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
11387         anymore.
11388
11389 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
11390
11391         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
11392         due to the signal system changes, it wouldn't build currently. to
11393         be fixed soon.
11394
11395         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
11396
11397         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
11398         so it needs gtk_marshal_VOID__ENUM() instead of
11399         gtk_marshal_NONE__UINT().
11400
11401         * gdk/gdk*.c: adapted type registration functions.
11402
11403         * gtk/gtkbindings.c:
11404         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
11405         gone.
11406
11407         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
11408
11409         * gtk/gtkobject.c:
11410         (gtk_object_destroy):
11411         (gtk_object_shutdown): fixed recursion guards. basically we have to
11412         catch the case where any of GObject.shutdown() or gtk_object_destroy()
11413         is called during ::destroy, and avoid recursion there.
11414
11415         * gtk/gtktypeutils.c:
11416         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
11417         boxed_copy/boxed_free. this needs a more general solution based on a
11418         publically installed code-generator utility.
11419
11420         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
11421         glib's gobject has support for that now.
11422         define GtkSignalMarshaller in terms of GSignalCMarshaller.
11423
11424 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
11425
11426         * gtk/gtksignal.[hc]:
11427         * gtk/gtkmarshal.[hc]:
11428         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
11429         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
11430         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
11431         care of that.
11432
11433         * *.c: marshaller name fixups.
11434
11435         * gtk/gtkmarshal.list: added a comment briefing the format.
11436
11437 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
11438
11439         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
11440         compatibility macros here now. more specifically, most of
11441         the API is preserved (yes, _most_, nonwithstanding the
11442         following exceptions listed, the API is stil lHUGE ;)
11443         things that got removed completely:
11444         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
11445         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
11446         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
11447         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
11448         gtk_signal_remove_emission_hook().
11449         non-functional functions variants:
11450         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
11451         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
11452         not supported anymore.
11453         (gtk_signal_compat_matched): new internal function to aid
11454         implementation of the compatibility macros, it  provides
11455         functionality to block/unblock/disconnect handlers based
11456         on func/data.
11457
11458         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
11459
11460         * *.c: adaptions to new type registration API signatures.
11461
11462 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
11463
11464         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
11465
11466 2000-10-25  Robert Brady  <robert@suse.co.uk>
11467
11468         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
11469         gdk_property_delete): If window == NULL, assume the root window.
11470         (restoring the behaviour that was in 1.2).
11471         
11472         * gtk/testtext.c (save_buffer): Allow creation of new files when
11473         saving.
11474
11475         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
11476         calls to read().
11477
11478 2000-10-25  Tor Lillqvist  <tml@iki.fi>
11479
11480         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
11481
11482         * gdk/win32/gdkdrawable-win32.c
11483         * gdk/win32/gdkimage-win32.c
11484         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
11485         X11 backend.
11486
11487         * gdk/win32/gdkcc-win32.c
11488         * gdk/win32/gdkcolor-win32.c
11489         * gdk/win32/gdkfont-win32.c
11490         * gdk/win32/gdkinput-win32.c
11491         * gdk/win32/gdkmain-win32.c
11492         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
11493
11494 2000-10-24  Havoc Pennington  <hp@redhat.com>
11495
11496         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
11497         it a static function
11498
11499         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
11500         redraw text when a tag is applied to it.
11501
11502         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
11503         (gtk_text_tag_affects_nonsize_appearance): private functions to
11504         see if a tag requires various kinds of redraw/layout to be queued
11505         up.
11506
11507         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
11508
11509         * gtk/testtext.c (fill_example_buffer): Put the cursor 
11510         at the start of the buffer, so search works by default
11511
11512         * gtk/gtktextiter.c (lines_match): init match_start always
11513
11514         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
11515         function, get iter at a line + a byte index
11516
11517         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
11518         to set byte position within a line
11519         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
11520
11521 2000-10-23  Havoc Pennington  <hp@redhat.com>
11522
11523         * gtk/testtext.c: Re-enable the "find" dialog
11524
11525         * gtk/testgtk.c: Add test for gdk_drawable_get_image
11526         
11527         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
11528         the arguments to gdk_draw_drawable were in the wrong order
11529         (gdk_window_paint_init_bg): This function was ignoring the
11530         init_region, instead of clipping to it, so the entire backing
11531         pixmap was cleared on every begin_paint()
11532         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
11533         was in here again, the loop kept using the same GtkWindowPaint
11534         over and over.
11535         (gdk_window_begin_paint_region): Fix a bug where we had two
11536         x_offset instead of x_offset and y_offset
11537
11538         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
11539         before we get the image.
11540         (gdk_draw_drawable): get the composite before we draw the drawable.
11541         (gdk_drawable_real_get_composite_drawable): default
11542         get_composite_drawable implementation that returns the drawable 
11543         itself
11544
11545         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
11546         get_composite_drawable virtual function
11547
11548         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
11549         list-walking bug
11550
11551         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
11552         make this work if the source drawable is a GdkDrawableImplX11
11553         instead of a public drawable type. This is really broken; the
11554         problem is that GdkDrawable needs a virtual method get_xid(), but
11555         of course that doesn't work in practice. Enter RTTI.
11556
11557         Also, improve mismatched depth message.
11558
11559         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
11560         GdkPixmap
11561
11562         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
11563         install _gdk_x11_get_image as our implementation of get_image
11564         
11565         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
11566         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
11567
11568         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
11569         gdk_drawable_get_image
11570
11571         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
11572
11573         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
11574         get_image
11575
11576         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
11577         trailing semicolon after for loop
11578
11579 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
11580
11581         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
11582         where font_desc for widget's context lagged widget's font_desc by
11583         one step.
11584
11585 2000-10-22  Tor Lillqvist  <tml@iki.fi>
11586
11587         * gdk/win32/gdkgc-win32.c
11588         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
11589
11590         * gtk/makefile.mingw.in
11591         * gtk/gtk.def: Updates.
11592
11593         * gtk/testgtk.c: sleep() is called _sleep in MS's C
11594         library.
11595
11596         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
11597
11598         * gtk/makefile.msc: Remove
11599
11600         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
11601
11602         * gtk/Makefile.am: Add it.
11603
11604         * configure.in: Generate it.
11605
11606         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
11607         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
11608         something even if not implemented, to satisfy picky MSVC.
11609
11610         Patches by Hans Breuer:
11611         
11612         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
11613         SetBkMode() and SetTextAlign() before calling
11614         pango_win32_render().
11615
11616         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
11617         Set hcliprgn to NULL after destroying it.
11618         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
11619
11620         * gdk/win32/gdkgeometry-win32.c
11621         (_gdk_windowing_window_queue_antiexpose): More effective
11622         implementation.
11623
11624         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
11625         depth as default, not the visual's.
11626
11627         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
11628         against empty title.
11629
11630         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
11631         IMAGE_PRIVATE_DATA.
11632
11633         * gdk/win32/gdkimage-win32.c: Use it.
11634
11635 2000-10-22  Robert Brady  <robert@suse.co.uk>
11636
11637         * configure.in: Check for bind_textdomain_codeset
11638
11639         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
11640         present, make use of it.
11641
11642         Add a translatable string "default:LTR" which, if translated
11643         to "default:RTL", will cause the default direction to be
11644         Right-to-Left.
11645
11646         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
11647         direction if marked as flippable.
11648
11649         * gtk/gtkhscale.c: Mark widget as flippable.
11650         
11651 2000-10-04  Havoc Pennington  <hp@redhat.com>
11652
11653         * gtk/testgtk.c (create_buttons): create some stock buttons
11654         with the default accel group
11655         (create_image): test some new GtkImage features
11656         (make_message_dialog): test GtkMessageDialog
11657         (create_modal_window): fix someone's bizzarro indentation
11658
11659         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
11660         GTK_WIN_POS_CENTER_ON_PARENT. 
11661         Add "destroy with parent" setting, which means the window goes
11662         away with its transient parent.
11663         (gtk_window_get_default_accel_group): get the default accel group
11664         for the window.
11665         (gtk_window_set_destroy_with_parent): set/unset destroy with
11666         parent flag
11667         (gtk_window_read_rcfiles): invalidate icon set caches
11668         after reloading rcfiles 
11669
11670         * gtk/gtkenums.h (GtkWindowPosition): add
11671         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
11672         on its parent window when the dialog is mapped for the first time.
11673
11674         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
11675         a simple message dialog class
11676         
11677         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
11678         handler to emit response signal, and maybe later it would
11679         honor a hide_on_delete flag - though that isn't there yet.
11680         Set border width on the vbox to 2, so we get some padding.      
11681         Use a button box for the action area.
11682         (gtk_dialog_key_press): synthesize a delete event if Esc
11683         is pressed and the GtkWidget key press handler didn't 
11684         handle the escape key.
11685         (gtk_dialog_new_with_buttons): new function creates a dialog
11686         with some default buttons in it.
11687         (gtk_dialog_add_action_widget): add an activatable widget
11688         as a button in the dialog - you can also add a non-activatable
11689         widget by accessing the action area directly.
11690         (gtk_dialog_add_button): add a simple button - stock ID or 
11691         label - to the action area
11692         (gtk_dialog_response): emit response signal
11693         (gtk_dialog_run): block waiting for the dialog, return 
11694         the response. Override normal delete_event behavior, so that 
11695         delete_event does nothing inside gtk_dialog_run().
11696
11697         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
11698         emitted when an action widget is clicked or the dialog gets
11699         delete_event
11700
11701         * gtk/gtk.h: add gtkmessagedialog.h
11702
11703         * gtk/Makefile.am: add gtkmessagedialog.[hc]
11704
11705 2000-10-18  Havoc Pennington  <hp@redhat.com>
11706
11707         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
11708         where any number of empty lines would get skipped
11709
11710         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
11711         edge.
11712
11713         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
11714         warning about invalid iterators (explain more thoroughly)
11715         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
11716
11717         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
11718         big
11719
11720         * demos/*.c: Add error handling
11721
11722         * gtk/gtktextbuffer.c: don't modify const iterators
11723
11724         * gtk/gdk-pixbuf-loader.c: Add full error handling here
11725
11726         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
11727         on file load
11728
11729         * gtk/gtkiconfactory.c: Update to reflect addition of error
11730         handling to gdk-pixbuf loaders
11731
11732 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
11733
11734         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
11735         move to new modularized testgtk.
11736
11737 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
11738
11739         * gtk/gtktreeview.c: Draw the arrows correctly.
11740
11741         * gtk/gtktreemodel.c: Added user docs.
11742
11743         * gtk/gtk.h: remove gtktreedatalist.h.
11744
11745         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
11746         parent when generating my type.
11747
11748         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
11749         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
11750
11751 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
11752
11753         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
11754         GtkTreeModel from object to interface.
11755
11756 2000-10-16  Havoc Pennington  <hp@redhat.com>
11757
11758         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
11759         compilation
11760
11761 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
11762
11763         * gtk/gtktreeselection.c: Add API documentation to all public
11764         functions.
11765
11766         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
11767         functions.
11768
11769 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
11770
11771         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
11772         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
11773         docs to all public functions.
11774
11775         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
11776         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
11777         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
11778         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
11779         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
11780         issue.
11781
11782 2000-10-14  Robert Brady  <robert@suse.co.uk>
11783
11784         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
11785
11786 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
11787
11788         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
11789         values other then G_TYPE_STRING.
11790         * gtk/gtktreeselection.c: Minor commenting updates.
11791         * gtk/gtktreeview.c: Format updates.
11792
11793 2000-10-09  Tor Lillqvist  <tml@iki.fi>
11794
11795         * README.win32: Update.
11796
11797         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
11798         lines that had been deleted by mistake (?).
11799
11800         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
11801         also the case fg==white and bg==black (but still not randomly
11802         coloured cursors). Thanks to Wolfgang Sourdeau.
11803
11804         * gdk/win32/*.c: Silence gcc -Wall.
11805
11806         * gtk/gtk.def: Add missing entry points.
11807
11808         Fixes by Hans Breuer:
11809
11810         * gdk/makefile.msc
11811         * gdk/win32/makefile.msc: Update.
11812
11813         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
11814         some MSVC thing, presumably), cause breakpoint on failures. Add
11815         GDK_NOR case. Call g_log_set_always_fatal.
11816
11817         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
11818         should be pased by reference.
11819         
11820         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
11821         
11822         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
11823
11824         * gdk/win32/gdkevents-win32.c
11825         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
11826
11827         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
11828         implementation object.
11829
11830         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
11831         not just windows.
11832         
11833         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
11834         Use the wrapper object.
11835         
11836 2000-10-06  Havoc Pennington  <hp@redhat.com>
11837
11838         * Makefile.am (SRC_SUBDIRS): contrib subdir
11839
11840         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
11841         so it can be used in Xlib version
11842
11843         * demos/testpixbuf.c (update_timeout): error checking from 1.0
11844         tree
11845
11846         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
11847         change from 1.0 tree that returns first frame of animation
11848         if the loaded file is an animation.
11849
11850         * contrib: add new directory to hold stuff that comes with GTK+
11851         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
11852         
11853         * configure.in: add contrib/*
11854
11855 2000-10-05  Havoc Pennington  <hp@redhat.com>
11856
11857         * demos/testpixbuf-save.c: add pixbuf save test
11858
11859         * demos/Makefile.am: add testpixbuf-save.c
11860
11861 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
11862
11863         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
11864         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
11865         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
11866         * gtk/gtktreeselection.[ch]: Replaced
11867         "node_selected"/"node_unselected" signal with "selection_changed"
11868         signal.
11869
11870 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
11871
11872         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
11873         tree widget.
11874
11875 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
11876
11877         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
11878         drawing.
11879
11880 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
11881
11882         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
11883         Move list pointer forwards before removing item from
11884         list. (Crash reported by Salmaso Raffaele)
11885
11886         * gdk/gdkwindow.h: Remove spurious trailing ,
11887
11888         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
11889         dependencies on uninstalled libraries, sorry folks.
11890
11891 2000-10-04  Havoc Pennington  <hp@redhat.com>
11892
11893         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
11894         gtk/gtkiconfactory.c: Fix copyrights    
11895
11896         * demos/testpixbuf.c: add inline pixbuf test
11897         
11898 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
11899
11900         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
11901         Add gdk_window_iconify.
11902
11903         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
11904         (gdk_window_set_geometry_hints): Add win_gravity
11905         to geometry structure.
11906
11907         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
11908         Implement _NET_WM_PING.
11909
11910         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
11911         Set _NET_WM_PID on the client leader.
11912
11913         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
11914         Handle UTF-8 better.
11915
11916         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
11917         UTF-8 better, set _NET_WM_NAME as well. Only set
11918         icon name if it hasn't previously been explicitely 
11919         set.
11920
11921 2000-10-03  Havoc Pennington  <hp@redhat.com>
11922
11923         * gtk/testtextbuffer.c: clean up trailing whitespace,
11924         add extensive tests for tag toggle iteration.
11925         
11926         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
11927         distance
11928
11929         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
11930         optimize case where the tag root is on level 1
11931         (gtk_text_line_previous_could_contain_tag): attempt to implement
11932         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
11933         functionality
11934
11935         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
11936         Implement this, though not very efficiently.
11937
11938         * gtk/gtktextiterprivate.h: reformat
11939
11940         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
11941         iterator
11942
11943         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
11944         this to properly revalidate the iterators.
11945
11946         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
11947         properly at the end of the line (and therefore on empty lines)
11948
11949         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
11950         maybe we should return a value...
11951
11952 2000-10-03  Tor Lillqvist  <tml@iki.fi>
11953
11954         * config.h.win32: Guard definition of alloca(). glib.h now handles
11955         that.
11956
11957         * gdk/gdk.def
11958         * gtk/gtk.def: Add new entry points.
11959
11960         Changes just to make GTK+ build without errors on Win32. No hope
11961         of it working in its current state, though...:
11962         
11963         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
11964         some functions from the X11 backend, just to make GTK+ build.
11965
11966         * gdk/makefile.mingw.in
11967         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
11968         number. Add new object files.
11969
11970         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
11971         GetMessageTime to get timestamp (where on X11 uses
11972         gdk_x11_get_server_time()).
11973
11974 2000-10-02  Havoc Pennington  <hp@pobox.com>
11975
11976         * gtk/gtktextview.c: text_window_* weren't static and should have
11977         been.
11978         Start work on child widgets; not yet complete, syncing to 
11979         office computer.
11980
11981         * gtk/gtktextchild.h: change this to contain a public interface,
11982         starting work on child interfaces.
11983         * gtk/gtktextchildprivate.h: move private interfaces here
11984
11985         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
11986
11987         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
11988         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
11989         gtk/gtktextmark.c: copyright notices
11990
11991         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
11992         internal functions      
11993
11994         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
11995         internal function
11996
11997         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
11998         Reformatting    
11999
12000 2000-09-30  Havoc Pennington  <hp@pobox.com>
12001
12002         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
12003         NULL start/end pointers
12004
12005         * gtk/gtktextbuffer.c: Write some docs
12006         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
12007         NULL, so you can just check whether there's a selection.        
12008
12009         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
12010         cleanup_line or segments_changed ourselves, it gets done 
12011         in unlink_segment
12012
12013         * gtk/gtktextmark.h:
12014         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
12015         
12016         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
12017
12018         * gtk/gtktextmark.c: delete some more old Tk cruft
12019
12020         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
12021         mark before removing it, so we can emit MARK_DELETED with a valid
12022         pointer.
12023         (gtk_text_buffer_mark_set): hold ref across signal emission
12024
12025         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
12026         whining about attempts to delete special marks
12027
12028         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
12029         underscore, since it's internal.
12030
12031         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
12032         now implemented in terms of iterators in gtktextiter.h
12033
12034         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
12035         New function, destructively sets contents of buffer. Also 
12036         a convenient way to clear the buffer by setting text to ""
12037
12038         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
12039         multiline string literal
12040
12041         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
12042         text changes.
12043
12044         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
12045         is not dereferenceable
12046         (gtk_text_iter_forward_lines): fix return value
12047
12048 2000-09-29  Havoc Pennington  <hp@redhat.com>
12049
12050         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
12051
12052         * gtk/gtktextview.c: Implement drag thresholding; change functions 
12053         that set border window size to have nicer name
12054         (gtk_text_view_mark_set_handler):  Fix this to have the 
12055         right signature.
12056
12057         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
12058
12059         * gtk/testtext.c: Update with API changes, put line numbers on 
12060         both sides.
12061         
12062         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
12063         with this
12064
12065         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
12066         pixbuf; delete a big block of #if 0 Tk code
12067
12068         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
12069         insert_pixmap with insert_pixbuf
12070
12071 2000-09-29  Martin Baulig  <baulig@suse.de>
12072
12073         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
12074         confusion with the GdkPixbuf of the GNOME 1.x platform.
12075
12076 2000-09-29  Havoc Pennington  <hp@pobox.com>
12077
12078         * gtk/gtktextview.c: Implement the side windows.
12079
12080         * gtk/testtext.c: Implement simple line numbering in the 
12081         left side window; seems to make scrolling sloooow. Oops.
12082         Also, cursor blink is for some reason causing redraws
12083         of the line numbers. Should investigate...
12084
12085 2000-09-28  Havoc Pennington  <hp@redhat.com>
12086
12087         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
12088         scrolling child windows, and draw focus rectangle properly.
12089         
12090         (gtk_text_view_buffer_to_window_coords):
12091         Coordinate transformation to deal with all these freaking windows
12092         and offsets
12093         (gtk_text_view_window_to_buffer_coords): transform the other way
12094
12095         * gtk/testtext.c (create_buffer): Update to match Pango API change
12096
12097         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
12098         anonymous tags
12099         (foreach_unref): don't emit remove signal from finalize, just
12100         set tag's parent to NULL
12101
12102 2000-09-26  Havoc Pennington  <hp@redhat.com>
12103
12104         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
12105         Fix some warnings       
12106
12107 2000-09-26  Havoc Pennington  <hp@redhat.com>
12108
12109         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
12110         headers into the private header list
12111
12112         * Makefile.am (pkgconfig_DATA): install pkg-config files
12113
12114         * configure.in: add pkg-config files
12115
12116         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
12117
12118         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
12119         outstanding icon caches on theme change.
12120
12121         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
12122         important types:
12123
12124         (GtkIconSource): Specification for creating a pixbuf 
12125         appropriate for a direction/state/size triplet from 
12126         a source pixbuf or filename
12127
12128         (GtkIconSet): List of GtkIconSource objects that are used to
12129         create the "same" icon (e.g. an OK button icon), and cache for
12130         rendered icons
12131
12132         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
12133         up the icon set for a given stock ID.  GTK maintains a stack of
12134         GtkIconFactory to search, and applications or libraries can add
12135         additional icon factories on top of the stack
12136         
12137         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
12138         the set of GtkIconSource specified for a given stock ID into 
12139         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
12140         RcStyle, under the specified stock ID.
12141
12142         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
12143         render_icon used to derive a GdkPixbuf from a GtkIconSource.
12144         This allows people to theme how prelight, insensitive, etc. are
12145         done.
12146
12147         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
12148         icon factories for a style, and return the resulting 
12149         icon set if any.
12150
12151         (gtk_style_render_icon): Render an icon using the render_icon 
12152         method in the GtkStyleClass.
12153
12154         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
12155         Use the style for a given widget to look up a stock ID, get the
12156         icon set, and render an icon using the render_icon method 
12157         of the style
12158
12159         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
12160         (contains information about a stock item), the built-in stock item
12161         IDs, and functions to add/lookup stock items.
12162
12163         * gtk/stock-icons/*: Stock icons that come with GTK
12164
12165         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
12166         a button based on a GtkStockItem
12167         (gtk_button_new_accel): Takes a uline string and accel group, and
12168         installs the accelerator.
12169
12170         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
12171         image-display widget.
12172
12173 2000-09-25  Havoc Pennington  <hp@redhat.com>
12174
12175         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
12176
12177         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
12178         Fix a bug when removing node data, we didn't properly 
12179         re-splice the linked list after removing the data.
12180
12181         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
12182         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
12183
12184         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
12185
12186         * gtk/gtktextlayout.c (set_para_values): Set tab array 
12187         for the layout from the GtkTextTag.
12188
12189         * gtk/gtktexttypes.h: delete tab and search cruft, 
12190         remove g_convert() in favor of GLib version
12191
12192         * gtk/gtktexttypes.c: remove tab implementation from here,
12193         move to Pango
12194
12195         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
12196         tab stuff using new PangoTabArray from Pango
12197
12198         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
12199         unused border_width stuff
12200
12201 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
12202
12203         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
12204         glib) and now useless utf_to_latin1() latin1_to_utf()
12205
12206         * gtk/gtktextview.[ch]: Change ::move_insert and
12207         ::delete_text action signals to ::move and ::delete;
12208         create the signals with the right enumeration type,
12209         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
12210         C-v bindings, change Home, End to move to beginning/end
12211         of line, Add C-Home C-End to move to beginning/end
12212         of buffer. Change ::cut_text to ::cut_clipboard, etc;
12213         combine ::scroll_text into ::move; use new GtkSelectionData
12214         functions to simplify DND text handling.
12215         
12216         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
12217         deletion enumerations here, rename enumeration values to 
12218         be consistently plural.
12219
12220         * gtk/gtktextbuffer.c: Use new clipboard interfaces
12221         for cut/copy/paste and primary selection.
12222
12223         * gtk/gtktextbuffer.[ch]: Remove excess time and
12224         'interactive' arguments from cut/copy/paste;
12225         rename cut to cut_clipboard, etc; remove
12226         gtk_text_buffer_get_clipboard_contents().
12227
12228         * gtk/gtktextlayout.[ch]: Add 
12229         gtk_text_layout_move_iter_to_line_end() to move the iter to 
12230         line ends.
12231
12232         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
12233         Functions to set or get a UTF-8 string on the selection
12234         data.
12235
12236         * gtk/gtkclipboard.[ch]: New, simplified selection handling
12237         interfaces.
12238
12239         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
12240         created widgets - one of these is useless if we don't.
12241
12242         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
12243         a public function clear all targets registered for the
12244         widget.
12245
12246         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
12247         Never call gtk_widget_realize() - that was just asking
12248         for bizarre side-effects.
12249
12250         * gtk/gtkselection.c (gtk_selection_owner_set): Call
12251         gdk_selection_owner_set even if the widget is the
12252         same so that we reliably update the timestamp on
12253         the server.
12254
12255         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
12256         gdk_x11_get_server_time() function.
12257         
12258         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
12259         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
12260         Add some tricky filtering on serial numbers for
12261         selection clear events to fix up long-standard
12262         race condition FIXME's in gtkselection.c.
12263
12264         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
12265         routines to convert from utf8 to compound text or
12266         STRING and from a text property to UTF-8.
12267
12268         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
12269         a convenience function gdk_get_current_event_time().
12270
12271         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
12272         and free selection_data->data properly
12273
12274 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
12275
12276         * gtk/gtkthemes.c: Remove some unecessary includes.
12277
12278 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
12279
12280         * gtk/gtktextdisplay.c
12281         * gtk/gtktextlayout.c
12282         * gtk/gtktexttag.c
12283         * gtk/gtktexttag.h
12284         * gtk/testtext.c: Change the overstrike property to strikethrough,
12285         to closer match pango.
12286
12287 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
12288
12289         * gtk/gtktextview.c: Fix up visibility so that focus,
12290         cursor_visible and blink interact properly.  Reenable cursor blink
12291         which had been roughly disabled. Make blink and focus
12292         properly per-view.
12293
12294         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
12295         Add a flag for whether to display insertion cursor and
12296         a function to set the flag.
12297
12298         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
12299         get_line_y() to get_line_yrange(), to be a bit more generally
12300         useful.
12301
12302 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
12303
12304         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
12305           do stop_navigating_submenu, to clear last timeout properly.
12306           Also in gtk_menu_motion_notify move ignore_enter above
12307           the conditional to make it always happen as suggested by Owen
12308
12309 2000-09-07  Tor Lillqvist  <tml@iki.fi>
12310
12311         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
12312
12313         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
12314         w32api headers.
12315
12316         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
12317         declarations.
12318
12319         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
12320         (gdk_win32_get_colormap): A line had been deleted by mistake.
12321
12322         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
12323         (gdk_event_translate): Handle more virtual keycodes to be able to
12324         generate GDK events for Control-comma, Control-period, etc.
12325
12326         * gtk/gtk.def: Add some missing entry points.
12327
12328 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
12329
12330         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
12331         Doc comment fixing. (Mostly non-matching parameter names.)
12332
12333         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
12334         comments a little to avoid looking like a doc comment.
12335
12336         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
12337         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
12338         conversions be changed to GError?)
12339
12340         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
12341         Move private #defines into .c file.
12342
12343         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
12344         order of argument addition, remove duplicates.
12345
12346         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
12347         parent class is FrameClass, not BinClass.
12348
12349         * gtk/gtk.h: Add gtkinvisible, which was missing.
12350         (It's occasionalyl useful for client apps, if seldom.)
12351
12352         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
12353         #define.
12354
12355 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
12356
12357         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
12358         coordinates when creating window, instead of GDK-space
12359         coordinates. (Avoid BadValue on too large windows.)
12360
12361 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
12362
12363         * configure.in (use_mmx_asm): Remove conftest* after use along the
12364         lines of AC_TRY_COMPILE.        
12365         
12366         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
12367         of g_dirname, which is deprecated.
12368         (gtk_rc_parse_any): Removed calls to
12369         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
12370
12371         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
12372         Removed calls to g_hash_table_{freeze,thaw}, as they are
12373         deprecated now.
12374
12375         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
12376         instead of g_basename.
12377         
12378 2000-09-04 Elliot Lee <sopwith@redhat.com>
12379         
12380         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
12381         ANSI warning.
12382
12383 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
12384
12385         * gtk/gtkwidget.h:  Add some documenting comments about 
12386           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
12387           just as owen said on irc.
12388
12389         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
12390           set HAS_DEFAULT.  Only set it if there isn't another window
12391           holding it (a focus window which RECEIVES_DEFAULT) and only unset
12392           it if the widget is not the focused window with RECEIVES_DEFAULT.
12393           This fixes weird double default bugs in dialogs which has things
12394           call gtk_window_set_default at times.
12395
12396 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
12397
12398         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
12399         Nils Barth and David Santiago to improve submenu
12400         navigation. The patch does this by creating a triangular
12401         region from the point where the pointer leaves the
12402         menu to the submenu.  While the pointer is in
12403         that region and a timeout has not expired, events 
12404         that would cause the active submenu to change are
12405         ignored.
12406
12407 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
12408
12409         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
12410         moving a toplevel window immediately after sizing it would
12411         result in it being sized back to the old size since 
12412         impl->width, impl->height aren't updated until we hear
12413         back from the server. There is still a (longstanding) bug
12414         here that gdk_window_get_size() will give the wrong size
12415         until we do hear back.
12416
12417 2000-08-31  Havoc Pennington  <hp@redhat.com>
12418
12419         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
12420         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
12421         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
12422         Rename GtkTextStyleValues to GtkTextAttributes
12423
12424 2000-08-31  Havoc Pennington  <hp@pobox.com>
12425
12426         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
12427         for rapid testing whether an iterator is the end iterator
12428         (gtk_text_btree_new): init end line cache
12429         (gtk_text_line_is_last): use fast cached line to 
12430         see if we're the last line.
12431         (get_last_line): use cached line here too, should 
12432         speed up some random unrelated code.
12433         
12434 2000-08-30  Havoc Pennington  <hp@pobox.com>
12435
12436         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
12437         signals.
12438
12439         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
12440         delete_text signals. This allows the signals to be used for
12441         implementing undo.
12442
12443         * gtk/gtktextbuffer.c: Change signal handler signatures; 
12444         provide "interactive" argument when emitting insert_text or
12445         delete_text signal.
12446         
12447 2000-08-30  Havoc Pennington  <hp@pobox.com>
12448
12449         * gtk/gtktextbuffer.c: Docs
12450
12451 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
12452
12453         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
12454         from switch statements, since Tor removed the enumeration
12455         value.
12456         
12457         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
12458         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
12459
12460 2000-08-29 Elliot Lee <sopwith@redhat.com>
12461         * */*.h: Use G_GNUC_CONST.
12462
12463 2000-08-27  Havoc Pennington  <hp@pobox.com>
12464
12465         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
12466         minor indentation fixes, inserted some FIXME about stuff I
12467         realized was broken while documenting it.
12468         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
12469         GTK convention  
12470
12471 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
12472
12473         * gtk/testgtk.c (create_styles): Fix double free of
12474         font desc.
12475
12476 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12477
12478         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
12479         
12480         * gtk/testgtk.c (create_styles): Add a test for modifying
12481         the style through gtk_widget_modify_*.
12482
12483         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
12484         a function to get the current modifier style.
12485
12486         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
12487         of the passed in GtkRcStyle instead of ref'ing it.
12488
12489         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
12490
12491 2000-08-20  Tor Lillqvist  <tml@iki.fi>
12492
12493         * gdk/gdkimage.h
12494         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
12495         shared memory image+pixmap GdkImage type, or
12496         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
12497         I am dropping that.
12498
12499         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
12500         actually call gtk_init_abi_check(), passing also
12501         sizeof(GtkWindow). Ditto for gtk_init_check(). 
12502
12503         * gtk/gtk.def
12504         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
12505         New functions, used to check that the GTK+-using code has been
12506         compiled using the correct compiler and switches. In particular,
12507         with gcc one has to use the -fnative-struct switch as GTK+ is
12508         compiled with that.
12509
12510 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
12511
12512         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
12513         ->prev fields when merging lists. (Found simultaneously
12514         by Pawel Salek and Jakub Jelinek)
12515
12516 2000-08-12  Tor Lillqvist  <tml@iki.fi>
12517
12518         * gdk/gdk.def
12519         * gtk/gtk.def: Add missing entries.
12520
12521         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
12522         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
12523
12524         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
12525         function. Dummy implementation at this point.
12526
12527         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
12528         rules. Undefine GTK_COMPILATION when compiling the test programs.
12529         
12530         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
12531
12532 2000-08-11  Tor Lillqvist  <tml@iki.fi>
12533
12534         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
12535         to convert back and forth from UTF-8 and the "system" (or "current
12536         locale") charset when necessary. Indentation/spacing cleanup.
12537
12538 2000-08-10  Havoc Pennington  <hp@redhat.com>
12539
12540         * Makefile.am (snapshot): Change the format of the snapshot
12541         version to match glib
12542
12543         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
12544         from EXTRA_DIST since it doesn't seem to exist
12545
12546 2000-08-10  Tor Lillqvist  <tml@iki.fi>
12547
12548         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
12549         version of the directory name (not the UTF-8 one) when building
12550         the path name to stat().
12551
12552 2000-08-03  Elliot Lee  <sopwith@redhat.com>
12553
12554         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
12555         PANGO_ATTR_SHAPE set.
12556
12557 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
12558
12559         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
12560         Peter Osterlund to simplify the code while keeping the
12561         functionality the same.
12562
12563 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
12564
12565         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
12566         is_viewable() test further inside the function, since removing the 
12567         window from the redraw list without clearing ->update_area
12568         was also very broken.
12569
12570 2000-08-02  Tor Lillqvist  <tml@iki.fi>
12571
12572         * configure.in: Check for <unistd.h>.
12573
12574 2000-08-01  Martin Baulig  <baulig@suse.de>
12575
12576         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
12577         to display the message that this is a development version of GTK+.
12578
12579 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
12580
12581         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
12582         was depending on widget->allocation instead of the width of text_area,
12583         which was incorrect for subclasses like GtkSpinButton.
12584
12585         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
12586         with width == 1 tests that should be width == -1.
12587
12588 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
12589
12590         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
12591         (broken, Elliot, every single window blank on X) custom code with call
12592         to gdk_window_is_viewable() which a) prevents code duplicate and
12593         b) works. 
12594
12595 2000-07-31  Elliot Lee  <sopwith@redhat.com>
12596
12597         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
12598         to get the GDK_PARENT_ROOT() macro to work.
12599         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
12600         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
12601         of, windows that aren't shown.
12602         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
12603         pointer grab stuff.
12604
12605 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
12606
12607         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
12608           s/gtk_main_iteration/g_main_iteration/
12609
12610           Did this already in change:
12611                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
12612           don't know how it got reverted.
12613
12614 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
12615
12616         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
12617         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
12618
12619         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
12620         not gdk_pixbuf.
12621
12622 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
12623
12624         * configure.in,po/{sp,sr}.po: Added Serbian files
12625
12626 2000-07-30  Tor Lillqvist  <tml@iki.fi>
12627
12628         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
12629
12630         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
12631         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
12632         GIOChannel implementation.
12633
12634         * gdk/win32/gdkinput.c
12635         * gdk/win32/gdkpango-win32.c: Update license name here, too.
12636
12637         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
12638         definition to match prototype.
12639
12640         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
12641
12642 2000-07-27  Elliot Lee  <sopwith@redhat.com>
12643
12644         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
12645         function, to allow handling image formats that cannot be detected
12646         by looking at content alone.
12647
12648 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
12649
12650         * docs/tutorial/*.gif *.jpg *.eps
12651           Update these to the same look-n-feel.
12652           Why does including images in DocBook suck so badly?
12653
12654 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
12655
12656         * gtk/gtktable.c: applied patch from Phil Thompson
12657         <phil@river-bank.demon.co.uk> that enables space settings for
12658         the last row/columns as well.
12659
12660 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
12661
12662         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
12663         updates the license headers to the GNU Lesser General Public License,
12664         as well as updating the copyright year to 2000.
12665
12666 2000-07-26  Robert Brady  <rwb197@zepler.org>
12667
12668         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
12669           and po/Makefile, was installing and looking for them under gtk20
12670           and gtk2 respectively.
12671
12672 2000-07-25  Havoc Pennington  <hp@redhat.com>
12673
12674         * gtk/testtext.c: Comment out some stuff that depends on the rest
12675         of my patches.
12676
12677 2000-07-25  Havoc Pennington  <hp@redhat.com>
12678
12679         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
12680         buffer
12681
12682 2000-07-25  Havoc Pennington  <hp@redhat.com>
12683
12684         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
12685         widget changes.
12686
12687         * gtk/gtktextview.h: To be consistent with usage of "line"
12688         throughout the API to mean "newline-terminated thingy", change
12689         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
12690         to MOVEMENT_LINE.
12691
12692         (GtkTextView): Add flags for default editability, and whether to
12693         show the cursor. Add functions to get/set that. Add 
12694
12695         (gtk_text_view_get_iter_location): new function
12696
12697         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
12698         gtktextlayout.h
12699         (g_convert): Add g_convert temporarily, will go in glib in a bit
12700         
12701         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
12702         GtkTextTagTableForeach instead of brokenly using GHFunc.
12703         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
12704
12705         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
12706         moved to public header.
12707
12708         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
12709         "invisible", since "elide" was a bad name.
12710         (gtk_text_tag_get_priority): Added
12711
12712         (GtkTextStyleValues): put this in public header, along with
12713         functions to use it.
12714
12715         * gtk/gtktextmarkprivate.h: Include more headers, since we no
12716         longer include gtktextbtree.h.
12717
12718         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
12719         gtk_text_mark_deleted
12720
12721         * gtk/gtktextlayout.h: Don't include the "really private" headers,
12722         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
12723         to make this possible. Now we only need to install
12724         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
12725         (However the Makefile.am isn't changed yet because of the
12726         logistics of merging gtk-hp-patches piecemeal)
12727
12728         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
12729         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
12730         gtk_text_iter_get_line is now used in the public API for a
12731         different purpose.
12732
12733         * gtk/gtktextiter.h: Clean up function names to be more
12734         consistent. Always call char offset "offset" and byte index
12735         "index". A "line" is always a line number. 
12736
12737         (gtk_text_iter_is_last): new function, more efficient than 
12738         the existing way to check
12739         (gtk_text_iter_is_first): new function, also more efficient
12740
12741         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
12742
12743         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
12744         gtk_text_iter_forward_char, etc.
12745
12746         (gtk_text_iter_forward_to_tag_toggle): Renamed from
12747         forward_find_tag_toggle, since this isn't a linear search
12748
12749         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
12750
12751         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
12752         New functions, search for a buffer substring.
12753
12754         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
12755         interactive and default editable (since we need to store that info
12756         until we receive the selection data).
12757
12758         Remove all the _at_char and at_line etc. versions of functions;
12759         only have iterator versions.
12760
12761         Add _interactive() versions of functions, that consider the
12762         editability of text. (FIXME add interactive flag to the 
12763         insert/delete signals per Darin's suggestion)
12764
12765         (gtk_text_buffer_get_tag_table): new function, demand-creates the
12766         tag table if necessary
12767
12768         Remove declaration of gtk_text_buffer_get_iter_from_string
12769
12770         (_gtk_text_buffer_get_btree): private/internal function, added.
12771         
12772
12773         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
12774         (gtk_text_line_is_last): new function
12775
12776 2000-07-25  Havoc Pennington  <hp@redhat.com>
12777
12778         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
12779         using GtkProgressBar. See Changes-2.0.txt for details.
12780
12781         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
12782         "pulse_step" which are the equivalent of
12783         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
12784         Implement new API.
12785         
12786         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
12787         (use_text_format) to mark whether text set on the progress bar is
12788         a format string. Deprecate entire GtkProgress interface.
12789
12790         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
12791         (gtk_progress_build_string): make this a no-op if use_text_format
12792         is FALSE
12793
12794         * docs/Changes-2.0.txt: Describe progress bar changes.
12795
12796 2000-07-25  Tor Lillqvist  <tml@iki.fi>
12797
12798         * Makefile.am: Include the build directory.
12799
12800         * configure.in: Generate build/Makefile, build/win32/Makefile,
12801         gdk/, gdk/win32/, and gtk/makefile.mingw.
12802
12803         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
12804         Add GETTEXT_PACKAGE.
12805         
12806         * gdk/gdk.def
12807         * gtk/gtk.def: Updates.
12808
12809         * gdk/gdkfont.h
12810         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
12811         need them any longer.
12812
12813         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
12814
12815         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
12816         PANGOWIN32_LIBS and gdk_pixbuf.
12817
12818         * gdk/win32: Compiles, but no doubt doesn't work at all.
12819
12820         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
12821
12822         * gdk/win32/gdkinput.c: New file, temporarily.
12823         
12824         * gdk/win32/gdkinput-win32.h: New file
12825
12826         * gdk/win32/gdkinputprivate.h: Remove.
12827
12828         * gdk/win32/gdkpango-win32.c: New file.
12829
12830         * gtk/makefile.mingw.in: New file
12831
12832         * gtk/makefile.cygwin: Removed
12833         
12834         * gtk/Makefile.am: Update accordingly.
12835
12836         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
12837         made externally visible.
12838
12839         * gtk/gtkmain.c: Use it.
12840         
12841         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
12842         is enough.
12843
12844         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
12845
12846 2000-07-24 Elliot Lee <sopwith@redhat.com>
12847         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
12848         individual backends already.
12849         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
12850         again. Yes, there really is a good reason for this, if you are using the gdkregion
12851         internals, and if you're not, why do you care?
12852         * gdk/gdkwindow.c: Fix inverted condition
12853         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
12854         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
12855         * gtk/gtkrange.c: Redraw trough when moving.
12856         * gtk/gtktypeutils.c: Fix warning by adding const cast.
12857         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
12858
12859 2000-07-23  Tor Lillqvist  <tml@iki.fi>
12860
12861         * configure.in: Check for mkstemp and sigsetjmp. Output
12862         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
12863
12864         More work on GDK for Win32. Still in an intermediate state.
12865
12866         * gdk/makefile.cygwin
12867         * gdk/win32/makefile.cygwin: Removed.
12868         
12869         * gdk/makefile.mingw.in
12870         * gdk/win32/makefile.mingw.in: New files.
12871
12872         * gdk/Makefile.am
12873         * gdk/win32/Makefile.am: Generate and distribute them.
12874
12875         * gdk/win32/gdkwindow-win32.h
12876         * gdk/win32/gdkdrawable-win32.h
12877         * gdk/win32/gdkpixmap-win32.h: New files.
12878
12879         * gdk/win32/gdkcolor-win32.c
12880         * gdk/win32/gdkcursor-win32.c
12881         * gdk/win32/gdkdrawable-win32.c
12882         * gdk/win32/gdkgc-win32.c
12883         * gdk/win32/gdkimage-win32.c
12884         * gdk/win32/gdkprivate-win32.h
12885         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
12886         Rename fields and variables called xcursor, xid, etc (these names
12887         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
12888
12889 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
12890
12891         * gtk/gtkentry.[ch]: Fix some problems with vertical
12892         alignment.
12893
12894         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
12895         char/byte confusion.
12896
12897 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
12898
12899         * gtk/gtktextview.c (changed_handler): Fix bug where
12900         redraw wasn't being done properly when height of
12901         dirty region changed.
12902
12903         * demos/Makefile.am: Remove various references to
12904         -lgmodule
12905
12906 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
12907
12908         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
12909         PangoAttrShape to reserve space for pixmaps, add 
12910         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
12911         in the display functions.
12912         
12913         * gtk/testgtk.c (create_layout): Set some more exotic
12914         scrolled window options
12915
12916         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
12917         Add function to set the shadow type of a window, to allow
12918         putting a shadow around widgets such as GtkLayout or GnomeCanvas
12919         which don't draw their own frame.
12920
12921 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
12922
12923         * docs/tutorial/package-db-tutorial.sh: New file for
12924           packaging DocBook format tutorial
12925
12926 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
12927
12928         * docs/tutorial/gtk-tut.sgml: Minor updates
12929
12930         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
12931
12932 2000-07-19  Tor Lillqvist  <tml@iki.fi>
12933
12934         * gtk/gtksignal.c: Fix C++ comment.
12935
12936         * gtk/gtkimmulticontext.c
12937         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
12938         don't return value from void functions.
12939
12940         * gtk/gtk.def: Add gtk_rc_style_unref.
12941
12942 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
12943
12944         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
12945         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
12946         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
12947         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
12948         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
12949         gtk/gtktypeutils.h: Include files outside of the extern "C"
12950         block. Makes some C++ compiler happy. Reported by Denis Vakatov
12951         <vakatov@peony.nlm.nih.gov>.
12952
12953 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
12954
12955         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
12956           Completes first pass. Hurrah!
12957
12958 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
12959
12960         * docs/tutorial/gtk-tut.sgml: More clean ups.
12961
12962 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
12963
12964         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
12965         paint the background of the text area which was accidentally
12966         removed at some point.
12967
12968         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
12969           
12970          - Move most of the functionality from the theme vtable
12971            into GtkRcStyleClass and GtkStyleClass. The moved
12972            vtable functions were changed a bit in the move to
12973            work better in their new home.
12974
12975          - Get rid of the engine and engine_data fields from
12976            GtkRcStyle and GtkStyle; instead the theme
12977            engine derives theme-specific subclasses of GtkRcStyle
12978            and GtkStyle
12979
12980          - Add extra dlsym() found entry point to themes,
12981            theme_create_rc_style().
12982
12983         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
12984         in gtk_style_real_copy.
12985
12986         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
12987         to register a type associated with an engine. (The engine
12988         won't be unloaded as there is an instance of the type.)
12989
12990
12991 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
12992
12993         * docs/tutorial/gtk-tut.sgml: Clean ups.
12994
12995 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
12996
12997         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
12998           of cleaning up to do.
12999
13000 2000-07-15  Tor Lillqvist  <tml@iki.fi>
13001
13002         * gdk/testgdk.c: New file, quick hack to test backends for
13003         pixel-by-pixel correctness of the most simple graphic operations.
13004
13005 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
13006
13007         * Really release 1.3.1
13008         
13009         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
13010         include structure.
13011
13012 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
13013
13014         * Released 1.3.1
13015
13016 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
13017
13018         * gtk/gtktextlayout.c: use FALSE for size_only most
13019         of the time when calling gtk_text_layout_get_line_display()
13020         to avoid causing double reshapes when a redraw follows
13021         immediately after.
13022
13023 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
13024
13025         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
13026         appropriate region and gdk_window_process_updates() so trough
13027         updating doesn't lag behind the window being scrolled.
13028
13029         * gdk/gdkgc.c: Make parent_class pointer static.
13030          
13031 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
13032
13033         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
13034         include <string.h>.
13035          
13036         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
13037         cut-and-paste error in computing memory offset for 4 channels.
13038
13039 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
13040
13041         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
13042         gtk_rc_append_default_pixmap_path(), since it wasn't
13043         adding an interesting path and we don't have a meaningful
13044         default for this value.
13045
13046 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
13047
13048         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
13049         gtk-config to gtk-config-2.0 move gtk_.m4 to
13050         gtk-2.0.m4
13051
13052         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
13053         gdk/Makefile.am demos/Makefile.am: Change 
13054         library names to libgtk-1.3.la, etc, so that we
13055         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
13056
13057         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
13058         gdk/Makefile.am gdk/x11/Makfile.am
13059         Move include files into /usr/include/gtk-2.0, 
13060         /usr/lib/gtk-2.0/include/
13061          
13062         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
13063         gtk/gtkintl.h: Change package for gettext from 
13064         gtk+ to gtk20. Put hack in autogen.sh to modify
13065         po/Makefile.in.in after gettextize to make this
13066         possible.
13067
13068         * gtk+.spec: Some updates, not tested.
13069
13070         * gdk-pixbuf/Makefile.am: Move loaders into
13071         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
13072
13073         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
13074         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
13075         to THEMENAME/gtk-2.0/. Move engine directory  to
13076         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
13077         
13078 2000-07-12  Tor Lillqvist  <tml@iki.fi>
13079
13080         Win32 changes, still doesn't build though.
13081
13082         * gdk/makefile.cygwin
13083         * gdk/win32/makefile.cygwin
13084         * gtk/makefile.cygwin: Updates.
13085
13086         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
13087         default values for fg and bg pixel as X11 does (0 and 1), not
13088         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
13089         Use 0 for pen width by default (treated as 1 anyway later, but for
13090         apps that might check the value in the GdkGC).
13091         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
13092         interface to gdk_gc_predraw and _postdraw.
13093
13094         * gdk/win32/gdkwin32.h
13095         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
13096
13097         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
13098         extraneous semicolon.
13099
13100         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
13101
13102         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
13103         not the Win32 bitspixel value.
13104
13105         * gdk/win32/gdkcc-win32.c:
13106         * gdk/win32/gdkcolor-win32.c 
13107         * gdk/win32/gdkprivate-win32.h
13108         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
13109         GDK object structure.
13110
13111 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
13112
13113         * docs/tutorial/gtk_tut_12.es.sgml (name): 
13114         * docs/tutorial/gtk_tut_it.sgml (name): 
13115         * docs/tutorial/gtk_tut_fr.sgml (name): 
13116         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
13117         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
13118
13119 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
13120
13121         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
13122           small changes.
13123
13124 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
13125
13126         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
13127         a bug here, never been here and never fixed anything ;(
13128         (don't segfault if tree->root_tree is NULL, which happens prior
13129         to widget realization, but puke instead).
13130
13131 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
13132
13133         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
13134         add the necessary tokens.
13135
13136         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
13137         (gtk_rc_style_to_style): copy thicknesses.
13138         (gtk_rc_init_style): apply thicknesses.
13139         (gtk_rc_parse_style): parse xthickness and ythickness.
13140
13141         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
13142
13143         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
13144         (gdk_window_new): 
13145         (_gdk_windowing_window_init): 
13146         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
13147         (gdk_pixmap_create_from_data): 
13148         (gdk_bitmap_create_from_data): 
13149         (gdk_pixmap_new): 
13150         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
13151         (gdk_image_new): 
13152         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
13153         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
13154         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
13155         (gdk_colormap_get_system): 
13156         (gdk_colormap_new): 
13157         * gdk/gdkwindow.c (gdk_window_init): 
13158         * gtk/gtkstyle.c (gtk_style_new):
13159         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
13160         * gdk/gdkpixmap.c (gdk_pixmap_init): 
13161         * gtk/gtkrc.c (gtk_rc_style_new):
13162         use g_object_new() instead of g_type_create_instance() which
13163         is a private function for fundamental type implementations.
13164
13165 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
13166
13167         * configure.in: Add check for db2html
13168
13169 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
13170
13171         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
13172         hack to set glib_debug_objects based on gtk_debug_flags.
13173
13174 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
13175
13176         * INSTALL.in: Update the Prerequisites section.
13177
13178         * Makefile.am demos/Makefile.am docs/Makefile.am
13179         docs/tutorial/Makefile.am gdk/x11/Makefile.am
13180         gdk/linux-fb/Makefile.am: Dist fixes
13181
13182 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
13183
13184         * NEWS: 10,000 foot view of 1.3.1 changes.
13185
13186 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
13187
13188         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
13189         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
13190         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
13191         gdk/x11/gdkmain-x11.c: 
13192
13193         Patch from George Lebl to add a GdkGrabStatus enumeration to use
13194         as a return value of gdk_*_grab(). Previously, we just
13195         returned the X11 values directly.
13196
13197 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
13198
13199         * gdk/x11/Makefile.am: Patch from George Lebl to 
13200         install all the headers in the right place.
13201
13202 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
13203
13204         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
13205           initial conversion to DocBook.
13206
13207 2000-07-04  Tor Lillqvist  <tml@iki.fi>
13208
13209         * README.win32: Improve a bit.
13210
13211         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
13212         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
13213         Alt+0nnn on the numpad (used to enter characters by numeric code
13214         from current DOS or ANSI codepage) working correctly, as in other
13215         Windows apps.
13216
13217         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
13218         same argument validity tests as in X11 version.
13219         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
13220
13221         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
13222         definitions in case missing from headers.
13223
13224         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
13225         destroy the window-specific cursor.
13226         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
13227         calling GetModuleHandle(NULL).
13228         (gdk_window_set_cursor): Reworked to always copy the passed cursor
13229         with CopyCursor before setting it as the window-specific
13230         cursor. It is OK for the caller to destroy the GdkCursor (and thus
13231         also its Windows cursor) after calling this function. Destroy any
13232         previous window-specific cursor.
13233
13234 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
13235
13236         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
13237         font charset is iso8859-1, not iso-8859-1.
13238
13239 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
13240
13241         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
13242         Use g_get_charset() instead of g_get_codeset().
13243
13244         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
13245         Comment out some strdup'ing functions to keep timj
13246         happy until we finish fighting this out.
13247
13248 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
13249
13250         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
13251         <= width or height.
13252
13253         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
13254         from 1.2 for parent/child states.
13255
13256         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
13257         of typos.
13258
13259         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
13260         event structures, replace with a generic axes field. Replace 
13261         deviceid/sourec with GdkDevice *device.
13262
13263         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
13264         to extract particular axis use value from event. (Also
13265         can be used for normal X/Y.)
13266
13267         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
13268         allow for arbitrary number of axes, namespace everything
13269         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
13270         everywhere.
13271
13272         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
13273         Get rid of the gdk_input_vtable setup if favor of simply
13274         defining the functions in gdkinput-none/gxi/xfree.c in
13275         a similar fashion to the way that the port structure is 
13276         done.
13277
13278         * gtk/gtkdnd.c: Fix fields of synthesized button press event
13279         for new event structures. 
13280
13281         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
13282         new device interfaces.
13283
13284 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
13285
13286         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
13287         set the initial text.
13288
13289         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
13290         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
13291         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
13292         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
13293
13294         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
13295         pango_layout_set_font_description to simplify.
13296
13297 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
13298
13299         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
13300         pango_layout_set_font_description to simplify.
13301
13302 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
13303
13304         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
13305         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
13306         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
13307
13308         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
13309         PANGO_PIXELS() macro.
13310
13311 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
13312
13313         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
13314         that returns a PangoContext owned by the widget and updated to
13315         match future changes in the widget. Also, make 
13316         gtk_widget_create_pango_layout() use this context. If we ever
13317         add a ::changed signal to PangoContext, this will make things
13318         much more convenient. 
13319
13320         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
13321         in the appropriate places instead of destroying the layouts and
13322         creating new ones.
13323
13324         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
13325         in a few strategic places.
13326
13327 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
13328
13329         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
13330         gtk_widget_size_request() on reparented child, if one. Otherwise,
13331         queue_resize() on the child never results in it getting size-requested
13332         at all.
13333
13334         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
13335         in option menus, so that (with luck) people won't copy it into
13336         their apps in the future.
13337
13338         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
13339         to gtk_option_menu_calc_size. This isn't perfect, but should fix
13340         a lot of problems with changing the size of the menu's menu
13341         items after adding it to the option menu.
13342
13343         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
13344
13345         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
13346         the text direction for a widget changes.
13347
13348         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
13349         ::direction_changed to get rid of various hacks.
13350
13351 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
13352
13353         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
13354         name.
13355
13356 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
13357
13358         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
13359         flag to the structure. Do not call XFreePixmap on pixmaps created
13360         by gdk_pixmap_foreign_new().
13361
13362 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
13363
13364         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
13365         value using GdkRGB functionality given GdkColormap and GdkColor.
13366         (name not final, waiting for inspiration.)
13367         
13368         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
13369         set the foreground/background of a GC using the GC's colormap
13370         and GdkRGB. (name not final, waiting for inspiration.)
13371
13372         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
13373         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
13374
13375         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
13376         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
13377         purely a function of the corresponding colormap. Make
13378         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
13379
13380         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
13381         gdk_pixbuf_*create_from_xpm_* in terms of
13382         gdk_pixbuf_new_from_xpm_data(), move into platform independent
13383         code.
13384
13385         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
13386         advantage of the new draw_rgb_32_image_dithalign.
13387
13388         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
13389
13390         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
13391         on each created GC.
13392
13393         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
13394
13395         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
13396         which we initialize from the drawable when the GC is created,
13397         if the drawable has a colormap.
13398
13399         * gdk/x11/gdkgc-x11.c: include string.h for memset.
13400
13401         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
13402
13403         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
13404
13405 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
13406
13407         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
13408         actually returning expose events, make sure to set
13409         the count field properly.
13410
13411         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
13412         accidentally reintroced bug which always cleared
13413         the graphics_exposures value. 
13414
13415 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
13416
13417         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
13418
13419 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
13420
13421         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
13422
13423 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
13424
13425         * docs/faq/gtk-faq.sgml: Start of Section 6.
13426
13427 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
13428
13429         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
13430         
13431         (Fixes problem with drawing childless frames. Pointed out
13432         by and a first patch from Anders)
13433         
13434         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
13435         compute a child_allocation, even if we don't have a child.
13436
13437         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
13438         Always chain to the parent's impl, even if we don't have a child.
13439
13440 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13441
13442         * gdk/gdkrgb.c: If possible, create only a single shm segment and
13443         use multiple parts of it instead of creating a bunch of separate
13444         segments, since the maximum number of segments per system is not
13445         large. (This might be worth backporting to GTK+-1.2.x if we make a
13446         new release )
13447
13448         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
13449         structure in preparation for per-colormap GdkRGB.
13450
13451         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
13452         to False when we get EINVAL from shmget so that the caller of
13453         gdk_image_new can retry with a smaller segment size.
13454
13455 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
13456
13457         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
13458
13459 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
13460
13461         * configure.in: make the current version number 1.3.1 (binary age 0,
13462         interface age 0).
13463         
13464         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
13465         gtkcompat.h is all we want.
13466
13467         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
13468         GLib primitive types. fixed g_type_register_fundamental() argument
13469         ordering.
13470
13471         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
13472         compiles.
13473
13474         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
13475         object code cleanup, comment trigraph fixes, etc...
13476
13477 2000-06-23  Havoc Pennington  <hp@redhat.com>
13478
13479         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
13480         instead of making up a bogus name for first_para_mark
13481
13482         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
13483         0 as a context ID
13484
13485 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
13486
13487         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
13488
13489 2000-06-21  Havoc Pennington  <hp@pobox.com>
13490
13491         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
13492         we didn't check window->bg_pixmap != GDK_NO_BG.
13493
13494         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
13495         gdk-pixbuf
13496
13497 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
13498
13499         * docs/faq/gtk-faq.sgm: Move file to here.
13500           TODO: Update Makfile.am 
13501
13502 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
13503
13504         * docs/gtk-faq.sgm: Add Section 2
13505
13506 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
13507
13508         * docs/gtk-faq.sgm: New file. Start of DocBook
13509           version of the FAQ.
13510
13511 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
13512
13513         * configure.in (GDK_PIXBUF_MAJOR): Define version
13514         numbers for GDK_PIXBUF_*, as they get substituted
13515         into a header file. Need to consider versioning
13516         for gdk-pixbuf more carefully later.
13517
13518 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
13519
13520         Work with srcdir != builddir.   
13521         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
13522         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
13523         * demos/testpixbuf.c: Likewise.
13524         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
13525         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
13526         <gdk/x11/gdkx.h>.
13527         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
13528         "gdk-pixbuf.h".
13529         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
13530
13531 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
13532
13533         * TODO.xml: Change 1.4 version numbers to 2.0.
13534
13535 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
13536
13537         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
13538         fixups to GTK+ standard.
13539
13540 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
13541
13542         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
13543         gdk-pixbuf.
13544
13545         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
13546         fixups for GObject.
13547
13548         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
13549         gdk-pixbuf with GDK dependencies moved into GDK.
13550         
13551         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
13552         move gdk-pixbuf-loader here until GObject has signals.
13553
13554         * demos/: New directory of demos. Move demos from
13555         gdk-pixbuf here.
13556
13557         * demos/pixbuf-init.c: Small bit of code to check for
13558         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
13559         set GDK_PIXBUF_MODULEDIR appropriately.
13560
13561         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
13562         define which no longer makes sense.
13563
13564 2000-06-21  Havoc Pennington  <hp@redhat.com>
13565
13566         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
13567         gtk_get_default_language
13568
13569         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
13570         new function to get the default language
13571
13572         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
13573         s/gtk_text_view_style_values/gtk_text_style_values/
13574
13575         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
13576         Add a "language" field to tags.
13577
13578         (gtk_text_tag_set_arg): Fix bug in setting
13579         "bg_full_height_set" tag.
13580
13581 2000-06-21  Havoc Pennington  <hp@redhat.com>
13582
13583         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
13584         in the interfaces
13585
13586         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
13587         stuff instead when possible.
13588
13589         * gtk/gtktexttypes.h: Delete some unused constants
13590
13591         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
13592         testtextbuffer.c: use glib instead of custom unicode routines
13593
13594 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
13595
13596         * docs/es/: Removed mistakenly added generated sgml
13597
13598         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
13599         Remove outdated info files.
13600
13601         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
13602         Moved tutorial files into subdir
13603
13604         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
13605         subdir.
13606
13607         * docs/man/gtk_button.pod: Remove. (contents will be
13608         integrated into gtk-reference button page.)
13609
13610         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
13611         docs/faq/Makefile.am: Adjust for new organization
13612
13613 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
13614
13615         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
13616         not $(MKINSTALLDIRS)
13617
13618 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
13619
13620         * gtk/testgtk.c (create_text): Finish the job Elliot started
13621         of removing font setting test for text widget. (Since text widget
13622         and GdkFont are not deprecated, and cause portability problems.)
13623
13624 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
13625
13626         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
13627         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
13628         Remove use of libunicode in favor of new GLib functions.
13629
13630         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
13631         nano-x, framebuffer. The X11 include is just a hack until we get
13632         the necessary functions in gdkcolor.h, so there is no reason to
13633         add other includes of platforms.
13634
13635         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
13636         window bigger than the screen change.
13637
13638         * gtk/testgtk.c: Revert some random changes from Elliot
13639         that had no particular point and were causing testgtkrc
13640         not to function correctly.
13641         
13642         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
13643         because GdkSegment and GdkRegionBox have the same fields,
13644         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
13645         results in clearer code.
13646
13647         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
13648         gdk_input_translate_coordinates): Fix missed GdkObjectification
13649
13650 2000-06-18  Elliot Lee  <sopwith@redhat.com>
13651
13652         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
13653         * gtk/gtk{plug,socket}.h: Missed commits from previous.
13654
13655 2000-06-20  Havoc Pennington  <hp@redhat.com>
13656
13657         * modules/linux-fb/Makefile.am: Make this compile
13658         without framebuffer enabled
13659
13660         * gdk/linux-fb/Makefile.am: Add conditional to not build
13661         framebuffer unless specified in configure
13662
13663         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
13664         the size of the target instead of source if -1 was passed for
13665         width/height
13666
13667         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
13668         width/height confusion.
13669
13670 2000-06-19  Havoc Pennington  <hp@redhat.com>
13671
13672         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
13673         GDK_DRAWABLE_XID. In the future, we probably want to make it
13674         faster with G_DISABLE_CHECKS turned on.
13675
13676 2000-06-14  Havoc Pennington  <hp@redhat.com>
13677
13678         * gdk/Makefile.am: add gdkpixmap.c
13679
13680         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
13681         s/gdk_image_init/_gdk_windowing_image_init
13682
13683         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
13684         ref/unref
13685
13686         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
13687
13688         * gdk/gdkcompat.h: remove GdkWindowType compat, since
13689         GdkWindowType is now non-deprecated; 
13690         change gdk_window_get_type() compat to be
13691         gdk_window_get_window_type().
13692
13693         * gdk/gdkdnd.h: make GdkDragContext a GObject.
13694
13695         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
13696         virtual GObject. Make all functions call into the vtable.
13697         Move gdk_image_put() guts in here. Remove GdkDrawableType
13698         and gdk_drawable_get_type(), these are now GdkWindow-specific.
13699         draw_image, get_depth, get_size, set_colormap, get_colormap,
13700         get_visual added to the vtable.
13701         
13702         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
13703         GObject. Virtualize everything. 
13704         (gdk_gc_new_with_values): remove check for destroyed window,
13705         because now GdkWindow::create_gc will check this.
13706         (gdk_gc_set_values): New function to set GC values, this 
13707         was already implemented but wasn't in the header
13708
13709         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
13710
13711         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
13712         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
13713         remove _gdk_window_class; add _gdk_window_impl_get_type() and
13714         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
13715         _gdk_windowing_window_init, rename gdk_image_init to
13716         _gdk_windowing_image_init.
13717         
13718         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
13719         (gdk_draw_layout): Remove check for destroyed window, 
13720         because all the drawable methods already check it.
13721         
13722         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
13723         Add gdkpixmap.c which contains implementation of GdkDrawable
13724         virtual table (by chaining to a platform-specific implementation
13725         object).
13726         
13727         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
13728         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
13729         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
13730         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
13731         GdkColormapPrivate. 
13732
13733         * gdk/gdktypes.h: #include <glib-object.h>
13734
13735         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
13736         Move most functionality to platform-specific implementation
13737         object. GdkWindow itself now handles the backing store, then
13738         chains to the platform-specific implementation.
13739         (gdk_window_get_window_type): return GdkWindowType of the window.
13740         (gdk_window_peek_children): New routine, returns the children of 
13741         a GdkWindow
13742         (gdk_window_get_children): Was in X11-specific code and did 
13743         XQueryTree. Changed to simply return a copy of window->children; 
13744         so it can go in cross-platform code.
13745         
13746         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
13747
13748         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
13749         GdkColormap; just changed to use the new private data instead
13750         of casting to GdkColormapPrivate.
13751
13752         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
13753         gdk_cursor_new().
13754
13755         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
13756         (private data member in the GObject). 
13757         (xdnd_manager_source_filter): Function had broken 
13758         error handling, fix it (use gdk_error_trap_push).
13759
13760         * gdk/x11/gdkdrawable-x11.c: This file now implements
13761         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
13762         base class is purely for the convenience of the X port,
13763         and not part of the interface to cross-platform GDK.
13764
13765         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
13766         
13767         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
13768         specific to X, and returned by the create_gc virtual method
13769         of GdkDrawableImplX11. 
13770         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
13771         rather than gchar, this was also changed in the GdkGC vtable.
13772         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
13773         mask is 0, return immediately, instead of checking every flag.
13774         This is faster, and keeps us from segfaulting if values is NULL
13775         and the mask contains some nonzero flags.
13776
13777         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
13778         GdkWindow.
13779
13780         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
13781         GdkWindowPrivate is gone.
13782
13783         * gdk/x11/gdkim-x11.c: rename things that got renamed.
13784
13785         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
13786         remove the image_put stuff that got transferred to GdkDrawable.
13787         
13788         * gdk/x11/gdkinput.c: renamings
13789
13790         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
13791
13792         * gdk/x11/gdkpixmap-x11.c: GObject conversion
13793
13794         * gdk/x11/gdkprivate-x11.h: indentation fixes
13795
13796         * gdk/x11/gdkproperty-x11.c: renamings
13797
13798         * gdk/x11/gdkselection-x11.c: renamings
13799
13800         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
13801         implements the platform-specific "impl" object.
13802         Moved gdk_window_get_children to gdk/gdkwindow.c
13803
13804         * gdk/x11/gdkx.h: Remove all the private structs and private datas
13805         that no longer exist. Add declaration of GdkGCX11 object here.
13806         Fix all the macros to still work. 
13807
13808         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
13809         GdkDragContext from the boxed types since they are now GObjects.
13810
13811         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
13812         moved xthickness/ythickness into the instance. GtkStyleClass
13813         functions are now in the standard vtable for GtkStyle, so you have
13814         to create a GObject subclass to write a theme engine.
13815         (gtk_style_copy): fixed a leaked PangoFontDescription
13816         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
13817         can be the standard GObject function.
13818         
13819         * Throughout GTK:
13820         s/style->klass->[xy]thickness/style->[xy]thickness
13821         s/pango_layout_unref/g_object_unref/
13822
13823         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
13824         
13825         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
13826         accessing GDK internals.
13827
13828         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
13829         accessing GDK internals.
13830
13831 2000-06-18  Elliot Lee  <sopwith@redhat.com>
13832
13833         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
13834
13835         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
13836         problem by calculating event position relative to the trough
13837         rather than the slider.
13838         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
13839
13840         * gdk/gdkgc.h: Add GDK_NOR.
13841
13842         * configure.in, Makefile.am: Add modules top level dir
13843         * configure.in: Only use pangox library if building x11 target.
13844         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
13845
13846 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
13847
13848         * gtk/gtkcolorsel.c: Change private class member to be named
13849         private_data throughout the file.
13850
13851         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
13852         private_data to avoid clashing with keyword.
13853
13854 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
13855
13856         * gdk/gdkdnd.h: Add comment to remove warning.
13857
13858 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
13859
13860         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
13861         Byelorussian language; changed the Makefile and file names 
13862         to reflect that.
13863
13864 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
13865
13866         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
13867         rather than gdk_window_hide; this makes things work
13868         correctly if the window is programmatically hidden while
13869         iconified.
13870
13871 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
13872
13873         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
13874         cut and paste typo where wrong pixmap was being
13875         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
13876
13877 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
13878
13879         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
13880         Add helper function to compute format / bytes 
13881         relationship. Use in a couple places to fix up
13882         errors which assume 8 * format.
13883
13884         * gtk/gtkselection.c (gtk_selection_request): Use 32
13885         rather than 8 * sizeof (GdkAtom), to work correctly
13886         on Alpha.
13887
13888 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
13889
13890         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
13891         libgtk.la
13892         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
13893         versions
13894
13895         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
13896         checking macros return NULL since the function has a return value.
13897
13898 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
13899
13900         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
13901         GTK+ from building at all.
13902
13903         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
13904
13905 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
13906
13907         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
13908         gtk/Makefile.am: make it possible to configure gtk for different
13909         targets on the same platform. The library name is now 
13910         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
13911         flag. Only the x11 target compiles right now.
13912         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
13913         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
13914         * gdk/nanox/gdk*generic*: delete generic region code.
13915         * gdk/linux-fb/gdk*generic*: delete generic region code.
13916         * README.nanox: update information.
13917         
13918 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
13919
13920         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
13921         prepend not append. (Pointed out by Brett Hall.)
13922
13923 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
13924
13925         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
13926
13927 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
13928
13929         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
13930         need this later, and this makes sure that the atexit for
13931         glib gets called after that for GDK, so atexits are
13932         properly ordered for object leak checking.
13933
13934         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
13935
13936         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
13937         pango_x_shutdown_display()
13938
13939         * gtk/simple.c (main): Close window on destroy.
13940
13941 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
13942
13943         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
13944         to treat initial creation different from setting with 
13945         regards to the graphics-exposures parameter, so add a parameter
13946         indicating whether this is initial or not.
13947
13948 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
13949
13950         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
13951         to sort of work by adding an extra return_exposes arg
13952         to gdk_event_translate() - it might be better to simply
13953         deprecate the function altogether and force people to rewrite
13954         without it. gdk_window_scroll() handles most of it, and where
13955         gdk_window_scroll() doesn't work, simply redrawing more does.
13956
13957         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
13958         assertion.
13959
13960         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
13961
13962         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
13963         bunch of pretty much useless /* Print debugging info */ comments 
13964         which had drifted away from the code they were commenting.
13965
13966 2000-06-02  Havoc Pennington  <hp@pobox.com>
13967
13968         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
13969         is in working order.
13970         
13971         * gtk/testtext.c: Change to reflect anonymous mark API
13972
13973         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
13974
13975         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
13976         field, which was unused.
13977
13978         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
13979         saves some typing.
13980
13981         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
13982
13983         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
13984         flag on the insertion point and selection bound
13985
13986         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
13987         make mark-manipulation functions take a GtkTextMark* instead of a
13988         mark name.
13989         
13990         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
13991         GtkTextMarkBody; will be used to detect attempts to delete
13992         the permanent marks (insert and selection bound)
13993
13994         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
13995
13996 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
13997
13998         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
13999         flag to on.
14000
14001         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
14002         Honor DOUBLE_BUFFRED_FLAG
14003
14004         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
14005         function to set the DOUBLE_BUFFERED flag.
14006
14007         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
14008         or not exposes done on the widget should be double-buffered.
14009
14010         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
14011         to be what would be expected. (Fixes problem with a
14012         g_return_if_fail() validating a TextDirection enumeration)
14013
14014 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
14015
14016         * gtk/gtkwidget.c: Remove all references to 
14017         offscreen flag which was no longer used.
14018
14019         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
14020
14021         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
14022         for non-null label_widget->parent.
14023
14024         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
14025         which no longer was used.
14026
14027         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
14028
14029         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
14030         for null arguments.
14031
14032         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
14033         check for destroyed windows.
14034
14035 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
14036
14037         * gtk/gtkimmulticontext.c: Add a finalize method and unref
14038         the slave context there.
14039
14040         * gtk/gtkinvisible.[ch]: Make reference counting behavior
14041         identical to GtkWindow.
14042
14043 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
14044
14045         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
14046         pangox to here, so we can write them independent of rendering
14047         system, using GDK primitives.
14048
14049         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
14050         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
14051         since we have a rendering-system independent implementation in
14052         terms of draw_glyphs().
14053         
14054         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
14055         function to render a single line.
14056
14057         * gdk/x11/gdkpango.c: Move the guts of this file mostly
14058         into ../gdkpango.c, which simplifies things, since we
14059         don't have to deal with raw X gc's.
14060
14061 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
14062
14063         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
14064         get the logical attributes for a given GtkTextLine.
14065
14066 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
14067
14068         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
14069         g_locale_get_codeset() to g_get_codeset() change.
14070
14071 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
14072
14073         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
14074         descriptions.
14075
14076         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
14077         the entry.
14078
14079         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
14080         redoing (vastly simplifying) for Pango. Still needs quite
14081         a bit of work. (Size selection is currently poor. List of 
14082         predefined sizes is not a good idea, since all of these
14083         sizes won't necessarily be distinct.)
14084
14085 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
14086
14087         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
14088         CODESET results for LANG=C.
14089
14090 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
14091
14092         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
14093         which takes a stringized pango font description;
14094         ignore the older 'font' and 'fontset' declarations.
14095
14096         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
14097         field with a GdkFont derived via gdk_font_from_description(),
14098         for compatibility. (Should we just remove it entirely?
14099         Probably too much compatibility breakage, but people
14100         should be migrating to the new Pango stuff as quickly
14101         as possible.)
14102
14103 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
14104
14105         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
14106
14107 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
14108
14109         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
14110         redoing; there are some bugs in size allocation right
14111         now, the semi-existant distinction between header / day
14112         fonts was removed, but, with Pango, could actually
14113         be made functional in a nice way.
14114         
14115         * gtk/testcalender: Move calender from examples into this
14116         directory as a test program. (We really need to restrcture
14117         testgtk into a whole directory full of tests for every
14118         widget or functionality group, separated into multiple .c
14119         files.)
14120
14121 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
14122
14123         * gtk/testgtk.c (file_exists): Fix stupid typo that
14124         was keeping RC file from being loaded.
14125
14126         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
14127         RC file font code.
14128
14129 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
14130
14131         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
14132         Add function to load a GdkFont from a PangoFontDescription.
14133
14134 2000-05-29  Tor Lillqvist  <tml@iki.fi>
14135
14136         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
14137         variable should be of type GdkEventPrivate.
14138
14139 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
14140
14141         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
14142         to have any widget for the label, use a GtkLabel widget
14143         to display the text. (Based partially on a patch from
14144         Anders Carlson.)
14145
14146         (Quite a bit of code reorganization - strip 90% of the
14147         guts out of gtkaspectframe and add a single virtual
14148         func to GtkFrameClass - compute_child_allocation.)
14149
14150 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
14151
14152         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
14153         (Removed clist->row_center_offset field because caching
14154         it wasn't saving time or code, added private function
14155         _gtk_clist_create_cell_layout()).
14156
14157 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
14158
14159         * gtk/gtkaccellabel.c: Pangoized.
14160
14161         * gtk/[hv]ruler.c: Pangoized
14162
14163 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
14164
14165         * gtk/gtkfilesel.c (gtk_file_selection_init):
14166         Use gtk_clist_set_column_auto_resize() to remove need
14167         need for manual column width computations.
14168
14169 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
14170
14171         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
14172         ensuring Pango correctness, and considerably simplifying the
14173         code.
14174         
14175         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
14176
14177         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
14178         getting of numbers of lines.
14179
14180         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
14181         to the actual requested width of the lable, not to the wrap
14182         width we set.
14183
14184         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
14185
14186         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
14187           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
14188
14189         * gtk/gtktextview.c: Fix structure inheritance.
14190
14191         * gtk/gtkprogressbar.c: Pangoize.
14192
14193 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
14194
14195         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
14196         in a function.
14197
14198         * gtk/gtktextlayout.c (find_display_line_above): Fixed
14199         bug with computing line tops.
14200
14201         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
14202
14203 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14204
14205         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
14206         and y_offset coordinates to do what we need now. (The offset between
14207         buffer and layout coordinates has been reintroduced, but is a 
14208         bit different than before.)
14209
14210         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
14211         handle the adjustments ourselves, and scroll as necessary using
14212         the new gdk_window_scroll().
14213         
14214         The advantage of this is that when we are incrementally revalidating,
14215         we are essentially rearranging things around the visible portion
14216         of the screen. With the old setup, the visible portion of the
14217         screen was moved around in the layout, so scrolling and redrawing
14218         to track that caused jumping of the display. Since we now
14219         control the scrolling ourselves, we can suppress this and
14220         only redraw when things actually change.
14221
14222 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
14223
14224         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
14225         the region not just redisplay it after-all, since we store the
14226         cursors in the LineDisplay. (Ugly interactions here between
14227         GtkLayout and GtkTextBTree here.)
14228         
14229         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
14230
14231 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14232
14233         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
14234         Added function to scroll contents of a window while keeping the
14235         window constant. Works by XCopyArea or guffaw-scrolling depending
14236         on the details of how the window is set up. (guffaw-scrolling
14237         still needs to be filled in.)
14238
14239 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
14240
14241         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
14242         move the debugging that was tied to a global variable
14243         to that.
14244
14245         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
14246
14247         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
14248         validated flag, in line data instead of setting height/width to
14249         -1. This allows us to perform operations with partially invalid
14250         buffer (using the old size for invalid lines) and thus to do
14251         incremental vaidation. Keep height/width aggregates up to date
14252         when deleting text and rebalancing the tree.
14253
14254         * gtk/gtktextbtree.[ch]: Add functions validate a line
14255         (gtk_text_btree_validate_line), and to validate up
14256         to a number of pixels (gtk_text_btree_validate).
14257
14258         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
14259         that indicates that something is changed and a revalidation
14260         pass is needed. Change ::need_repaint to ::changed, and
14261         make it take old and new yranges instead of a rectangle.
14262
14263         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
14264         the line_data_destroy() function from 
14265         gtk_text_btree_add_view() to a virtual function in 
14266         GtkTextLayout
14267
14268         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
14269         since we are handling partial repaints in a different fashion
14270         now.
14271
14272         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
14273         of the selection instead of queueing a repaint on the
14274         entire widget.
14275
14276         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
14277         get_selection_bounds() down to btree, make the function
14278         in buffer a wrapper around the btree function.
14279
14280         * gtk/gtktextlayout.[ch]: Add functions to check if the
14281         layout is valid and to recompute either a range of pixels
14282         aroudn a line or a certain total number of pixels.
14283
14284         * gtk/gtktextlayout.[ch]: Cache a single line display;
14285         now that we only redraw the needed portions, the hit rate
14286         for this cache is quite high.
14287         
14288         * gtk/gtktextview.[ch]: Keep track of the first paragraph
14289         on the screen so that when re-laying-out the buffer, we can
14290         keep the same place. This requires connecting to ::value_changed
14291         on the adjustments
14292
14293         * gtk/gtktextview.[ch]: Add idle functions to revalidate
14294         the buffer after we receive an ::invalidated signal.
14295         
14296 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
14297
14298         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
14299         to max of allocation and layout size, not just to the
14300         layout size.
14301
14302         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
14303         Invalidate window so it gets redrawn properly.
14304
14305         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
14306         to mean the entire window.
14307
14308         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
14309         into public header.
14310
14311 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
14312
14313         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
14314         to get the name of a mark.
14315
14316         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
14317         to find the paragraph from a y position.
14318
14319 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
14320
14321         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
14322         nodes have width/height >= 0, not > 0.
14323
14324 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
14325
14326         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
14327         Add a size_only flag, so when we only need the size, we don't create
14328         useless appearance attributes.
14329
14330         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
14331         duplicate setting of font description.
14332
14333         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
14334
14335 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
14336
14337         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
14338         EXTRA_DIST. It does not work well when the file that
14339         everything depends on is not in the tarball.
14340
14341 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
14342
14343         * gtk/testgtk.c: Some hacks and fixes so that it basically
14344         works when not sitting in the GTK+ build tree.
14345
14346 2000-05-03  Havoc Pennington  <hp@redhat.com>
14347
14348         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
14349         Properly determine the ordering of the tag root and the current
14350         line within the tree. Previous algorithm only worked if the tag
14351         root's immediate parent was the common root of both the current
14352         line and the tag root.
14353
14354 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
14355
14356         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
14357         alignment.
14358
14359         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
14360         the widget text directional dynamically.
14361
14362         * gtk/gtktextview.[ch]: Added functions to get and set default
14363         wrap mode.
14364
14365 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
14366
14367         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
14368         in cursor location computation.
14369
14370 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
14371
14372         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
14373         vadjusment values properly when layout gets smaller.
14374
14375         * gtk/gtktextview.c (need_repaint_handler): Areas being
14376         passed in are far completely inaccurate, and sometimes
14377         too small, so, for now, just queue a redraw on the
14378         whole visible region.
14379
14380 2000-04-25  Havoc Pennington  <hp@redhat.com>
14381
14382         * gtk/gtktextbtree.c (summary_destroy): new function to 
14383         destroy tag summary nodes
14384         (gtk_text_line_next_could_contain_tag): this function was 
14385         totally broken if the line passed in wasn't below the tag
14386         root. Fix it.
14387         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
14388         "wildcard" case, we have to do a linear scan. Blah.
14389         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
14390         we have to do the linear scan
14391         (tag_removed_cb): When a tag is removed from the tag table, 
14392         remove the GtkTextTagInfo node from the btree.
14393         (gtk_text_btree_spew): Implement the spew function, for 
14394         our debugging pleasure.
14395
14396 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
14397
14398         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
14399         a problem with referring to the wrong buffer.
14400
14401         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
14402
14403         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
14404         font description to gtk_style_new() - otherwise things
14405         don't work without a .gtkrc file.
14406
14407         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
14408         tags table if we create it ourself, too.
14409
14410         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
14411         it was conflicting with XKB modifiers.
14412
14413         * gtk/gtktextview.[ch]: Add simple support for 
14414         GtkIMContext.
14415
14416 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
14417
14418         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
14419         with deletion from last commit.
14420
14421 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
14422
14423         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
14424         in the context from the current locale.
14425         
14426         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
14427         context, not hardcoded value.
14428
14429         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
14430         not logical.
14431
14432 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
14433
14434         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
14435         attributes - that doesn't handle partial-glyph selection
14436         properly. Instead use new pango_layout_line_get_x_ranges()
14437         functionality to draw the selection.
14438
14439         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
14440         now properly handles out-of-range coordinates.
14441
14442         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
14443
14444         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
14445         public.
14446
14447         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
14448         for paragraphs opposite to the base direction of the widget.
14449
14450         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
14451
14452         * gtk/gtktextlayout.c: Don't split segments on marks, since that
14453         causes Arabic words to reshape as you cursor through.
14454
14455         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
14456         cursor position when moving vertically with the arrow keys and
14457         scrolling with page-up/page-down. (Arrow keys save only the X,
14458         scrolling saves both X and Y.)
14459
14460         This means you can line-up / line-down or page-up / page-down
14461         without losing your place, and also that moving vertically
14462         with the cursor keys keeps the same X position, not the same
14463         character count:
14464
14465         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
14466         arrow keys move by display lines, not paragraphs.
14467
14468 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
14469
14470         * gtk/gtklayout.c: Make sure that the bin window is at least
14471         as big as the allocation. (Should we also make sure that the
14472         bin window is big enough to completely cover widget->window?)
14473
14474         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
14475         function to get the onscreen rectangle.
14476
14477         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
14478         for offsets in window coordinates.
14479
14480 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
14481
14482         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
14483         confusion.
14484
14485         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
14486         from the widget direction.
14487
14488         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
14489         Add a "direction" attribute.
14490
14491         * gtk/gtktextview.c: global s/tkxt/text_view/.
14492
14493         * gtk/testtext.c: Added long block of text in Arabic, to test out
14494         the direction attributes. (Some problems with the shaping system
14495         for arabic become obvious - like the fact the cursor splits words
14496         into unjoined pieces.)
14497
14498 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
14499
14500         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
14501
14502         * gtk/gtktextlayout.c: Fix up alignment.
14503
14504         * gtk/testtext.c: Add some tests for centering, wrapping.
14505
14506 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
14507
14508         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
14509         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
14510         If we wrote GTK+-specific layout-render function this could just replace
14511         the draw_layout() operation in the vtable.
14512
14513         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
14514         pango_layout_get_cursor_pos() and use that function.
14515
14516         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
14517         is a non-static symbol.
14518
14519         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
14520         with gtk_text_btree_find_line_by_y()
14521
14522         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
14523         renderer that handles GtkTextAppearance attributes.
14524
14525         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
14526
14527           - Move the values in the style that don't affect geometry into a
14528             GtkTextAppearance structure.
14529           - Change underline to take a PangoUnderline and "font" a string
14530             representation of a font description
14531           - Add a "font_desc" attribute which takes a FontDescription structure.
14532
14533         * gtk/gtktextlayout.[ch]:
14534
14535           - Get rid of the display-line list per each line. Instead, we
14536             generate, on demand, a GtkTextLineDisplay structure which]
14537             contains a PangoLayout * and other necesary information
14538             (offsets, cursor locations) for displaying a paragraph.
14539           - Get rid of the code to wrap lines, create display chunks,
14540             etc. Instead, we just go through a paragraph and convert
14541             it into the necessary inputs to a PangoLayout.
14542           - Implement a new attribute type, GtkTextAttrAppearance. This
14543             holds a GtkTextAppearance, and is used to pass colors, 
14544             stipple, etc, through from the layout to the display without
14545             having to use lots and lots of individual attributes.
14546           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
14547             in terms of PangoLayout functions.
14548         
14549         * gtk/gtktextview.c: 
14550          
14551           - Handle passing the necessary PangoContext to the layout
14552           - Some fixups in painting to deal with the automatic backing store
14553             and offsetting of GTK+-1.4
14554           - Add a style_set handler so that the default style reacts
14555             properly to theme changes.
14556         
14557         * gtk/gtktext?*.[ch]: Random code-style fixes.
14558
14559         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
14560
14561 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
14562
14563         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
14564         in original form preparatory to Pango-ization and gdkimcontext-ization.
14565
14566 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
14567
14568         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
14569         so that we can derive from gtkimcontext in language bindings properly.
14570
14571 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
14572
14573         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
14574         Add a compose table including (almost) all the compose combinations
14575         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
14576         data in the XIM implementation.
14577
14578         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
14579         Moved functions to convert keyvalues from and to unicode here from
14580         the win32 port and made them public.
14581
14582 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14583
14584         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
14585
14586 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
14587
14588         * gtk/gtkimcontext.[ch]: Base class for new input context system
14589
14590         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
14591         the real input context implementation to be loaded from modules
14592         and switched on the fly.
14593
14594         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
14595         context that just does direct keysymbol => unicode translation.
14596
14597         * gtk/gtkentry.[ch]: Start switching editing over to using
14598         GtkInputContext. (No handling of preedit yet.)
14599
14600 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
14601
14602         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
14603         many substitutions. (klass should not be subsituted.)
14604
14605 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
14606
14607         * configure.in: Add checks for Pango
14608
14609         * configure.in docs/Makefile.am: Add test for sgml2html
14610         and allow 'make dist' without building html, but print out
14611         warnings in that case. (For making snapshots)
14612
14613         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
14614         Add Pango libraries and C flags
14615
14616         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
14617         Add function (gdk_draw_layout) to draw a pango layout.
14618
14619         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
14620         for getting Pango contexts for GDK.
14621
14622         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
14623
14624         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
14625         editing.
14626
14627         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
14628         keysym => unicode translations. More languages can be added
14629         here, but real input-method support is needed.
14630
14631         * docs/Changes-1.4.txt: Added note about entry behavior.
14632         
14633         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
14634         to set the reading direction for a widget and the global direction.
14635         Add test which allows toggling the global direction. Two private
14636         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
14637
14638         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
14639           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
14640
14641         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
14642
14643         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
14644         underlining now handled by Pango.
14645
14646         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
14647         to RCStyle and Style. (Having both this and the old font name and GdkFont 
14648         is temporary.)
14649
14650         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
14651         convenience functions for creating contexts and layouts for widgets.
14652
14653         * gtk/testgtk.c: Enhance label tests with multilingual labels.
14654
14655 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
14656
14657         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
14658         titles to be active, even if they aren't visible.
14659         (gtk_clist_column_titles_passive):  Ditto.
14660
14661 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
14662
14663         * gtkmenu.c:
14664         * gtkmenu.h:
14665         * gtktypeutils.h: Spelling/grammar fixes in comments.
14666
14667 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
14668
14669         * gdk/nanox/*.h: add missing header files.
14670
14671 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
14672
14673         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
14674         send_event to TRUE.
14675         (gtk_drawing_area_size): queue a resize.
14676
14677 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
14678
14679         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
14680         the handlers, also invalidate them. bug nailed down by Karl Nelson
14681         <kenelson@ece.ucdavis.edu>.
14682
14683 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
14684
14685         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
14686         "(nil)" foundries, patch from Grigorios Magklis.
14687
14688         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
14689         on non-available fonts, based on a patch by Grigorios Magklis
14690         <maglis@cs.rochester.edu>.
14691
14692 2000-05-18  Elliot Lee  <sopwith@redhat.com>
14693
14694         * gdk/x11/gdkregion-generic.c: If a region does not have any
14695         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
14696         instead of GDK_OVERLAP_RECTANGLE_IN.
14697
14698 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
14699
14700         * gtk/gtklayout.c (gtk_layout_map): Remove references to
14701         OFFSCREEN, as it is no longer necessary.
14702
14703 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
14704
14705         * gtk/gtkcolorsel.c: Patch from David Santiago
14706         <mrcooger@cyberverse.com> to change things so that the 
14707         indicator of the active palette entry is done independently,
14708         not via the focus, since it should always be visible.
14709
14710 2000-05-17  Tor Lillqvist  <tml@iki.fi>
14711
14712         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
14713         refcount leaks as in the X11 backend.
14714
14715         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
14716         cosmetics.
14717
14718         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
14719         backend. Add _gdk_windowing_window_destroy().
14720
14721         * gtk/gtkcolorsel.c: Include correct backend-specific header.
14722         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
14723         either, but these probably do exist on nanox?)
14724         
14725         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
14726         which isn't necessarily defined by <math.h>.
14727
14728         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
14729         ancestry past GtkObject.
14730
14731         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
14732         from DLL on Win32.
14733
14734         * gtk/gtk.def: Update corresponding to recent changes.
14735
14736         * gtk/makefile.{cygwin,msc}: Updates.
14737
14738 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
14739
14740         * docs/Changes-1.4.txt: A bit of editing.
14741
14742         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
14743         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
14744         to clear the update area for the window, and clear it
14745         when hiding a window.
14746
14747         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
14748         if window destroyed.
14749
14750         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
14751
14752         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
14753         gdk_window_destroy() to the generic code, since there was a lot of 
14754         window-system-independent logic it in. Add a function:
14755         
14756          _gdk_window_destroy() 
14757
14758         to the internal API to destroy a window without unreferencing it.
14759         Add a function:
14760
14761          _gdk_windowing_window_destroy()
14762
14763         That does the windowing-system-dependent part of destroying 
14764         the window.
14765
14766 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
14767
14768         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
14769
14770 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
14771
14772         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
14773         Make gtk_widget_shape_combine_mask() keep a reference count on
14774         the pixmap since it keeps it around.
14775
14776 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
14777
14778         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
14779         leak.
14780
14781         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
14782         leak with event filters.
14783
14784 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
14785
14786         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
14787         signal handlers with the right data arguments. (Fixes
14788         some warnings when a widget was repeatedly set as a drag
14789         destination.)
14790
14791         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
14792         window so we can avoid avoid setting the DND properties on the
14793         toplevel window repeatedly.
14794
14795 2000-05-13  Tor Lillqvist  <tml@iki.fi>
14796
14797         * gdk/win32/gdkwin32.h: Define more message types missing from
14798         mingw headers.
14799
14800         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
14801         call gdk_window_destroy_notify(). It was never called. This
14802         probably meant that the GdkWindow was never freed. Thanks Owen for
14803         noticing (!).
14804
14805         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
14806         window as destroyed before calling DestroyWindow(). DestroyWindow()
14807         causes a call to the window procedure (gdk_WindowProc), which
14808         calls gdk_event_translate(), which calls
14809         gdk_window_destroy_notify(), which gets confused unless the window
14810         is set as destroyed.
14811
14812         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
14813         this function to indicate it's win32 only. Put inside #ifdef
14814         G_ENABLE_DEBUG.
14815
14816         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
14817         debugging function. (gdk_event_translate:) Add a default branch
14818         that uses the above function to print debug messages with all
14819         Windows messages symbolically.
14820
14821         * gdk/win32/gdkprivate-win32.h: Declare it, and
14822         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
14823
14824 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
14825
14826         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
14827         public header file.
14828
14829 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
14830
14831         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
14832
14833         * gtk/gtktext.c: made the adjustments no-construct args, simply
14834         provide default adjustments.
14835         (gtk_text_destroy): release adjustments.
14836
14837         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
14838         adjustment argument non-construct.
14839
14840         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
14841         instead of in finalize.
14842         (gtk_progress_get_text_from_value): 
14843         (gtk_progress_get_current_text): 
14844         (gtk_progress_set_value): 
14845         (gtk_progress_get_percentage_from_value): 
14846         (gtk_progress_get_current_percentage): 
14847         (gtk_progress_set_percentage): 
14848         (gtk_progress_configure): ensure an adjustment is present.
14849
14850 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
14851
14852         * gtk/gtkcolorsel.[hc]:
14853         * gtk/gtkcolorseldialog.[hc]:
14854         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
14855         their parent implementation, use bit fields for boolean values, don't
14856         create unused widgets, usage of glib types, braces go on their own
14857         lines, function argument alignment, #include directives etc. etc. etc..
14858
14859         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
14860
14861 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
14862
14863         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
14864
14865         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
14866         of NULL.
14867
14868         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
14869         to freed data.
14870         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
14871
14872         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
14873         to NULL when the toplevel is getting destroyed.
14874         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
14875         (gtk_menu_destroy): 
14876         (gtk_menu_init): store the information of whether we have to
14877         readd the initial child ref_count during destruction in a new
14878         GtkMenu field needs_destruction_ref_count.
14879
14880         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
14881         here, those reading: learn from my mistake! ;)
14882         in order for set_?adjustment to support a default adjustemnt if
14883         invoked with an adjustment pointer of NULL, the code read (pseudo):
14884         if (v->adjustment) unref (v->adjustment);
14885         if (!adjustment) adjustment = adjustment_new ();
14886         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
14887         now imagine the first unref to actually free the old adjustment and
14888         adjustment_new() creating a new adjustment from the very same memory
14889         portion. here, the latter comparision will unintendedly fail, and
14890         all hell breaks loose.
14891         (gtk_viewport_set_hadjustment):
14892         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
14893         after unreferencing it.
14894
14895         * gtk/gtkcontainer.[hc]: removed toplevel registration
14896         functions: gtk_container_register_toplevel(),
14897         gtk_container_unregister_toplevel() and
14898         gtk_container_get_toplevels() which had wrong semantics
14899         anyways: it didn't reference and copy the list.
14900
14901         * gtk/gtkwindow.c: we take over the container toplevel registration
14902         bussiness now. windows are registered across multiple destructions,
14903         untill they are finalized. the initial implicit reference count
14904         users are holding on windows is removed with the first destruction
14905         though.
14906         (gtk_window_init): ref & sink and set has_user_ref_count, got
14907         rid of gtk_container_register_toplevel() call. add window to
14908         toplevel_list.
14909         (gtk_window_destroy): unref the window if has_user_ref_count
14910         is still set, got rid of call to
14911         gtk_container_unregister_toplevel().
14912         (gtk_window_finalize): remove window from toplevel list.
14913         (gtk_window_list_toplevels): new function to return a newly
14914         created list with referenced toplevels.
14915         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
14916
14917         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
14918         adjustment a non-construct arg.
14919         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
14920         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
14921         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
14922
14923         * gtk/gtkrange.c: added some realized checks.
14924         (gtk_range_destroy): get rid of the h/v adjustments in the
14925         destroy handler instead of finalize. remove timer.
14926         (gtk_range_get_adjustment): demand create adjustment.
14927
14928         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
14929         we simply create them on demand now and get rid of them in
14930         the destroy handler.
14931         (gtk_viewport_destroy): get rid of the h/v adjustments in the
14932         destroy handler instead of finalize.
14933         (gtk_viewport_get_hadjustment): 
14934         (gtk_viewport_get_vadjustment): 
14935         (gtk_viewport_size_allocate): demand create h/v adjustment
14936         if required.
14937
14938         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
14939         gtk_widget_real_destroy () functionality.
14940         (gtk_widget_real_destroy): reinitialize with a new style, instead
14941         of setting widget->style to NULL.
14942
14943 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
14944
14945         * gtk/gtkcalendar.c:
14946         * gtk/gtkbutton.c: ported _get_type() implementation over to
14947         GType, either to preserve memchunks allocation facilities,
14948         or because Gtk+ 1.0 GtkTypeInfo was still being used.
14949
14950         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
14951         over. prepare for ::destroy to be emitted multiple times.
14952         removed reference tracer magic. chain into GObjectClass.shutdown()
14953         to emit ::destroy signal.
14954
14955         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
14956         fundamental.
14957
14958         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
14959         cludge.
14960
14961         * gtk/gtksocket.c:
14962         * gtk/gtkplug.c:
14963         * gtk/gtklayout.c:
14964         * gtk/gtklabel.c:
14965         * gtk/gtkargcollector.c:
14966         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
14967         not being a fundamental anymore, and to work with the new
14968         type system (nuked fundamental type varargs clutter).
14969
14970         * gtk/*.c: install finalize handlers in the GObjectClass
14971         part of the class structure.
14972         changed direct GTK_OBJECT()->klass accesses to
14973         GTK_*_GET_CLASS().
14974         changed direct object_class->type accesses to GTK_CLASS_TYPE().
14975
14976         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
14977         GType. made most of the GTK_*() type macros and Gtk* typedefs
14978         simple wrappers around macros and types provided by GType.
14979         most notably, a significant portion of the old API vanished:
14980         GTK_TYPE_MAKE(),
14981         GTK_TYPE_SEQNO(),
14982         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
14983         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
14984         GTK_TYPE_ARGS,
14985         GTK_TYPE_CALLBACK,
14986         GTK_TYPE_C_CALLBACK,
14987         GTK_TYPE_FOREIGN,
14988         GtkTypeQuery,
14989         gtk_type_query(),
14990         gtk_type_set_varargs_type(),
14991         gtk_type_get_varargs_type(),
14992         gtk_type_check_object_cast(),
14993         gtk_type_check_class_cast(),
14994         gtk_type_describe_tree(),
14995         gtk_type_describe_heritage(),
14996         gtk_type_free(),
14997         gtk_type_children_types(),
14998         gtk_type_set_chunk_alloc(),
14999         gtk_type_register_enum(),
15000         gtk_type_register_flags(),
15001         gtk_type_parent_class().
15002         replacements, where available are described in ../docs/Changes-1.4.txt.
15003         implemented compatibility functions for the remaining API.
15004
15005         * configure.in: depend on glib 1.3.1, use gobject module.
15006
15007 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
15008
15009         * TODO.xml: Various updates to current status.
15010
15011 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
15012
15013         * gtk.m4: Print out version when test succeeds.
15014
15015 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
15016
15017         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
15018         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
15019         
15020         (Original triangle color selector from Simon Budig
15021         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
15022         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
15023         Santiago <mrcooger@cyberverse.com>)
15024
15025         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
15026         out into a separate widget.
15027
15028         * gtk/testgtk.c: Add some checkbuttons for toggling palette
15029         and opacity controls.
15030
15031 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
15032
15033         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
15034         snuck in prematurely.
15035
15036 2000-05-07  Tor Lillqvist  <tml@iki.fi>
15037
15038         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
15039         had deleted a ! operator by mistake, which caused
15040         GDK_SELECTION_CLEAR events never to be generated, which caused
15041         only the first copy to the clipboard from an gtkeditable to
15042         actually cause a copy to the Windows clipboard.
15043
15044 2000-05-06  Tor Lillqvist  <tml@iki.fi>
15045
15046         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
15047         compilation, too. Current mingw gcc distributions include the
15048         necessary headers. Also the necessary IIDs are now in mingw
15049         headers/libraries, and own definitions unnecessary.
15050
15051         More hacking on OLE2 DND, still doesn't work though, and thus
15052         ifdeffed out.
15053
15054         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
15055         here, too.
15056
15057 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
15058
15059         * gdk/nanox/*: nano-X port work in progress.
15060         * gdk/simple.c: simple test for Gdk.
15061         * README.nanox: notes about the port: read this first!
15062         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
15063         with nano-X.
15064
15065 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
15066
15067         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
15068         gdk_window_clear() into common code, implement in terms of
15069         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
15070         not redirected to the backing rectangle.
15071
15072 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
15073
15074         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
15075         EXTRA_DIST. It does not work well when the file that
15076         everything depends on is not in the tarball.
15077
15078 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
15079
15080         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
15081         with recursion where process_updates() is called from
15082         an expose handler. (GtkTextView is highly broken in
15083         doing this, but it should work, so it is a nice test
15084         case.)
15085
15086 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
15087
15088         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
15089         handle the case where updates are queued during processing of
15090         updates.
15091
15092 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
15093
15094         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
15095         window is on gdk_display - use that instead of segfaulting.
15096
15097 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
15098
15099         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
15100         broken and require an empty arg, give it to them.
15101
15102 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
15103
15104         * gtk/gtklabel.h: indentation fixes.
15105
15106 2000-05-02  Tor Lillqvist  <tml@iki.fi>
15107
15108         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
15109         draw too narrow or too low arcs, they seem to fail, at least with
15110         some display drivers.
15111
15112         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
15113
15114         Large changes to the Win32 backend, partially made necessary by
15115         the changes to the backend-independent internal
15116         structures. Attempts to implement similar backing store stuff as
15117         on X11. The current (CVS) version of the Win32 backend is *not* as
15118         stable as it was before the no-flicker branch was merged. A
15119         zipfile with that version is available from
15120         http://www.gimp.org/win32/. That should be use by "production"
15121         code until this CVS version is usable. (But note, the Win32
15122         backend has never been claimed to be "production quality".)
15123
15124         * README.win32: Add the above comment about versions.
15125
15126         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
15127
15128         * gdk/gdk.def: Update.
15129
15130         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
15131         presumably be replaced by some more better mechanism as 1.4 gets
15132         closer to release shape.
15133
15134         * gdk/makefile.{cygwin,msc}: Update.
15135
15136         * gdk/win32/*.c: Correct inclusions of the backend-specific and
15137         internal headers. Change code according to changes in these. Use
15138         gdk_drawable_*, not gdk_window_* where necessary.
15139
15140         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
15141         our old DND.
15142
15143         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
15144         to interpret single characters as UTF-8. Thanks to Hans Breuer.
15145         Use correct function name in warning messages.
15146
15147         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
15148         GSourceFuncs gdk_event_prepare and gdk_event_check.
15149         (gdk_event_get_graphics_expose): Do implement, use
15150         PeekMessage. Thanks to Hans Breuer.
15151         (event_mask_string): Debugging function to print an GdkEventMask.
15152         (gdk_pointer_grab): Use it.
15153
15154         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
15155         (old) book I used claimed was Hangul actually is CJK Unified
15156         Ideographs Extension A. Also, Hangul Syllables were missing.
15157         Improve logging.
15158
15159         * gdk/win32/gdkgc-win32.c: Largish changes.
15160
15161         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
15162         g_win32_getlocale() from GLib, and not setlocale() to get current
15163         locale name.
15164
15165         * gdk/win32/gdkprivate-win32.h
15166         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
15167         gdkwin32.h, similarily as in the X11 backend.
15168
15169         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
15170         assignment was used instead of equals in if test. Thanks to Hans
15171         Breuer.
15172
15173         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
15174         the X11 version.
15175
15176         * gdk/win32/makefile.{cygwin,msc}
15177         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
15178         path to the Win32 headers that works also with the mingw compiler.
15179
15180         * gtk/gtkstyle.c: Include <string.h>.
15181
15182 2000-04-26  Havoc Pennington  <hp@redhat.com>
15183
15184         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
15185         replacing the broken gtk_label_get ()
15186
15187 2000-04-15  Havoc Pennington  <hp@pobox.com>
15188
15189         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
15190         this keeps scanner scripts from getting confused.
15191
15192         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
15193         data, rather than void
15194
15195 2000-04-15  Tor Lillqvist  <tml@iki.fi>
15196
15197         * gtk/gtkclist.c (gtk_clist_motion)
15198         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
15199         with is_hint FALSE, get x and y from the event. They used to be
15200         used uninitialised. The Win32 backend never sends motion events
15201         marked as hints. This for instance fixes the annoying file and
15202         font selector behaviour in the Win32 version.
15203
15204 2000-04-14  Tor Lillqvist  <tml@iki.fi>
15205
15206         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
15207         gtk_private_n_signals variables, they are used by some software,
15208         sigh.
15209
15210         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
15211         installation directory from the Registry, where the installer
15212         should have put it.
15213
15214 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
15215
15216         * gdk/x11/Makefile.am: Fix problem with installation directory for
15217         gdkx.h
15218
15219         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
15220         <mrcooger@cyberverse.com> so that when selecting menus with the
15221         mouse, the first item will not be selected, but when selecting
15222         with an accelerator, or navigating left-right on a menubar with
15223         the menus popped up, the first item will be selected.
15224
15225 2000-04-05  Dan Damian  <dand@dnttm.ro>
15226
15227         * configure.in: Added "ro" to ALL_LINGUAS.
15228
15229 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
15230
15231         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
15232         indentation.
15233
15234         * Makefile.am (EXTRA_DIST): Fix typo.
15235
15236         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
15237         to catch gdkconfig.h
15238
15239         * gtk/gtkitemfactory.c: Added FIXME.
15240
15241 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
15242
15243         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
15244         s/return_if_fail/return_val_if_fail/g and add a return value.
15245
15246 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
15247
15248         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
15249         merge slipup.
15250
15251         * gdk/gdkinput.h: Fix missing line from merge.
15252
15253 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
15254
15255         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
15256         instead of gdkprivate.h.
15257
15258 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
15259
15260         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
15261         parent class to correctly be GtkDialogClass.
15262
15263 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
15264
15265         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
15266         toplevel windows and their immediate children by their parents,
15267         since the size of toplevel windows is out of our immediate
15268         control and we don't get any real benefit from trying to track
15269         this size for clipping.
15270
15271         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
15272         for input_only windows.
15273
15274         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
15275         to fix some hacks and make sure that we don't try to set the
15276         background of input only windows.
15277
15278 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
15279
15280         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
15281         the _really_ internal stuff, and leave gdkprivate.h for the fake private
15282         stuff that we've traditionally exposed.
15283
15284         * gdk/**.c: Use gdkinternals.h where appropriate.
15285
15286         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
15287         not include gdkprivate-x11.h, move all stuff of conceivable public
15288         interest into gdkx.h; keep all really private stuff in
15289         uninstalled header gdkprivate-x11.h.
15290
15291         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
15292         image->image_put on windows through a new function _gdk_window_draw_image()
15293         to allow us to do backing store for images. (Sort of ugly)
15294
15295         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
15296         contexts locally so that we can offset them properly when drawing 
15297         onto backing pixmaps.
15298
15299         * gdk/gdkinput.h: Reindented
15300
15301         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
15302         pixmap or color for the window, so we can properly initialize
15303         our double-buffer pixmaps, and also so that we temporarily set
15304         a background of None while scrolling.
15305
15306         * gdk/gdkregion.h: Revise region boolean operators to have an
15307         interface that is actually convenient - switch from creating new
15308         regions on every op, to "methods" that modify existing regions
15309         (A = A OP B). 3 argument forms which allow dest == src, would also
15310         be possible, but the current interfaces seem to map nicely
15311         onto what needs to be done. (There is quite a lot of region
15312         code in GDK now.)
15313
15314         * gdk/gdkregion.h: Add constructor from rectangle and a copy
15315         operator.
15316
15317         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
15318         gdkpoly-generic.h: Copy region code from Xlib, switch it over
15319         to 32 bit coordinates, modify it to be mostly GTK+ style
15320         and to have interfaces that match gdkregion.h.
15321
15322         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
15323         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
15324         create a backing pixmap and redirect all drawing to
15325         that backing pixmap until a matching gdk_window_end_paint().
15326
15327         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
15328         Create a special drawable class for GtkWindow's that 
15329         redirects the drawing to the backing pixmap as necessary
15330         and then calls the real operations in _gdk_windowing_window_class.
15331
15332         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
15333         Store invalid region for each window. Generate expose events for invalid
15334         region in an idle. This replaces both the expose compression
15335         and the redrawing queuing in GTK+. It is both more efficient and
15336         simpler than either one individually and far more so then the
15337         combination.
15338
15339         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
15340         Emulate 32 bit coordinates for windows with 16 bit coordinates
15341         by offsetting drawing, guffaw scrolling techniques and
15342         mapping/unmapping child windows as necessary.
15343
15344         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
15345         where, when invalid regions are processed, the region is stored,
15346         and if expose events come in that are detectably duplicate
15347         the processed exposes (by comparison of event serial numbers),
15348         the stored region is subtracted out of those exposes.
15349
15350         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
15351         regions newly exposed when scrolling or resizing windows.
15352         This, combined with forcing processesing of queued invalidated
15353         regions, gives nice flicker-free scrolling.
15354
15355         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
15356         invalidated regions after every scroll.
15357
15358         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
15359         emulation in GDK. Its, for all practical purposes just a
15360         GtkViewport/GtkFixed hybrid now.
15361
15362         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
15363         (16-bit) structures as necessary instead of just casting.
15364
15365         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
15366         in terms of the structures from gdkregion-generic.c, using appropriate
15367         offsets from GDK to X11 coordinates. Cache clip mask and
15368         origin and ts origin locally and only flush to the server
15369         when drawing, to avoid constantly setting and resetting these
15370         values when offsetting GC's for scrolling and backing pixmaps.
15371
15372         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
15373
15374         * gtk/gtkcontainer.c: Call process_all_updates at end
15375         of resizing to reduce flicker. (Avoids having redraw
15376         lag arbitrarily behind resize under some circumstances)
15377
15378         * gtk/gtkentry.c: Remove old backing store code, and simply take
15379         advantage of the new backing store capabilities of GDK.
15380
15381         * gtk/gtkmain.c: Simple implementation of widget backing
15382         store - simply push a paint while handling each expose.
15383         (Should really be configurable widget for widget.)
15384         
15385         * gtk/gtkwidget.c: Remove all the old complicated redraw
15386         code, and simply invalidate the GDK windows from
15387         gdk_window_queue_clear(), etc. (Sigh, so much carefully
15388         debugged complexity ... gone to the winds.)
15389
15390         Remove all the code for suppressing expose events while
15391         resizes are pending; this isn't needed since the invalid
15392         areas won't be processed until after the resizes are
15393         processed, since they are in a lower priority idle.
15394
15395 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
15396
15397         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
15398         and height of dest rectangle for non-intersecting rectangles.
15399
15400 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
15401
15402         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
15403         for GdkRectangle.
15404
15405 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
15406
15407         * gdk/gdk{events,image,private,types,window}.h
15408          gdk/x11/gdkinputprivate.h: Change all coordinates
15409          from int16 to int. Also, Change width and height from
15410          unsigned to signed to avoid all the stupid C 
15411          signedness bugs.
15412
15413 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
15414
15415         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
15416         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
15417         Add some more detailed checking.
15418
15419         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
15420         New function to retrieve the depth of a drawable.
15421
15422         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
15423         field, reorder fields to save memory. 
15424
15425 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
15426
15427         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
15428         of the background image instead of scaling the background down to
15429         a line.
15430
15431         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
15432         which temporarily set slider to wrong size.
15433
15434         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
15435         queue_clear().
15436
15437 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
15438
15439 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
15440
15441         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
15442
15443 2000-03-17  Tor Lillqvist  <tml@iki.fi>
15444
15445         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
15446         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
15447
15448         * gdk/win32/gdkfont-win32.c
15449         * gdk/win32/gdkproperty-win32.c
15450         * gdk/win32/gdkselection-win32.c
15451         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
15452         now declared such.
15453
15454 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
15455
15456         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
15457
15458 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
15459
15460         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
15461         is called without trapping X errors.
15462
15463 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
15464
15465         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
15466         way into the fontset lists.
15467
15468 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
15469
15470         * gtk/gtkthemes.h: add extern "C" scope.
15471
15472 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
15473
15474         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
15475         to make appends to the list constant. (gtk-guy-990901-0.patch)
15476
15477 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
15478
15479         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
15480         for the typename hash table.
15481
15482 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
15483
15484         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
15485         to make sure we never divide by zero. 
15486         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
15487
15488 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
15489
15490         * gtk/gtkfontsel.c: Apply patch from
15491         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
15492         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
15493
15494         Also, some cleanups in atom handling.
15495
15496 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
15497
15498         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
15499         not GtkWidget.
15500
15501 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
15502
15503         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
15504         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
15505         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
15506         more guint wrap-around bugs before going to bed.
15507
15508 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
15509
15510         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
15511         guint wrap arounds in allocation.width.
15512
15513         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
15514         process untill we fit the allocation given.
15515
15516 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
15517
15518         * gtk/gtkwidget.c:
15519         (gtk_widget_unrealize): guard widget access with ref/unref
15520         around signal emission.
15521         (gtk_widget_hide): same here, but also check its destroyed
15522         state before queueing a resize.
15523
15524 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
15525
15526         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
15527         of gtk_default_insensitive_bg as insensitive base color.
15528
15529         * gtk/gtktext.c (gtk_text_style_set): set the background color according
15530         to the widget's state.
15531         (gtk_text_realize): same here.
15532         (gtk_text_state_changed): same here.
15533         (draw_bg_rect): compare background color against base[] from
15534         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
15535
15536 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
15537
15538         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
15539         grabs are active, unless a delete event is send to the toplevel
15540         of the currently grab holding widget.
15541
15542 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
15543
15544         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
15545         debugging g_print's.
15546
15547 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
15548
15549         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
15550         ever make the scrolled-window requisition ever depend on the 
15551         visibility state of the scrollbars for the AUTOMATIC policy. 
15552         This breaks the GTK+ requisition model, and causes loops.
15553
15554 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
15555
15556         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
15557         the default font to avoid problems with XFree86-4.0 where the
15558         default charset is iso10646-1, not iso8859-1.
15559
15560 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
15561
15562         * acinclude.m4
15563         * config.guess
15564         * config.sub
15565         * ltconfig
15566         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
15567
15568         * gtk/Makefile.am: minor cosmetic consistency tweak
15569
15570 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
15571
15572         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
15573         the activate_time to 0, so that we handle a quick
15574         press/release press/release properly and don't suppress
15575         the second release. (Red Hat bug #7545)
15576
15577 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
15578
15579         * gtk/gtkctree.c (row_delete):
15580         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
15581         bugs with destruction notifier, *always* update internal
15582         structures *before* calling user code.
15583
15584 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
15585
15586         A few more fixes for bug #5487, #2051, #2677.
15587         * gtk/gtkclist.c : 
15588         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
15589         not GDK_BUTTON_PRESS.
15590         (resync_selection): resync only if selection_mode is
15591         GTK_SELECTION_EXTENDED
15592         * gtk/gtkctree.c (resync_selection): same here
15593
15594 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
15595
15596         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
15597         gdk_drag_get_selection() and gtk_menu_detach().
15598
15599         [ From Jeroen Ruigrok/Asmodai ]
15600
15601 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
15602
15603         * gtk/gtknotebook.c (gtk_notebook_size_request): 
15604         page->tab_label can be NULL.
15605
15606 2000-01-25  Havoc Pennington  <hp@pobox.com>
15607         
15608         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
15609         arg is boolean
15610
15611         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
15612
15613         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
15614
15615         * gdk/gdkproperty.c (gdk_property_get): return boolean
15616
15617         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
15618
15619         * gdk/gdkim.c (gdk_im_ready): return boolean
15620
15621         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
15622
15623         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
15624         glib clash, should fix glib)
15625
15626         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
15627         (gdk_get_show_events): return gboolean, and canonicalize 
15628         to TRUE/FALSE
15629
15630         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
15631         colormap is private
15632         (gdk_colors_alloc): gboolean whether to be contiguous
15633         (gdk_color_equal): return gboolean since we are a predicate
15634         and not a qsort() (this looks semi-wrong due to glib breakage,
15635         IMO glib should be fixed)
15636         
15637         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
15638         (gdk_get_use_xshm): return gboolean
15639         (gdk_pointer_is_grabbed): return gboolean
15640
15641         * gdk/gdk.h: Change prototypes to match all the above changes,
15642         and re-run egtk-format-protos as required.
15643
15644 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
15645
15646         * gtk/gtkctree.c (resync_selection): 
15647         * gtk/gtkclist.c (resync_selection):
15648
15649         Return immediately if clist->drag_pos < 0. This is a workaround
15650         for the corrupt state that the clist gets into when a
15651         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
15652
15653         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
15654         
15655         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
15656         variable from recent commit.
15657
15658 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
15659
15660         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
15661
15662 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
15663
15664         * gtk/Makefile.am: prefix all autogenerated source that get build in
15665         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
15666         in builddir. since we subsequently cd into srcdir for autogeneration,
15667         the paths have to be stripped from the target file names, thusly we
15668         use $(@F) as target names now.
15669         put a comment about configure.in's --disable-rebuilds option,
15670         which can be used for non-writable source directories, for development
15671         setups though, srcdir has to be *writable*.
15672
15673 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
15674
15675         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
15676           Finish the job of allowing event to be NULL.
15677           (Fixes bug #4283, reported by Chris Blizzard)
15678
15679         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
15680           things so that the cursor appears on screen, properly
15681           take into account INNER_BORDER.
15682           (Fixes bug #4754, reported by Antonio Campos)
15683
15684 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
15685
15686         * gtk/gtknotebook.c (gtk_notebook_map): Don't
15687           show the tab_label unless it itself is visible.
15688
15689           gtk/gtknotebook.c (gtk_notebook_size_request):
15690           Do a better job of making sure that the visibility
15691           of the tab label corresponds to whether it should
15692           be mapped or not.
15693
15694 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
15695
15696         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
15697           Use the requisition, not the allocation, since the
15698           allocation has not necessarily been computed yet.
15699           (Pointed out by Eugene Osintsev)
15700
15701 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
15702
15703         * gtk/gtkstyle.c (gtk_style_new): Dont' set
15704           style/base[GTK_STATE_INSENSITIVE] both to
15705           gtk_default_insensitive_bg!
15706           (Bug #2187, reported by Jonathan Blandford)
15707
15708         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
15709           Add Alt_L, Alt_R to list of invalid accelerators.
15710           (Bug #3736, reported by Vlad Harchev)
15711
15712 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
15713
15714         * gtk/gtkfilesel.c (open_ref_dir): Fix several
15715         bugs which occured after an attempt to open 
15716         invalid home directory left cmpl_state->reference_dir == NULL.
15717
15718          - completion on files in home directory didn't work
15719          - completion on an empty string caused  segfault
15720
15721          (Bug #3678, reported by Steve Ratcliffe)
15722
15723         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
15724         cut and paste error that was causing scales to
15725         be incorrectly positioned.
15726         (Bug #2956,
15727          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
15728
15729 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
15730
15731         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
15732         when checking for dcgettext, if we've found we needed
15733         it for dgettext.
15734 +
15735 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
15736
15737         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
15738         queue_clear on NO_WINDOW widgets during a reparent,
15739         since at that point the window and widget heirarchies
15740         are out of sync. This stops crashing in some cases
15741         (the scrolled window reparent test, for instance), and
15742         _probably_ won't cause drawing errors.
15743
15744         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
15745         test do what it was supposed to do and be robust against
15746         window closings, etc. (Bug #2443)
15747
15748 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
15749
15750         * gtk/gtkentry.c: Fix return values on mouse events.
15751         (Bug #2686, Sky <seb_sky@yahoo.com>)
15752
15753         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
15754         (pointed out by George Lebl)
15755
15756         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
15757         (From Ettore Perazzoli  <ettore@helixcode.com>)
15758  
15759 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
15760
15761         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
15762         clicks between rows or outside calender area correctly.
15763         (Patch from Damon Chaplin)
15764
15765         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
15766         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
15767           Call destroy function when overwriting existing data. 
15768           (Pointed out by Damon Chaplin)
15769
15770 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
15771
15772         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
15773           which was causing problems on various systems with Xmu.
15774           This hasn't been needed for a very long time.
15775           (Fixes #1185 3167)
15776
15777 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
15778
15779         * gdk/gdki18n.h: Include <ctype.h> when defining
15780           gdk_isw* in terms of is* as a fallback.
15781           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
15782
15783 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
15784
15785         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
15786           realize the widget when it is size allocated!
15787           (old, old bug)
15788
15789         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
15790           Removed unused call to gdk_window_get_size() that
15791           showed up when the above was fixed.
15792
15793 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
15794
15795         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
15796           fix up widget->window when the widget is a
15797           NO_WINDOW container widget.
15798
15799 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
15800
15801         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
15802           to account for the fact that feof() does _not_ 
15803           return TRUE on errors, and thus avoid infinite loops
15804           when trying to use gdk_pixmap_create_from_xpm()
15805           on unreadable values.
15806
15807 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
15808
15809         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
15810
15811 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
15812
15813         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
15814           gdk_gc_set_dashes to take gint8 instead of gchar to
15815           make it clearer that it is _not_ a NULL terminated string.
15816
15817         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
15818           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
15819           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
15820           arguments.
15821
15822 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
15823
15824         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
15825         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
15826         background size relative to our allocation, guard against small
15827         allocations, we may have not yet been size allocated.
15828
15829 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
15830
15831         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
15832         not just version == 3. We implement all 3 + most of 4 - 
15833         (we don't support matching text/plain;charset=iso-8859-1
15834         to a dest that expects text/plain). We'll still advertise
15835         3 to be safe, but any client implementing version >= 3
15836         must interoperate with 3.
15837         
15838 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
15839
15840         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
15841         background and gc members, add a warning in gtk_tooltips_set_color()
15842         indicating that this function is deprecated.
15843
15844 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
15845
15846         * docs/gtkfaq.sgml: FAQ Update:
15847           - Minor cleanups (Emmanuel, me)
15848           - New questions:
15849                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
15850                 How can I retrieve the text from a GtkMenuItem? (timj)
15851                 How do I validate/limit/filter the input to a GtkEntry? (me)
15852                 Memory does not seem to be released when I free the list
15853                         nodes I've allocated (timj)
15854
15855 2000-03-07  Tor Lillqvist  <tml@iki.fi>
15856
15857         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
15858         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
15859         for which it is no use to call GetLastError onWin9x.
15860         (gdk_other_api_failed) New function, for general error
15861         reporting without calling GetLastError.
15862         (gdk_win32_api_failed) OTOH, this function always calls
15863         GetLastError. (gdk_win32_last_error_string) Remove this function,
15864         GLib has the equivalent now.
15865
15866         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
15867         call them with function name, file name and line number in the
15868         arguments.
15869
15870         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
15871         functions.
15872         
15873         * gtk/gtk.def: Add some missing entry points.
15874
15875         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
15876         gtk_paned_set_gutter_size, which don't exist any longer, as void.
15877         
15878         Fixes by Hans Breuer:
15879
15880         * gdk/makefile.msc: Update for debugging.
15881
15882         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
15883         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
15884         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
15885         in the dash_list.
15886
15887         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
15888         the x11 backend.
15889
15890         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
15891
15892         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
15893
15894 2000-03-04  Tor Lillqvist  <tml@iki.fi>
15895
15896         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
15897         just pixel value of background colour.
15898
15899         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
15900         containing code snippet previously duplicated in a couple of
15901         places.
15902         
15903         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
15904         gdk_colormap_color.
15905
15906         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
15907         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
15908         events for autorepeated Shift, Control and Alt keys. Use
15909         gdk_colormap_color.
15910
15911         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
15912         pointer is inside the window the cursor of which we are setting,
15913         call SetCursor immediately.
15914
15915         * gdk/win32/makefile.cygwin
15916         * gtk/makefile.cygwin: If we don't have the build number stamp
15917         file, use zero.
15918
15919         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
15920         gtk_paned_set_gutter_size as empty.
15921
15922         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
15923         
15924 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
15925
15926         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
15927           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
15928           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
15929           docs/gtk_tut.sgml docs/gtk.texi TODO:
15930
15931           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
15932
15933 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
15934
15935         * gtk/gtkcalendar.c: Implement num_marked_dates,
15936           and don't emit mutiple day_selected signals on
15937           month_prev.
15938
15939 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
15940
15941         * docs/make-todo (lineno): let title and logo be configurable so
15942         that GNOME can use this script too.
15943
15944         * TODO.xml: added logourl and a title
15945
15946 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
15947
15948         * TODO.xml: Added some UI items, and an explanatory
15949         comment at the top of the file.
15950
15951 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
15952
15953         * TODO.xml: some updates, added abunch of new entries.
15954         a note for those fiddeling with this file, when done
15955         with it, invoke:
15956         $ ./docs/make-todo TODO.xml >/dev/null
15957         and correct output errors before comitting changes.
15958
15959 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
15960
15961         * TODO.xml: Added XML-structured TODO file.
15962         * docs/make-todo: python script to turn TODO.xml into
15963           pretty XML output. 
15964
15965 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
15966
15967         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
15968         the function to let it draw the seven dots, instead of the old,
15969         much maligned, method.
15970         (draw_dot): New function to draw a dot.
15971
15972         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
15973         to draw the handle inside the border width as opposed to outside.
15974         Use paint function instead of gdk_draw_point.
15975
15976         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
15977         to draw the handle inside the border width as opposed to outside.
15978         Use paint function instead of gdk_draw_point.
15979
15980         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
15981         Change indenting to be more GTK like.
15982
15983 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
15984
15985         * docs/gtk_tut.sgml: New section on GtkCalendar
15986         * examples/calendar: Update example code
15987
15988 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
15989
15990         * docs/gtkfaq.sgml: FAQ Update
15991
15992 2000-02-19  Anders Carlsson  <andersca@gnu.org>
15993
15994         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
15995         to prevent the scroll event to be propagated upwards.
15996
15997 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
15998
15999         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
16000         OwnerGrabButtonMask from button entries for
16001         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
16002
16003         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
16004         to the event mask (which will result in button/press release
16005         being added to the event mask on Unix) so scrolling works
16006         for layouts in scroll windows.
16007
16008         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
16009
16010         Patch from Anders Carlsson  <andersca@gnu.org> to add
16011         a scroll event.
16012
16013         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
16014         scrolling to the "Test Scrolling" part of testgtk.
16015  
16016         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
16017  
16018         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
16019         it against GDK_SCROLL.
16020  
16021         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
16022         way of mouse wheel scrolling.
16023  
16024         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
16025  
16026         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
16027  
16028         * gtk/gtkmain.c: Removed previous mouse wheel hack.
16029  
16030         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
16031         gdk_event_mask_table.
16032  
16033         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
16034         GdkEventScroll handler.
16035  
16036         * gdk/gdkevents.h: Added GdkEventScroll structure.
16037  
16038 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
16039
16040         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
16041         and Anders Carlsson to change the Paned widgets so that they
16042         can be dragged from anywhere along the length. Also change
16043         the way that this is drawn to make this apparent.
16044
16045         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
16046         from George Lebl to check that option_menu->menu is present
16047         before getting history.
16048
16049 2000-02-14  Tor Lillqvist  <tml@iki.fi>
16050
16051         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
16052         before the assertion for non-NULL segment list.
16053
16054         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
16055         Seems that pattern brushes *must* be 8x8 pixels! At least on my
16056         machine, but it might be display driver dependent. Sigh, so make
16057         sure the stipple is that size. Does Windows suck or what?
16058
16059         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
16060         places.
16061
16062 2000-02-13  Havoc Pennington  <hp@pobox.com>
16063
16064         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
16065         refcount to 1
16066         (gdk_cursor_new): init refcount to 1
16067
16068         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
16069
16070 2000-02-13  Tor Lillqvist  <tml@iki.fi>
16071
16072         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
16073         so that we don't have to do unnecessary settings to the HDC.
16074
16075         * gdk/win32/gdkdrawable-win32.c
16076         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
16077         gdk_gc_predraw.
16078
16079         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
16080         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
16081         GDI paths, call WidenPath to get the outline of the stroken path,
16082         and then fill the outline (with the brush that was built from the
16083         stipple).
16084
16085         * gdk/win32/gdkgc-win32.c: Factor out common code from
16086         _gdk_win32_gc_new and gdk_win32_gc_set_values into
16087         gdk_win32_gc_values_to_win32values. Use correct colour for
16088         SetBkColor() (Until now the code actually used a random colour in
16089         the call to SetBkColor()... but that didn't show up as not many
16090         GDI APIs use the background colour. Pattern (opaque stippled)
16091         brushes do.)
16092
16093         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
16094         gdk_win32_api_failed): New functions for error logging.
16095
16096         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
16097         WIN32_API_FAILED to call them, passing function or file name and
16098         line number.
16099
16100         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
16101
16102         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
16103         GdkColor for foreground and background in GdkGCWin32Data.
16104
16105         * gdk/makefile.cygwin: Link in the resource object separately.
16106
16107         * gdk/win32/rc/gdk.rc
16108         * gtk/gtk.rc (New file)
16109         * gdk/win32/makefile.cygwin
16110         * gtk/makefile.cygwin: Update build number in DLLs automatically,
16111         as in GLib.
16112
16113 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
16114
16115         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
16116         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
16117         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
16118         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
16119         parameters given and cursor->ref_count. coding style fixups.
16120
16121         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
16122         not GtkWidget.
16123         
16124         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
16125         fix up widget macros and add _GET_CLASS() variant.
16126         
16127         * gtk/*.c: some GtkType fixups.
16128
16129 2000-02-09  Tor Lillqvist  <tml@iki.fi>
16130
16131         * gdk/win32/gdkproperty-win32.c
16132         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
16133         were reversed.
16134
16135 2000-02-04  Tor Lillqvist  <tml@iki.fi>
16136
16137         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
16138         g_filename_to_utf8 to convert the font names Windows gives us from
16139         whatever is the default codepage to UTF-8.
16140         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
16141         in the other direction.
16142
16143         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
16144         error in debugging output.
16145
16146 2000-02-02  Tor Lillqvist  <tml@iki.fi>
16147
16148         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
16149         and height parameters to gdk_window_clear_area(). Not minus one.
16150
16151 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
16152
16153         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
16154         checks if the widget passed to gtk_drag_get_data() was not the
16155         dest widget.
16156
16157 2000-02-01  Tor Lillqvist  <tml@iki.fi>
16158
16159         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
16160         g_filename_from_utf8 functions (which were added a moment ago to
16161         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
16162         size buffers.
16163
16164         gtk_file_selection_get_filename returns the filename in the C
16165         runtime encoding. It calls g_filename_from_utf8, but copies the
16166         returned string to a static buffer, which is returned. I think
16167         this is better than returning the result from g_filename_from_utf8
16168         directly, which would mean all apps that use it would have to free
16169         the return value. Or should this function care about this issue at
16170         all? Maybe a new function with clearly defined semantics.
16171
16172         * gtk/gtkfilesel.h: Add comment about
16173         gtk_file_selection_get_filename returning the filename in the C
16174         runtime's encoding.
16175
16176         * README.win32
16177         * gdk/gdk.def
16178         * gdk/makefile.{cygwin,msc}
16179         * gtk/gtk.def: Updates.
16180
16181         * gdk/gdkcursor-win32.c: Initialise refcount.
16182
16183 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
16184
16185         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
16186
16187 2000-01-30  Havoc Pennington  <hp@pobox.com>
16188
16189         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
16190         destroy
16191
16192         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
16193
16194         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
16195         implemented in platform-specific code
16196
16197         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
16198
16199         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
16200         underscore in front
16201
16202         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
16203         put an underscore in front
16204
16205         * gdk/gdkcursor.c: new file, implements
16206         gdk_cursor_ref/gdk_cursor_unref
16207
16208         * gdk/gdkcursor.h: Refcount GdkCursor
16209
16210         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
16211
16212 2000-01-29  Tor Lillqvist  <tml@iki.fi>
16213
16214         * gdk/gdkwindow.h
16215         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
16216
16217 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
16218
16219         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
16220         structures to properly inherit from GtkWidget not GtkBin.
16221
16222 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
16223
16224         * gtk+.spec.in: Added lib/gtk+/include/* to %files
16225         (bug #5178 - Peter Wainright)
16226         
16227         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
16228         so that it will be installed.
16229         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
16230
16231 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
16232
16233         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
16234         for the GtkStyleClass vtable const.
16235
16236         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
16237         take a const string argument like GtkTranslateFunc. This will
16238         require changes in use code.
16239
16240 2000-01-19  Tor Lillqvist  <tml@iki.fi>
16241
16242         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
16243         semantics (to mimic the X11 backend, which just calls XClearArea)
16244         is to check for zero width (and height), and in that case use the
16245         window's width minus x (height minus y). This fixes for instance
16246         some redraw problems with gtkclist, which were easily noticeable
16247         in the gtk file selection widget.
16248
16249         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
16250         windows.
16251
16252 2000-01-13  Tor Lillqvist  <tml@iki.fi>
16253
16254         * configure.in
16255         * gdk/Makefile.am
16256         * gdk/x11/Makefile.am
16257         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
16258         (bug #5177).
16259         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
16260         out later.
16261
16262 2000-01-09  Tor Lillqvist  <tml@iki.fi>
16263
16264         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
16265         WM_MOVE for iconified or invisible windows. This fixes various
16266         problems when minimising windows. Thanks to Bernd Herd.
16267
16268 2000-01-05  Tor Lillqvist  <tml@iki.fi>
16269
16270         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
16271         backend's draw_lines method, not draw_points.
16272
16273 2000-01-02  Tor Lillqvist  <tml@iki.fi>
16274
16275         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
16276         before Owen's reorganisation: Don't have queued_events and
16277         queued_tail statics in this file, but use gdk_queued_events and
16278         gdk_queued_tail. This makes exposure event compression work again.
16279
16280         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
16281         seem to be needed?
16282
16283 1999-12-30  Tor Lillqvist  <tml@iki.fi>
16284
16285         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
16286         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
16287         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
16288         doesn't do anything.
16289
16290         * gdk/gdk.def: Add gdk_xid_table_insert.
16291
16292         * gdk/win32/gdkprivate-win32.h
16293         * gdk/win32/gdkevents-win32.c
16294         * gdk/win32/gdkinput-win32.c
16295         
16296         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
16297         extension_events field in the GdkWindowWin32Data struct. Use only
16298         the extension_events field in GdkWindowPrivate. Previously one was
16299         set, and the other one tested, which broke tablet
16300         functionality. Thanks to Keishi Suenaga for pointing this out.
16301
16302 1999-12-18  Tor Lillqvist  <tml@iki.fi>
16303
16304         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
16305         When handling a single character (text length == 1), don't handle
16306         it as if it was UTF-8.
16307
16308 1999-12-11  Tor Lillqvist  <tml@iki.fi>
16309
16310         * Makefile.am: Distribute README.win32.
16311         
16312         * gdk/Makefile.am
16313         * gdk/win32/Makefile.am: Distribute Win32 files.
16314
16315         * gdk/makefile.msc: New file.
16316
16317         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
16318         after label).
16319
16320         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
16321         gdk_error_code as GDKVAR, as they are referred outside GDK.
16322
16323         * gdk/win32/makefile.msc: Update.
16324
16325         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
16326         tweaks. Check only if at least one of those Unicode subrange bits
16327         we care for is set. If no code page bits are set, guess (wildly)
16328         based on the charset.
16329
16330         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
16331
16332         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
16333         non-NULL.
16334
16335         * gtk/gtkdnd.c
16336         * gtk/gtklayout.c
16337         * gtk/gtkplug.c
16338         * gtk/gtkselection.c
16339         * gtk/gtksocket.c
16340         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
16341         appropriate. There must be a cleaner way to handle this?
16342
16343         * gtk/gtkrc.c: Must include windows.h on Win32.
16344
16345         * gtk/testgtk.c: No need to include gdkx.h.
16346
16347         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
16348
16349 1999-12-07  Tor Lillqvist  <tml@iki.fi>
16350
16351         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
16352         the rbearing is set to the same as the width, but this should be
16353         fixed.
16354
16355 1999-12-06  Tor Lillqvist  <tml@iki.fi>
16356
16357         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
16358         function. If Windows doesn't tell us what Unicode subranges a font
16359         covers, guesstimate based on the codepages it covers. This will
16360         hopefully help those Windows versions or fonts that don't give us
16361         any useful Unicode subrange information with GetTextCharsetInfo.
16362         Call this function in gdk_font_load_internal.
16363
16364         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
16365         minor changes.
16366
16367 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
16368
16369         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
16370         New function, long needed.
16371
16372 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
16373
16374         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
16375         only_if_exists argument of gdk_atom_intern to
16376         bool.
16377
16378 1999-11-25  Tor Lillqvist  <tml@iki.fi>
16379
16380         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
16381         Fix two copy&paste errors.
16382
16383         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
16384         win32 has changed.
16385
16386         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
16387         GdkWin32SingleFont struct.
16388
16389         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
16390         subranges of loaded fonts. Clear font signature first, in case
16391         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
16392         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
16393
16394         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
16395         Unoffset clip region.
16396
16397 1999-11-23  Tor Lillqvist  <tml@iki.fi>
16398
16399         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
16400         event->any.window before calling filter functions.
16401
16402 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
16403
16404         * gtk/gtkgamma.h: Adapt cast macros to standard.
16405
16406 [ Merges from 1.2 ]
16407
16408 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
16409
16410         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
16411         If translation does not include a '/', use entire
16412         translation instead of crashing.
16413
16414 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
16415
16416         * docs/gtk_tut.sgml:
16417         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
16418
16419 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
16420
16421         * gtk/gtkselection.c (gtk_target_list_remove): Use
16422         g_list_remove_link, not g_list_remove.
16423
16424         [ From Geert Bevin <gbevin@thunderstorms.org> ]
16425         
16426 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
16427
16428         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
16429         statement upon unselection (how the heck did that slip in?).
16430
16431 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
16432
16433         * gtk/gtktext.c (gtk_text_freeze): 
16434         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
16435         in frozen state (and aparently crashes). patch provided by Anders
16436         Melchiorsen <and@kampsax.dtu.dk>.
16437
16438 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
16439
16440         * fix insensitive default/focus widget activation,
16441         reported by Matt Goodall <mgg@isotek.co.uk>.
16442
16443         * gtk/gtkwindow.c (gtk_window_key_press_event): 
16444         (gtk_window_activate_default):
16445         (gtk_window_activate_focus):
16446         return handled=FALSE for actiavtion of insensitive default
16447         widgets. return handled=TRUE for activation of insensitive
16448         focus widgets. don't activate in either case.
16449
16450 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
16451
16452         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
16453         and $glib_cflags to match library order and in the
16454         theory that an old version of GLib is more likely to
16455         be in the include directory for X then vice-versa.
16456         (Bug #2776)
16457
16458 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
16459
16460         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
16461         to determine the locale for fontsets, not LC_MESSAGES;
16462         the user may want English messages with a handling
16463         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
16464         will still be broken) (Bug #2891)
16465
16466 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
16467
16468         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
16469
16470 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
16471
16472         * gtk/gtkrc.ko: Changed the Korean default fontset.
16473
16474 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
16475
16476         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
16477         where when scrolling to the left or top double exposes
16478         were done, causing major slowdowns.
16479
16480 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
16481
16482         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
16483         names to lowercase and alphanumeric, before looking
16484         them up.
16485
16486         * gtk/Makefile.am: Install codeset variant gtkrc files
16487         with normalized names.
16488
16489 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
16490
16491         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
16492         popup menus when the menu is already visible, but its parent
16493         is still hidden, (happens after tornoff window got hidden).
16494
16495 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
16496
16497         * gtk/Makefile.am (install-data-local): Fix
16498         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
16499         deleted, causing error messages on install.
16500
16501 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
16502
16503         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
16504         the handle as well, since we now sometimes ignore
16505         exposes on the handle while resizing.
16506
16507 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
16508
16509         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
16510         extra g_free introduced in one of the last one or two 
16511         commits.
16512
16513 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
16514
16515         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
16516         consistent, put each style that a gtkrc.* file creates
16517         in a unique namespace, remove old files before installing.
16518
16519 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
16520
16521         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
16522         gtk_rc_init is called multiple times. (Yes, people who
16523         do that have bugs in their code.)
16524
16525 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
16526
16527         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
16528         Remove it since it's generated by the Makefile anyway
16529
16530 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
16531
16532         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
16533         device->info.axes for core pointer.
16534
16535 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
16536
16537         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
16538         idle_id, to deal with obsolete, broken C libraries.
16539
16540 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
16541
16542         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
16543         allocation->x/y twice!
16544
16545         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
16546         consistent with gtk_vscale_pos_trough().
16547
16548 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
16549
16550         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
16551         be queueing a resize on a toplevel container between
16552         the time we show it and when we map it. So, we need
16553         to test GTK_WIDGET_VISIBLE() for toplevels, and only
16554         use GTK_WIDGET_DRAWABLE() for child windows.
16555
16556 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
16557
16558         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
16559         (fixes bug #2144)
16560
16561 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
16562
16563         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
16564         container DRAWABLE (instead of VISIBLE), so we don't queue
16565         resizes on non-toplevel containers.
16566
16567 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
16568
16569         * gtk/gtkselection.[ch]: Make the data argument
16570         const guchar *.
16571
16572 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
16573
16574         * gtk/gtkwindow.c: Try to behave sensibly if 
16575         the focus widget is the window itself. (Should
16576         we allow this at all?)
16577
16578 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
16579
16580         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
16581         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
16582         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
16583         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
16584         in prototypes and implementations consistent (Tomas Ogren).
16585
16586         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
16587         before the widget is unparented (reported by damon).
16588
16589         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
16590         since we provide unsigned data anyways.
16591
16592 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
16593
16594         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
16595         the call to gtk_tooltips_layout_text() until later.
16596
16597         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
16598         Call gtk_widget_ensure_style() before using the style.
16599
16600 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
16601
16602         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
16603         for old widgets that don't propagate draws to all
16604         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
16605
16606 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
16607
16608         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
16609         for a redraw but just the widget that requested the resize.
16610
16611 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
16612
16613         * gtk/gtkcontainer.c: added new widget level method
16614         gtk_container_set_reallocate_redraws() and a GtkContainer flag
16615         reallocate_redraws : 1 to reflect the setting, exported this through
16616         the argument system as a boolean ::reallocate_redraws.
16617
16618         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
16619         on the widget because the allocation changes, do so as well for
16620         widget->parent if the parent has reallocate_redraws set to TRUE.
16621         with that containers requesting reallocation redraws get automatically
16622         redrawn if their children changed allocation (this unfortunately
16623         affects also other children that didn't change allocation, but we
16624         cannot work around that before 1.3).
16625
16626 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
16627
16628         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
16629         _and_ height are >0 (not _or_).
16630
16631         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
16632         instead of gtk_container_queue_resize(), which is a core gtk internal
16633         function (must have been on crack when i queued that).
16634
16635         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
16636         we can check more reliably if we want to discard expose events.
16637         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
16638         flag.
16639         
16640         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
16641         we simply trust these events. for deciding whether to discard exposes,
16642         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
16643         
16644 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
16645
16646         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
16647         queues of areas that are completely off screen.
16648
16649         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
16650         logic for handleboxes.
16651
16652         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
16653         check on width/height.
16654
16655 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
16656
16657         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
16658         we are fine with using $@ the way we do (if we actually encounter
16659         brokeness with $@ in VPATH builds because of additional path prefixes,
16660         we need to use $(@F) actually).
16661
16662 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
16663
16664         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
16665         short lived bugs, that would allow language bindings to do surgeries
16666         to our guts.
16667
16668 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
16669
16670         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
16671         where comparison was being done against an uninitialized
16672         value causing intermittant results depending on
16673         compiler flags. Also make it clearer that we aren't
16674         ever initializing the child as 0x0 (though this will
16675         be caught in gtk_widget_size_allocate())
16676
16677 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
16678
16679         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
16680         gtk_window_unset_transient_for() call after we do checks
16681         involving the old transient parent.
16682         [ From Lance Capser <lmc@cyberhighway.net> ]
16683
16684 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
16685
16686         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
16687         an empty file.
16688
16689 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
16690
16691         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
16692         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
16693
16694 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
16695
16696         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
16697         `$@' is valid only in the build dir, not after we've done 
16698         `cd $srcdir'.  Also use `test -f' instead of less portable
16699         `test -e'.
16700
16701 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
16702
16703         * gtk/gtktext.c (correct_cache_insert): Rewrite
16704          for simplicity, and hopefully correctness.
16705          (Fixes bug #1322, which was a segfault when
16706           on some insertions with the properties around
16707           the insertion set up just wrong.)
16708
16709         * gtk/gtktext.c (gtk_text_adjustment): When we receive
16710          a "changed" signal, clamp the new value to the adjustment
16711          bounds to avoid segfaulting if someone tries to change
16712          the adjustment to a bogus value. (Bug #1795)
16713
16714 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
16715
16716         * gtk/gtkmain.c: Ignore unexpected destroy notifies
16717         for children, for toplevel windows handle them
16718         like delete_event.
16719
16720         * gtk/gtkplug.c: Add an unrealize handler so that
16721         we unref plug->socket_window when we are done
16722         with it.
16723
16724 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
16725
16726         * gtk/gtktext.c (clear_area): Fix stupid signedness
16727          problem that was causing background to sometimes
16728          be misaligned.
16729
16730 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
16731
16732         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
16733         
16734         * gtk/gtkmenu.c (gtk_menu_position): Make
16735          sure we never position menus with negative x, y,
16736          since gtk_widget_set_uposition() can't handle that.
16737
16738         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
16739          Modify the positioning code a bit so that we always
16740          put the top-left corner onscreen. (This is for
16741          UI reasons, gtk_menu_position() now takes care of
16742          gtk_widet_set_uposition() brokeness.)
16743
16744 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
16745
16746         * gtk/Makefile.am: fixed up things for -jx, x > 1.
16747
16748 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
16749
16750         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
16751           RC style that is passed in. The lack of the ref
16752           before was a bug. If people worked around this
16753           bug, this will introduce a slight memory leak
16754           in their code. The code should typically look like:
16755
16756             rc_style = gtk_rc_style_new ();
16757             [...]
16758             gtk_widget_modify_style (widget, rc_style);
16759             gtk_rc_style_unref (rc_style);
16760
16761         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
16762           the style if it was already set.
16763
16764         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
16765           style if it was set before.
16766
16767 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16768
16769         * gtk/testgtk.c (main): Add a check to see if we
16770           are being run from the correct directory and
16771           to quit nicely if we are not.
16772
16773         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
16774           static.
16775
16776 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
16777
16778         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
16779
16780         * gtk/gtkwindow.c:
16781         queue resizes unconditionally (gtk_widget_queue_resize will figure
16782         what to do if the window is not realized).
16783         (gtk_window_move_resize): only recenter the window
16784         for GTK_WIN_POS_CENTER_ALWAYS.
16785         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
16786         the same way as GTK_WIN_POS_CENTER.
16787
16788 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
16789
16790         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
16791         with (!(info->last_flags & GDK_HINT_POS)) instead of
16792         (!info->last_flags & GDK_HINT_POS).
16793
16794         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
16795         new_height unconditionally, because we use these values even if
16796         !default_size_changed && !hints_changed.
16797         comented the (default_size_changed || hints_changed) case with
16798         respect to resize rejects from the window manager.
16799
16800         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
16801         in the zvt condition hack, since this includes the window hints, set
16802         the hints after the handling_resize case.
16803
16804         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
16805         window is initially shown with to the geometry.
16806
16807 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
16808
16809         * gtk/gtkwindow.c (gtk_window_move_resize):
16810         s/size_changed/default_size_changed/g so i know what's
16811         really going on (frying brain on smaller flame now).
16812
16813 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
16814
16815         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
16816         we have size_changed upon handling_resize. this is a gross
16817         workaround for the broken zvt widget and should be removed in
16818         1.3 again (search for FIXME).
16819         Owen provided an accurate comment for this:
16820
16821         /* We could be here for two reasons
16822          *  1) We coincidentally got a resize while handling
16823          *     another resize.
16824          *  2) Our computation of size_changed was completely
16825          *     screwed up, probably because one of our children
16826          *     is broken. It's probably a zvt widget.
16827          *
16828          * For 1), we could just go ahead and ask for the
16829          * new size right now, but doing that for 2)
16830          * might well be fighting the user (and can even
16831          * trigger a loop). Since we really don't want to
16832          * do that, we requeue a resize in hopes that
16833          * by the time it gets handled, the child has seen
16834          * the light and is willing to go along with the
16835          * new size. (this happens for the zvt widget, since
16836          * the size_allocate() above will have stored the
16837          * requisition corresponding to the new size in the
16838          * zvt widget)
16839          *
16840          * This doesn't buy us anything for 1), but it shouldn't
16841          * hurt us too badly, since it is what would have
16842          * happened if we had gotten the configure event before
16843          * the new size had been set.
16844          */
16845
16846 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
16847
16848         * gtk/gtkrc.c: deal properly with the fact that RC
16849           style lists may include rc styles more than once.
16850
16851         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
16852           unused static function.
16853
16854         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
16855           stack of directories of RC files currently being
16856           parsed and implicitely add them to pixmap path.
16857           
16858           This fixes a bug where the directory would get
16859           appended then overwritten by pixmap_path declarations.
16860
16861           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
16862
16863         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
16864           theme's exit function. (Patch from Peter Wainwright,
16865           bug #1454)
16866
16867         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
16868           Add a destroy() handler to take care of removing
16869           group for menu item. (Fixes bug #1197)
16870
16871         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
16872           in warning message.
16873
16874 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
16875
16876         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
16877         roundtrip to figure window's width and height, since we know that
16878         anyways from widget->allocation.
16879
16880 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
16881
16882         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
16883           the hints after we request the new size.
16884
16885 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
16886
16887         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
16888           GTK_WIDGET_REALIZED() assertion - we can compute the
16889           hints before we are realized.
16890
16891         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
16892           hint changing so that we have a value of hints_changed
16893           when we decide whether to constrain the window size.
16894
16895         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
16896
16897         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
16898         change back to G_MAXINT.
16899
16900 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
16901
16902         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
16903         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
16904         contain uncluttered values.
16905         (gtk_window_compute_hints): simply assert that window is realized
16906         and that geometry_info is valid, since we rely on this anyways.
16907         (gtk_window_constrain_size): major cleanups to the code.
16908         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
16909         for the base size, instead of the minimums. use 32767 as max width
16910         and height (like in gtkwindow.c) instead of G_MAXINT.
16911
16912 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
16913
16914         * cleaned up the GtkContainer.need_resize flag handling mess, we
16915         only need to force resize requests when we were prematurely
16916         realized, or our widget tree was modified when we were temporarily
16917         hidden. handling these cases directly upon showing the window (i.e.
16918         while the GdkWindow is still unmapped) avoids the need to wait for
16919         a configure event response and therefore makes the GUI more snappier
16920         and avoids blank windows during the roundtrip.
16921
16922         * gtk/gtkwidget.c:
16923         (gtk_widget_hide): 
16924         (gtk_widget_show): don't queue resizes on toplevels, they know how
16925         to deal with matters.
16926
16927         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
16928         flag directly for not visible resize containers and spare us unecessary
16929         signal emissions.
16930
16931         * gtk/gtkwindow.c:
16932         (gtk_window_realize): if we need to enforce premature size allocation,
16933         queue a container resize so we are correctly resized later on.
16934         (gtk_window_init):
16935         (gtk_window_size_request):
16936         don't freak around with the ->need_resize flag,
16937         gtk_container_queue_resize() will care about that.
16938         (gtk_window_show):
16939         handle initial resizing issues here, we can handle matters better in
16940         this place, especially since we know that our GdkWindow is still
16941         unmapped.
16942         (gtk_window_move_resize):
16943         don't care about ->need_resize at all.
16944         handle size changes properly that occoured while we waited for a
16945         configure event.
16946
16947 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
16948
16949         * gtk/gtkwidget.c (gtk_widget_set_uposition):
16950         * gtk/gtkwindow.[hc] (gtk_window_reposition):
16951         Move the hint setting code from gtk_widget_set_uposition
16952         to here; set the hints so that we respect any previously
16953         set geometry hints.
16954
16955         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
16956         change the window hints here or move the window here,
16957         let that happen in gtk_window_move_resize().
16958
16959 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
16960
16961         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
16962         to already queued resizes (and therefore redraws) on a widget, check
16963         its anchestry as well.
16964
16965         * gtk/gtkcontainer.c:
16966         (gtk_container_queue_resize): clear resize widgets for resize
16967         containers before aborting prematurely. this is especially important
16968         for toplevels which may need imemdiate processing or their resize
16969         handler to be queued.
16970         (gtk_container_dequeue_resize_handler): added new internal function for
16971         gtkwindow.c.
16972
16973         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
16974         configure event, take possible changes in window position into account
16975         as well.
16976         if we request a new window size, queue up a resize handler that will
16977         last until the configure event response arrives.
16978         combined the ->need_resize case (initial show) with the general size
16979         (hints) changed case and added even more comments.
16980         if !auto_shrink, only revert to the old allocation if the new size
16981         is smaller than the current allocation.
16982
16983 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
16984
16985         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
16986                            gtk_window_set_geometry_hints
16987                            gtk_window_set_default_size):
16988         When hints are set, queue a resize so that the hints will
16989         be eventually reset on the toplevel.
16990
16991         * gtk/gtkwindow.c (gtk_window_show): Use
16992         gtk_window_compute_default_size(). Clear the need_resize flag
16993         on the initail map so that we don't unnecessarily trigger the
16994         resize code.
16995
16996         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
16997         into separate functions. Compare the hints we are setting
16998         with what we set last time so that we can accurately
16999         tell when we need to reset the hints.
17000
17001         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
17002         function to figure out the size from requisition
17003         and default_size.
17004
17005         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
17006         from fvwm to constrain a size to the geometry hints.
17007
17008         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
17009         to compare two sets of geometry hints.
17010
17011         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
17012         from gtk_window_set_hints(), just compute the hints,
17013         don't set them.
17014
17015         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
17016         code from gtk_window_move_resize() to separate function,
17017         rationalize a bit.
17018
17019 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
17020
17021         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
17022         structure into a new private structure.
17023
17024         * gtkrc.c: Split GtkRcStyle into public/private.
17025         In the private part, add a list of pointers to the
17026         RcStyle lists this RcStyle participates in.
17027
17028         * gtkrc.c: When a RcStyle is free, remove all
17029         lists referencing it from the 
17030         realized_style_ht hash, and free those lists.
17031         
17032         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
17033         gtk_rc_init(), since that adds the default styles
17034         to the list of parsed RC files again.
17035
17036         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
17037         
17038 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
17039
17040         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
17041         checks that ensure that a widget's allocation is at least 1 in width
17042         and height. (GNOME note: this doesn't affect old panel code anymore,
17043         because GtkSocket will request width and height of at least 1 since
17044         Fri Jul 23).
17045
17046         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
17047         allocated yet (happens if the user realizes the window prematurely),
17048         size request and allocate it.
17049         (gtk_window_size_allocate): guard against guint underflows.
17050
17051 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
17052
17053         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
17054         in gtk_built_sources, so gtk.defs gets built prior to all other
17055         sources.
17056
17057 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17058
17059         * gtk/Makefile.am:
17060         invoke indent on gtkmarshal.*. 
17061         rewrote source generation rules, use COPYING as oldest source tag for
17062         a piggyback rule to generate all sources from (don't touch it ;).
17063         major cleanups, strip spaces on build rules for GNU Make.
17064
17065         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
17066         source and target files from commandline arguments. don't invoke indent.
17067
17068 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
17069
17070         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
17071         notebook after switch to avoid drawing problems.
17072         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
17073         
17074         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
17075         show them instead. 
17076         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
17077
17078 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
17079
17080         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
17081         notebook after switch to avoid drawing problems.
17082         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
17083         
17084         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
17085         show them instead. 
17086         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
17087
17088 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
17089
17090         * gtk/gtkwindow.c:
17091         we use window->need_resize from configure_event now, to indicate that
17092         the gtkwindow should keep its allocation (e.g. because the user resized
17093         the window through window manager handles). resize_count is now reliably
17094         used to figure whether we got the allocation we requested from the
17095         window manager.
17096         configure events get queued as resizes now, the real stuff (size
17097         computation and allocation) now only goes on in gtk_window_move_resize().
17098         GtkWindow's requisition now contains its *real* requisition (like all
17099         other widgets), *not* taking usize into account.
17100         geometry_info->last_{width|height} is now updated from set_hints() only
17101         so it always contains the last hints we set for the window manager.
17102         made some event handlers return TRUE instead of FALSE.
17103         the overall code should be much more straight forward now, and the
17104         significant code portions are accompanied by comments now.
17105         (gtk_window_set_hints):
17106         removed requisition argument and made it
17107         fetch the requisition through gtk_widget_get_child_requisition.
17108         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
17109         does that now.
17110         (gtk_window_show):
17111         ensure that the widget is realized before calling 
17112         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
17113         ensure that we got properly size requested and allocated before
17114         realization.
17115         (gtk_window_configure_event):
17116         ignore plain window moves, or reallocate the widget tree through the
17117         resize queue otherwise.
17118         (gtk_window_move_resize):
17119         mostly rewrote this function to figure window manager hints more
17120         reliably, coalesce window moves and resizes to reduce configure events
17121         and do actuall size allocations.
17122
17123 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
17124
17125         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
17126         that have a resize pending, because a redraw is already queued for them.
17127
17128         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
17129         hack to clear resize_widgets.
17130
17131         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
17132         for resize containers prior to size allocation. (this is also a bit
17133         ugly, but avoids side effects for stopped emissions and is thus more
17134         reliable).
17135         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
17136
17137         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
17138         function from gtk_tooltips_expose, as we connect to ::expose_event
17139         *and* ::draw now.
17140
17141 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
17142
17143         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
17144         checks.
17145         (gtk_target_list_unref): Likewise.
17146
17147         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
17148
17149 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
17150
17151         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
17152         guard against division by zero. (Fixes bug #1339)
17153
17154 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
17155
17156         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
17157         Prevent the trivial leak of information of allowing
17158         word motion when the entry is not visible.
17159
17160 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
17161
17162         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
17163         modality to error dialog as well as confirmation dialogs.
17164         (Bug #1803, reported by Rosanna Wing Sze Yuen)
17165
17166 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
17167
17168         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
17169         tree->view_lines.
17170         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
17171
17172         * gtk/Makefile.am (install-data-local): Solaris apparently
17173         has various troubles with ln -f; use rm first instead.
17174         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
17175
17176 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
17177
17178         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
17179         use `cp' followed by `rm' (the `rm' was already there).
17180
17181 July 30, 1999 Elliot Lee <sopwith@redhat.com>
17182         
17183         * configure.in: Fix autoconf warnings about cross compilation by
17184         trying to provide sane defaults for AC_TRY_RUN.
17185         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
17186         put them into $(srcdir) when generated. Also add a dependency of
17187         gtksignal.h on gtkmarshal.h for -j builds. 
17188         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
17189
17190 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
17191
17192         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
17193         GDK_THREADS_{LEAVE,ENTER} pair.
17194         (From Paul Fisher <pnfisher@redhat.com>)
17195
17196 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
17197
17198         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
17199         width and height are always >0 (owen).
17200
17201 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
17202
17203         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
17204         change that assured that a widget's allocated with and height are
17205         always >1, since this breaks *buggy* panel code. unfortunately this
17206         back-breaks the gimp's color selector.
17207
17208         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
17209         allocation is always >0 in width and height, before sending the
17210         configure event; this is a *gross* hack to get the gimp back to work.
17211         
17212         * marked both cases with TODO-1.3
17213
17214 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
17215
17216         * gtk/gtktext.c: Don't display wrap indicators when
17217         text is not editable and word wrap is on.
17218
17219 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
17220
17221         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
17222         option menus here as they are not derived from menu shell, assure that
17223         the option menu has a menu we can add items to.
17224
17225 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
17226
17227         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
17228         width/height to (gint) before calculations and check against < 0 to
17229         avoid guint wraparounds.
17230
17231 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
17232
17233         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
17234         width and height is never zero. sanity check both dimensions against
17235         32767 and issue a warning if the allocation is greater than that.
17236
17237 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
17238
17239         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
17240         to g_main_pending() as well.
17241
17242 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
17243
17244         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
17245         call to g_main_iteration() - since that will regrab
17246         GTK+ lock to process events.
17247
17248 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
17249
17250         * gtk/gtkwindow.c
17251         - Regularize with the rest of GTK+ by making widget->requisition
17252           not reflect the set_usize()
17253         - Always recompute geometry hints, then check if they
17254           changed before sending them to the X server. The
17255           previous checks for changes would fail in a number
17256           of circumstances. 
17257
17258 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
17259
17260         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
17261
17262 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
17263
17264         * gtk/gtkdnd.c:
17265         - Code cleanups
17266         - Instantaneously update on modifier key presses
17267         - Allow cancellation of the drag with Escape.
17268
17269 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
17270
17271         * gtk/testgtk.c (create_handle_box): Set the policy
17272         to auto_shrink - otherwise the appearance is rather
17273         strange when flipping between horizontal and vertical.
17274
17275 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
17276
17277         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
17278         (gtk_window_set_default_size): don't change a value if it's < 0.
17279         queue a resize.
17280
17281 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
17282
17283         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
17284
17285 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
17286
17287         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
17288         add an extra "/" when concating "/" + filename.
17289         (From Matt Grossman <mattg@oz.net>)
17290
17291 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
17292
17293         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
17294         for fg_gc if we set it for drawing pixmap.
17295
17296 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
17297
17298         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
17299         
17300         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
17301         already set, call old engine's destroy function and
17302         unref the old engine.
17303
17304 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
17305
17306         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
17307
17308 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
17309
17310         * gtk/gtkaccelgroup.h: mark certain functions as internal.
17311
17312 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
17313
17314         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
17315         expand behaviour changed.
17316
17317         * gtk/gtklabel.c (gtk_label_set_pattern):
17318         (gtk_label_set_justify):
17319         (gtk_label_set_line_wrap):
17320         don't bother invoking queue_clear, the reallocation does
17321         that for us, always free_words so the upcoming resize will
17322         relayout the label's contents.
17323
17324 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
17325
17326         * applied argument implementation patches from Elena Devdariani
17327         <elena@cogent.ca>.
17328
17329         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
17330         ::space_style, ::relief
17331         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
17332         * gtk/gtkpreview.c: ::expand
17333         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
17334         * gtk/gtknotebook.c: ::homogeneous
17335         * gtk/gtklabel.c: ::wrap
17336         * gtk/gtklist.c: ::selection_mode
17337         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
17338         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
17339         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
17340         * gtk/gtkclist.c: ::sort_type
17341         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
17342         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
17343
17344 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
17345
17346         * gtk/gtkstyle.c: Removed ill-thought-out part of last
17347         comment.
17348
17349 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
17350
17351         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
17352         counting right when we have to attach a new style
17353         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
17354
17355         * gtk/gtkstyle.c: Documented the refcounting
17356         peculularities of gtk_style_attach.
17357
17358 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
17359
17360         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
17361         window types.
17362
17363         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
17364         of GTK_TOPLEVEL for creating the window.
17365
17366 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
17367
17368         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
17369         the last argument (reported by Per Winkvist).
17370         
17371 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
17372
17373         Fixes for invisible XOR lines (Frank Loemker
17374         <floemker@TechFak.Uni-Bielefeld.DE>)
17375         
17376         * gtk/gtkclist.c (gtk_clist_realize): Always use
17377         a non-zero pixel for GDK_XOR.
17378
17379         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
17380         Use GDK_INVERT instead of GDK_XOR.
17381
17382 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
17383
17384         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
17385         signals if h/voffsets differ from adjustment values.
17386         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
17387
17388 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
17389
17390         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
17391         ::selection-done emissions up to the topmost menu shell.
17392
17393 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
17394
17395         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
17396         the user data on the window before destroying it.
17397
17398         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
17399         unrealize handler to take care of destroying 
17400         notebook->panel properly. 
17401         (Bug #1198 - Morten Welinder <terra@diku.dk>)
17402
17403         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
17404         of g_new and g_realloc to stop memory leak. (Actually,
17405         we could just use g_realloc(), but I'm not 100% sure
17406         that is portable).
17407         (Bug #1196 - Morten Welinder <terra@diku.dk>)
17408
17409 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17410
17411         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
17412
17413         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17414         for fontsets.
17415
17416         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
17417         with bin/button confusion.
17418
17419 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
17420
17421         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
17422         and show how preselection of radio items is done.
17423
17424 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
17425
17426         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
17427         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
17428         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
17429         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
17430         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
17431         * gtk/gtktable.c (gtk_table_attach): 
17432         * gtk/gtklist.c (gtk_list_insert_items): 
17433         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
17434         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
17435         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
17436         * gtk/gtkbin.c (gtk_bin_add): 
17437         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
17438         * gtk/gtkfixed.c (gtk_fixed_put): 
17439         * gtk/gtklayout.c (gtk_layout_put):
17440         general fixups to container_add logic. always realize child if
17441         child->parent is realized, only map the child and queue a resize
17442         if child and child->parent are both visible.
17443
17444 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
17445
17446         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
17447         instead of gtk_container_foreach to walk and unrealize children, so
17448         composite children get also unrealized.
17449         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
17450         (gtk_widget_map): assert that the widget is visible (basic constrain).
17451         (gtk_widget_real_map): assert that the widget is realized (basic
17452         constrain).
17453
17454 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
17455
17456         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
17457
17458 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
17459
17460         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
17461         file for iso-8859-2 locales.
17462
17463         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
17464
17465 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
17466
17467         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
17468          (Pointed out by andy@rz.uni-karlsruhe.de and others).
17469          Remove some suspicious and useless lines. 
17470
17471 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
17472
17473         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
17474         width,height = 0, 0 to mean - here to edge of window,
17475         instead of -1, -1, since the former is all we support.
17476
17477 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
17478
17479         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
17480         when removing from quit_functions list.
17481
17482 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
17483
17484         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
17485
17486 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
17487
17488         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
17489          When redrawing characters on non-visible entry, use appropriate
17490          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
17491
17492 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
17493
17494         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
17495         from drag coordinates.
17496         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
17497         use drag_dest_cell.
17498
17499         * gtk/gtktree (drag_dest_cell)
17500         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
17501         (Bug #1129)
17502
17503 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
17504
17505         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
17506         translate_* fields.
17507         (gtk_item_factory_finalize): invoke translate_notify independant from
17508         translate_data.
17509         (gtk_item_factory_set_translate_func): likewise.
17510         (gtk_item_factory_destroy): only remove ifactory pointer from those
17511         widgets that belong to us (stupid me).
17512
17513 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
17514
17515         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
17516         rc_style list when lookup succeeeds.
17517
17518 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
17519
17520         * gtk/gtkctree.c (resync_selection): 
17521         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
17522         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
17523         bug.
17524
17525 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
17526
17527         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
17528         Add some missing GDK_THREADS_ENTER()/LEAVE around
17529         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
17530
17531 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
17532
17533         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
17534         rather than emit_by_name.
17535
17536         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
17537         on the widget across multiple signal emissions.
17538         (gtk_editable_delete_text): same here.
17539         (gtk_editable_class_init): set widget_class->activate_signal after
17540         editable_signals[ACTIVATE] has been created.
17541
17542 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
17543
17544         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
17545         position here prematurely -- we might not have the
17546         right ->min_position and ->max_position yet.
17547
17548 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
17549
17550         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
17551         Add error traps so if the other end of the connection
17552         dies, we survive.
17553
17554         * gtk/gtkselection.c (gtk_selection_notify): Clean
17555         up properly when selection property retrieval fails.
17556         
17557         * gtk/gtkselection.c (gtk_selection_request): Correctly
17558         reject SelectionRequest notifies where the handler
17559         returns no data.
17560
17561 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17562
17563         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
17564         when we've previously highlighted.
17565
17566         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
17567         emit two "drag_leave" signals for Motif drops.
17568
17569         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
17570         back the correct status messages when dropping from
17571         Motif onto a proxy window that is rejecting the
17572         drop.
17573
17574 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
17575
17576         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
17577         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
17578         to compare two argument values. added gtk_arg_to_valueloc() to set a
17579         variable from an arg through its location (pointer).
17580
17581         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
17582         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
17583         as gfloat*, uchars are collected as guchar*, ints are collected as
17584         gint*, etc...
17585
17586 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
17587
17588         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
17589         Include <string.h> instead of <strings.h>.
17590
17591         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
17592         (actually, a lot more duplicate includes occur if
17593          you trace through the sequence of #include's)
17594         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
17595         
17596 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
17597
17598         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
17599         gtk-a-higuti-990322-[0-3]
17600
17601         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
17602         that was causing -DX_LOCALE not to work.
17603
17604         * gtk/gtkrc.c (gtk_rc_init):
17605         X_LOCALE will never have LC_MESSAGES defined
17606
17607 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
17608
17609         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
17610         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
17611
17612         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
17613         left/right as well (gtk-michael-980726-0.patch.gz).
17614
17615         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
17616         for pointer values, use gchar instead of char. fixed uline allocation
17617         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
17618         chunks instead of G_ALLOC_ONLY.
17619         (gtk_label_size_request): always alter requisition as passed and leave
17620         widget->requisition alone.
17621         (gtk_label_set_text): allow NULL strings.
17622         (gtk_label_new): likewise.
17623
17624 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
17625
17626         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
17627
17628 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
17629
17630         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
17631         *and* mapped (i.e. drawable).
17632         (gtk_bin_expose): only send exposes to drawable children.
17633
17634         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
17635         (gtk_box_expose): only send exposes to drawable children.
17636
17637         * gtk/gtkhscale.c (gtk_hscale_draw): 
17638         * gtk/gtkvscale.c (gtk_vscale_draw):
17639         hm, this is an ugly one. we first compute the size of our trough area
17640         here (window relative) and then check intersection with the draw_area
17641         which is parent relative because we're a NO_WINDOW widget, so we need
17642         to offset the trough area by allocation.x and allocation.y before the
17643         check. (this must not be done for the background area though, since
17644         that's already computed parent relative).
17645
17646 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
17647
17648         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
17649         unrealize title buttons.
17650
17651 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
17652
17653         * gtk/gtkclist.c (gtk_clist_column_title_passive)
17654         (gtk_clist_column_title_active): 
17655         only connect/disconnect to GtkWidgetClass::event to block mouse events.
17656
17657         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
17658         zero initialize event, removed superfluous gdk_window_get_pointer call
17659
17660         * gtk/gtklist.c (gtk_list_vertical_timeout)
17661         (gtk_list_horizontal_timeout): removed superfluous
17662         gdk_window_get_pointer call
17663
17664 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
17665
17666         * plugging problems reported by "Bruce Mitchener, Jr."
17667         <bruce@puremagic.com> due to a purify session.
17668
17669         * gtk/gtkstyle.c:
17670         (gtk_style_ref): 
17671         (gtk_style_unref): assert ref_count to be > 0.
17672
17673         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
17674         the requisition.
17675         (gtk_clist_set_shift): likewise.
17676
17677         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
17678         adjustments.
17679
17680         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
17681         event before sending it and set send_event to TRUE (which needs to
17682         be done for *all* synthesized events).
17683         (gtk_list_vertical_timeout): likewise.
17684
17685         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
17686         leaks.
17687
17688         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
17689         to TRUE when synthesizing events.
17690
17691 [ *** end of merges from 1.2 *** ]      
17692         
17693 1999-11-21  Tor Lillqvist  <tml@iki.fi>
17694
17695         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
17696         (or copied from gdkconfig.h.win32 on Win32, sigh).
17697
17698         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
17699
17700         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
17701
17702         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
17703
17704         * gdk/gdkconfig.h.win32: New file.
17705
17706         * gdk/win32/makefile.cygwin: Build just a static archive here.
17707
17708         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
17709         for the DLL from the static archive built above.
17710
17711         * gdk/gdk.def: Moved here from the win32 subdirectory.
17712
17713         * gdk/win32/*: Adapt for the changed private struct organisation.
17714
17715         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
17716
17717 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
17718
17719         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
17720         for wheel mice (buttons 4 and 5).
17721
17722 1999-11-18  Tor Lillqvist  <tml@iki.fi>
17723
17724         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
17725         drawables use just the pixel field in the foreground and
17726         background GdkColor of the GdkGC.
17727
17728         gdk_gc_set_{fore,back}ground() are called in the GIMP with
17729         GdkColors containing uninitialized (red,green,blue) fields, and
17730         just the pixel field filled in, and furthermore in the
17731         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
17732         It thus turns out that we really don't need to have the full
17733         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
17734         it later to have just the pixel values.
17735
17736 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
17737
17738         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
17739
17740 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
17741
17742         * docs/gtkfaq.sgml: threads example from Erik Mouw.
17743         New question on GtkLabel background colors.
17744
17745         * docs/gtk_tut.sgml:
17746           - Correct the example code callback
17747             function definitions.
17748           - Update the gtkdial example code, from Frans van Schaik.
17749           - Update setselection.c to current API.
17750
17751         * examples/Makefile examples/*/*.c: Update to code
17752         listed in tutorial.
17753
17754 1999-11-10  Tor Lillqvist  <tml@iki.fi>
17755
17756         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
17757         subrange table (from the "Developing International Software for
17758         WIndows 95 and Windows NT" book) was missing the Hangul syllable
17759         block... Get the loaded font's charset correctly.
17760
17761         (Note that this, and the other *-win32.c files, still really are
17762         the old ones, the win32 subdirectory is not ready for compilation
17763         yet after the reorg.)
17764
17765 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
17766
17767         * gtk/gtkclist.c: Fix off-by-one bug in parameter
17768         check.
17769
17770 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
17771
17772         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
17773         on results of XQueryDeviceState().
17774
17775 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
17776
17777         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
17778         we need to accesss only ->children. We need an accessor
17779         for the children.
17780
17781         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
17782         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
17783         to get rid of gdkx.h include.
17784         
17785         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
17786         and random references to 'None'.
17787
17788         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
17789         Get rid of unused #include <gdk/gdkx.h>
17790
17791         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
17792         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
17793         gdkconfig.h.
17794
17795 1999-11-08  Tor Lillqvist  <tml@iki.fi>
17796
17797         * gdk/win32/gdkdraw.c
17798         * gdk/win32/gdkfont.c
17799         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
17800         following yesterday's changes. (Unrelated to Owen's reorg.)
17801
17802 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
17803
17804         * gdk/x11/gdkinput-gxi.c: Add missing include,
17805           fix GdkWindowPrivate => GdkDrawablePrivate.
17806
17807         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
17808
17809         * gdk/x11/Makefile.am (xinput_sources): Add missing
17810         backslash to fix building with --with-xinput=none
17811
17812 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
17813
17814         Move all X specific code into the x11/ directory.
17815         Aside from shuffling things around, did the following:
17816
17817        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
17818          gdk_arg_context_* - a simple argument parsing system
17819          in the style of popt.
17820
17821        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
17822          gdk/x11/gdkprivate-x11.h:
17823          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
17824          add ->klass and ->klass_data fields. The klass_data
17825          field points to an auxilliary structure that is
17826          windowing system dependent.
17827
17828        * gdk/gdkfont.c: Make most of the measurement functions
17829          simply wrappers around gdk_text_extents().
17830
17831        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
17832          _gdk_font_strlen() function that hides the weird
17833          behavior in gtk+-1.[02] where a string is interpreted
17834          differently for 8-bit and 16-bit fonts.
17835
17836        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
17837          to store common code for synthesizing double/triple
17838          press events.
17839         
17840        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
17841          Make all the function that modify an existing GC
17842          simply wrappers around gdk_gc_set_values().
17843          
17844        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
17845          for throwing out later.
17846
17847        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
17848          GdkImagePrivate and GdkColormapPrivate to have a
17849          windowing system dependent part (GdkFontPrivateX etc.)
17850          that "derives" from the system-independent part.
17851
17852        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
17853          Got rid of the included-source-files for XInput in
17854          favor of automake conditionals. (Which didn't exist
17855          when XInput support was originally added.)
17856
17857        * gdk/gdkrgb.c: Remove the visual id from the debugging
17858          statements since that is X11 specific; print out
17859          type/depth info instead.
17860          
17861
17862 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
17863
17864         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
17865         loading duplicates of hashed fonts.
17866
17867         * gdk/gdk.c (gdk_keysym_convert_case): rename
17868         gdk_XConvertCase to gdk_keysym_convert_case, allow
17869         results to be NULL in the GTK+ style.
17870
17871         * gdk/gdkcompat.h: Started compatibility header
17872         for renames.
17873
17874 1999-11-07  Tor Lillqvist  <tml@iki.fi>
17875
17876         * gdk/win32/gdkprivate.h: New font private structures, related to
17877         fontsets.
17878
17879         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
17880         gdk_font_list_free(). On X11, will just be wrappers to
17881         XListFonts() and XFreeFontNames(). On Win32, the code previously
17882         in gtkfontsel.c is now here.
17883
17884         New function gdk_font_xlfd_create(). On X11 will get the FONT
17885         property of the font (for GDK_FONT_FONTs), or call
17886         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
17887         builds a XLFD style name from the font information in the LOGFONT
17888         struct(s).
17889
17890         New function gdk_font_xlfd_free(), which correspondingly frees the
17891         string returned by gdk_font_xlfd_create().
17892
17893         Implement fontsets on Win32. Add a function that iterates over a
17894         wide char string and calls a callback function for each substring
17895         of wide chars from the same Unicode subrange (and thus probably
17896         available in the same real font).
17897
17898         Improve the XLFD emulation a bit.
17899
17900         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
17901
17902         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
17903         Beta3, WM_IME_CHAR messages don't seem to contain the composed
17904         multi-byte char as with the Active IMM on Win9x. Oh well, handle
17905         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
17906         ImmGetCompositionStringW() to get the composed Unicode chars.
17907
17908         * gdk/win32/gdkgc.c
17909         * gdk/win32/gdkdraw.c: Changes needed because of the font private
17910         struct changes.
17911
17912         * gdk/win32/gdk.def: Add the new functions.
17913
17914 1999-11-04  Tor Lillqvist  <tml@iki.fi>
17915
17916         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
17917         get the Platform SDK to get <dimm.h>.
17918
17919         * gdk/win32/gdkevents.c: More event handling fixes and
17920         simplification. Never generate motion events with is_hint true. We
17921         used to do that on bogus grounds earlier. Windows sends
17922         WM_MOUSEMOVE messages on button events even if the mouse hasn't
17923         moved, ignore these.
17924
17925         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
17926
17927         * gdk/win32/gdkglobals.c
17928         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
17929         the TrackMouseEvent function, and use it.
17930
17931         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
17932         char before calling WideCharToMultiByte in order to get a string
17933         for the window title.
17934
17935         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
17936
17937         * gdk/win32/gdk.def: Remove obsolete functions.
17938
17939         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
17940         /nodefaultlib and /defaultlib switches.
17941
17942         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
17943
17944 1999-10-31  Tor Lillqvist  <tml@iki.fi>
17945
17946         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
17947         EuroSign).
17948
17949         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
17950         same type as GdkWChar, especially on Win32.
17951
17952         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
17953
17954         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
17955         before passing to Windows GDI for drawing etc. Convert to the
17956         system default codepage before passing to Windows as window
17957         titles.
17958
17959         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
17960         support changing input locale on the fly.
17961
17962         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
17963         on-the-fly changes. Convert incoming characters from the current
17964         codepage to Unicode (and then to a UTF-8 multi-byte string) based
17965         on the current input language. Use keysym<->Unicode mapping tables
17966         and functions borrowed from xterm sources.
17967
17968         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
17969         editions of Win9x, use the ActiveX-based Active IMM (Input Method
17970         Manager) if available. IMEs and the Active IMM are available under
17971         the disguise of Chinese, Korean and Japanese support for IE and
17972         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
17973         support is present in all editions (as long as you install it).
17974
17975         Call DispatchMessage from gdk_events_queue() (and thus
17976         gdk_WindowProc()), instead of duplicating the code in
17977         gdk_WindowProc().
17978
17979         Reworked the grab handling and propagation code, factored out
17980         duplicated code snippets into separate functions. Other cleanups,
17981         too.
17982
17983         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
17984         the <dimm.h> header describing the Active IMM.
17985
17986         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
17987         just do the same as for "single" fonts.
17988
17989         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
17990         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
17991         the new keysyms from gdkkeysyms.h.
17992
17993         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
17994         fontset, so that gtkentry uses wide characters.
17995
17996         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
17997         GTk+'s system directory "gtk+", not "gtk".
17998
17999 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
18000
18001         * docs/gtkfaq.sgml: FAQ update
18002
18003 1999-10-21  Tor Lillqvist  <tml@iki.fi>
18004
18005         * gdk/win32/gdkprivate.h: Add more font private data.
18006
18007         * gdk/win32/gdkfont.c
18008         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
18009         fonts and strings. Now works much better. You still have to
18010         have a correct font selected, though. No fontset emulation yet.
18011
18012 1999-10-19  Tor Lillqvist  <tml@iki.fi>
18013
18014         * gtk/maketypes.awk: Use G_OS_WIN32.
18015
18016         * gtk/gtk.def: Add some missing entry points. Also some non-public
18017         ones, but PyGTK porter claims to need them.
18018
18019         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
18020         built-in type generation.
18021
18022 1999-10-14  Tor Lillqvist  <tml@iki.fi>
18023
18024         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
18025         GDK_FONT_FONT fonts (which is all we have for now, we don't
18026         emulate fontsets). The X11 version uses plain XDrawString in that
18027         case, too. The string passed to gdk_draw_text_wc seems to be in
18028         fact (at least, when used by gtkentry and gtktext) either in a
18029         single-byte charset, or a DBCS. Not Unicode.
18030
18031         This fixes the problem in gtkfontsel, where even if you had
18032         selected a font with a non-Latin1 charset (windows-greek, for
18033         instance), the preview still used Latin-1 glyphs.
18034
18035         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
18036         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
18037         (gdk_font_load): Recognize the demibold etc weights, even if we
18038         don't have the corresponding constants in the headers.
18039         (gdk_font_hash_insert): Use same hash mechanism as in the X11
18040         version. Should save font resources a bit, when we don't have
18041         multiple HFONTs for the same font.
18042
18043         * gdk/win32/gdkprivate.h: Add the names field as in the X11
18044         version.
18045
18046 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
18047
18048         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
18049         X values
18050
18051 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
18052
18053         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
18054         layout support (as mentioned on
18055         http://www.jcinteractive.com/gnome-ui/software/widgets/)
18056
18057 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
18058
18059         * gtk/fnmatch.c
18060         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
18061
18062 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
18063
18064         * configure.in (ALL_LINGUAS): Added Galician (gl)
18065
18066 1999-10-05  Tor Lillqvist  <tml@iki.fi>
18067
18068         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
18069
18070         * gdk/win32/gdkcompat.c: New file, actually provide an
18071         implementation for the deprecated functions. (Just temporarily.)
18072
18073         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
18074
18075         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
18076
18077         * gdk/win32/gdk.def gtk/gtk.def: Updates.
18078
18079 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
18080
18081         * configure.in: Added "uk" to ALL_LINGUAS.
18082         
18083 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
18084
18085         * configure.in: correct checking for BeOS check
18086
18087         * gdk/gdktypes.h
18088         * gtk/fnmatch.c
18089         * gtk/gtkfilesel.c
18090         * gtk/gtkitemfactory.c
18091         * gtk/gtkmain.[ch]
18092         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
18093
18094 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
18095
18096         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
18097         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
18098         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
18099         by Bulgarian). 
18100
18101 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
18102
18103         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
18104         Fix a reference to window_private->destroyed.   
18105
18106         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
18107         (ugly) setting of an internal GdkWindow member to use
18108         a _slightly_ cleaner macro.
18109
18110         * gdk/gdkprivate.h: Split GdkWindowPrivate into
18111         GdkDrawablePrivate and GdkWindowPrivate.
18112         Add extra macros for accessing GDK_DRAWABLE_ components.
18113
18114         * *.[ch]: Massive adjustments for the above, use the
18115         new macros in a lot of places.
18116
18117 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
18118
18119         * gdk/gdktypes.h: Make GdkDrawable the base type,
18120         not GdkWindow.
18121
18122 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
18123
18124         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
18125
18126 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
18127
18128         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
18129
18130 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
18131
18132         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
18133         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
18134
18135         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
18136
18137         * docs/gtk-config.1: Now autogenerated.
18138         * docs/Changes-1.4.txt: started
18139         
18140 1999-10-03  Tor Lillqvist  <tml@iki.fi>
18141
18142         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
18143         to #ifdef also here.
18144
18145         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
18146         Owen did to the X11 backend.
18147
18148         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
18149         ScrollWindowEx when blitting inside a window, it can't be correct
18150         in the general case.
18151
18152         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
18153         WM_GETMINMAXINFO is easier.
18154
18155         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
18156         depth equal to the bitspixel value, not the visual's depth.
18157
18158         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
18159         to 24 even if the bitspixel value is 32.
18160
18161         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
18162         need to check for depth==32 when bpp==32, depth will always be 24.
18163
18164 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
18165
18166         * docs/Changes-1.4.txt: Started
18167         
18168         * gtk/Makefile.am (gdk_headers): Include all the new headers.
18169
18170         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
18171         
18172         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
18173         into C file.
18174         
18175         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
18176         header to gdkinputprivate.h.
18177
18178         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
18179         unused since before 1.2.
18180
18181 1999-09-30  Tor Lillqvist  <tml@iki.fi>
18182
18183         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
18184         expand possible hex escapes in the font family (put there by
18185         logfont_to_xlfd if the font name isn't a legal XLFD font family,
18186         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
18187         On Win32, add hex escapes here, too.
18188
18189 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
18190
18191         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
18192         to #ifdef GDK_WINDOWING_X11.
18193
18194 [ Merges from gtk-1-2 ]
18195
18196 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
18197
18198         * configure.in: fixed "GNU Make" check to pass with new make version
18199         3.77.95.
18200
18201 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
18202
18203         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
18204         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
18205         AM_PATH_GTK() macros don't get confused by the -pre1.
18206
18207 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
18208
18209         * configure.in (REBUILD): Change check for perl5
18210           to check explicitely for v >= 5.002. (5.001
18211           does not work with our scripts.)
18212
18213 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
18214
18215         * configure.in: evaluate $PERL for the perl version check. added
18216         --disable-rebuilds to give the user an option to completely disable
18217         any source autogeneration rules.
18218
18219 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
18220
18221         * configure.in: evaluate $ac_make when checking for GNU Make.
18222
18223 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18224
18225         * docs/Makefile.am: added generation.txt.
18226
18227         * Makefile.am: require automake 1.4, build README from README.in and
18228         INSTALL from INSTALL.in in dist-hook.
18229         
18230         * README.in:
18231         * INSTALL.in: new files to autogenerate README and INSTALL from.
18232
18233         * configure.in: figure whether we have GNU Make
18234
18235         * docs/generation.txt: minor additions/corrections.
18236
18237 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
18238
18239         * docs/gtkfaq.sgml: FAQ Update
18240
18241 July 30, 1999 Elliot Lee <sopwith@redhat.com>
18242         
18243         * configure.in: Fix autoconf warnings about cross compilation by
18244         trying to provide sane defaults for AC_TRY_RUN.
18245
18246 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
18247
18248         * ltconfig
18249         * ltmain.sh: upgrade to libtool 1.3.3
18250
18251 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
18252
18253         * INSTALL: Indicate that the --with-glib= configure
18254         time flag is unsupported.
18255
18256 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
18257
18258         * docs/generation.txt: Added a file that gives
18259         documenation about the autogeneration process for
18260         various autogenerated files.
18261         
18262 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
18263
18264         * configure.in (LIBS): Look for libgmodule in the
18265         right location.
18266
18267 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
18268
18269         * docs/gtk_tut.sgml: Removed references to
18270         code examples in my directory on gtk.org as
18271         they should all be in the tutorial now.
18272
18273         * docs/gtk_tut.sgml: Added sources for dial-test
18274         and scribble-xinput programs that were previously
18275         missing.
18276
18277 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
18278
18279         * TODO: Added entry about menu keyboard navigation, removed
18280         some finished items.
18281
18282 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
18283
18284         * acinclude.m4: Standardize on func_dgettext
18285         not func_gettext, so that the checks for dgettext
18286         actually are paid attention to.
18287
18288 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
18289
18290         * configure.in (LIBS): Add $INTLLIBS into $LIBS
18291         directly, rather than repeating the checks for
18292         gettext.
18293
18294         * INSTALL: Added information about gettext and
18295         NLS support.
18296
18297         * acinclude.m4 (LIBM): Check for dgettext, not
18298         just gettext. This should hopefully fix things wrt
18299         systems with old versions of GNU gettext installed.
18300
18301 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
18302
18303         * configure.in (LIBS): Look for libgmodule in the
18304         right location.
18305
18306 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
18307
18308         * autogen.sh: add --enable-maintainer-mode
18309
18310         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
18311
18312 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
18313
18314         * docs/gtk-config.1.in:
18315           docs/Makefile.am:
18316           configure.in: gtk-config is now generated.
18317
18318         * docs/gtk-config.1: Removed, now generated.
18319
18320 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
18321
18322         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
18323         handle CreateNotify itself, still put out a debuging message for
18324         --gdk-debug=events. made the ReparentNotify debugging message more
18325         verbose.
18326         wrap xcoords translation for ConfigureEvents into an error trap,
18327         a destroy event may already be pending, and in that case, the
18328         actuall coordinate values are not at all critical.
18329
18330 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
18331
18332         * gdk/gdkcc.c: Stop leaking the color_hash all over
18333         the place. Simplify and improve the logic.
18334
18335 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
18336
18337         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
18338         for prototypes and function implementations consistent (reported
18339         by Tomas Ogren).
18340
18341 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
18342
18343         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
18344         send_event set in debugging output.
18345         (gdk_compress_exposures): default initialize the event so we don't
18346         operate on bogus values (namely send_event).
18347
18348 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
18349
18350         * gdk/gdkwindow.c: When we receive an unexpected
18351         destroy notify on one of our windows, don't just
18352         warn about it, also mark our windows as destroyed.
18353
18354 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
18355
18356         * gdk/gdkfont.c (gdk_font_hash_insert): Add
18357           name => font and name => fontset hashes. The 
18358           name => fontset hash is a _big_ win since we
18359           weren't previously caching fontsets at all and loading
18360           fontsets is expensive. The name => font hash
18361           is less of a win, but it does save us from doing
18362           repeated XQueryFont calls on the same font.
18363
18364         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
18365           list so we can remove font/fontset from hash.
18366
18367 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
18368
18369         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
18370           and slightly confusing test. [ XInternAtom (,,TRUE)
18371           will never return None ].
18372
18373 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
18374
18375         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
18376           gdk/gdkwindow.c (gdk_window_set_hints):
18377
18378         Don't omit setting the properties if flags == 0 -
18379         there may be an existing set of properties there
18380         already. (Very old bug. Would it be better to
18381         delete the property instead?)
18382
18383         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
18384           spelling error in comment.
18385
18386 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
18387
18388         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
18389           to avoid stomping over gdk_error_warnings.
18390
18391         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
18392           as (bits_per_pixel + 7) / 8. This gives the same
18393           result as before for multiples of 8, but actually
18394           a "reasonable" value for 1bit or 4bit displays.
18395
18396 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18397
18398         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
18399         GNU Make.
18400
18401 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
18402
18403         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
18404         discarding configure events.
18405
18406 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
18407
18408         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
18409         refcount is greater than zero.
18410
18411         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
18412
18413         * gdk/gdkfont.c (gdk_font_unref): Likewise.
18414
18415         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
18416
18417         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
18418
18419 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
18420
18421         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
18422         that format 32 => sizeof(item) == 4. It really is
18423         sizeof(long).
18424
18425 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
18426
18427         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
18428         core dump at all on X IO errors, only core dump
18429         if --enable-debug for X errors.
18430
18431 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
18432
18433         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
18434         unknown window:" message. disabled ConfigureNotify discarding code,
18435         because it led to events being processed out of order.
18436
18437 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
18438
18439         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
18440
18441         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
18442         we export this function, supress error warnings and don't reset the
18443         error code in the first half of this function.
18444
18445         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
18446         code (instead of just -1) so gdk_error_trap_pop() reveals something
18447         actually informative about the error that happened.
18448
18449         * gdk/*.c:
18450         don't rely on gdk_error_code being -1 if an error occoured, but just
18451         gdk_error_code != 0.
18452
18453 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
18454
18455         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
18456         pointer *before* invoking the filter function, so we at least don't
18457         crash if a filter is removed that is currently executed. window filters
18458         *really* need to be made truely reentrant at some point.
18459
18460 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
18461
18462         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
18463         PropertyNotify debug messages.
18464
18465 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
18466         
18467         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
18468         
18469         * gdk/gdkim.c: Fix cut-and-paste errors for 
18470         x/y and PreeditAttributes/StatusAttributes.
18471
18472 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18473
18474         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
18475         G_MAXINT to 2^16 to alleviate overflow problems in
18476         various window managers.
18477
18478 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
18479
18480         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
18481         for fontsets.
18482
18483 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
18484
18485         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
18486         Initialize size_hints.x and size_hints.y because kwm
18487         brokenly pays attention to them.
18488         (Bug #1181 -  Lars Heete <hel@admin.de>)
18489
18490 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
18491
18492         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
18493         return value of gdk_list_visuals(). 
18494         (Bug #1193 - Morten Welinder <terra@diku.dk>)
18495
18496 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
18497
18498         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
18499         XSetIMValues to (void *) when comparing to NULL, to workaround
18500         the problem of some compilers barfing since older X headers don't
18501         have the prototype for it.
18502
18503 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
18504
18505         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
18506         for pseudocolor where colormap->colors was double
18507         allocated.
18508
18509         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
18510         color value in the hash table with the pixel filled
18511         in so when we do later hash table lookups, the color
18512         value is correct.
18513         
18514 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
18515
18516         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
18517         making the call
18518
18519 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
18520
18521         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
18522         pointed out by Morten Welinder <terra@diku.dk>.
18523
18524 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18525
18526         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18527           default filter from the list
18528
18529 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18530
18531         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18532           default filter from the list
18533
18534 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
18535
18536         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
18537
18538         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
18539         g_strdup_printf instead of calcing the length separately
18540
18541 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
18542
18543         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
18544         that we don't do in many other places. (Fixing duplicate 
18545         #include of config.h)
18546
18547         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
18548         Otherwise, #ifndef XINPUT_NONE check in the latter
18549         doesn't work. (Bug #546)
18550
18551 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
18552
18553         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
18554         "None" case insensitive.
18555
18556 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
18557
18558         * gdk/gdkselection.c: 
18559         Add error traps so if the other end of the connection
18560         dies, we survive.
18561
18562 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18563
18564         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
18565         dest_xid field into two fields - one for the window
18566         to send in messages, one to indicate the last looked
18567         up window for caching purposes. This is needed, so
18568         that Leave messages get the correct window.
18569
18570 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
18571
18572         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
18573         Fix warning created by people mucking around
18574         with the gsource API.
18575
18576         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
18577         Change mapping between GIOCondition and GdkInputCondition
18578         to match the way the Linux kernel does it. This should
18579         fix problems where closed pipes were no longer signalling
18580         GDK_INPUT_READ on systems with a native poll().
18581
18582 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
18583
18584         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
18585         explicitly for the string "None" - it is in the XPM
18586         spec and some servers treat unknown colors in odd ways
18587         (like asking the user!)
18588
18589 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
18590
18591         * gdk/gdkevents.c: made "->" into a "." of previous change so
18592         it compiles
18593
18594 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
18595
18596         * gdk/gdkevents.c (gdk_compress_exposures): Set the
18597         window field of the event structure before calling
18598         user filters.
18599
18600 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
18601
18602         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
18603         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
18604
18605 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
18606
18607         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
18608         intermediate text property - prevents major memory
18609         leak when gdk_use_mb.
18610         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
18611
18612 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
18613
18614         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
18615         gtk-a-higuti-990322-[0-3]
18616
18617         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
18618         sizeof(wchar_t) != sizeof (GdkWChar)
18619
18620         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
18621         that was causing -DX_LOCALE not to work.
18622
18623         * gtk/gtkrc.c (gtk_rc_init):
18624         X_LOCALE will never have LC_MESSAGES defined
18625
18626         * gdk/gdk.c (gdk_init_check):
18627         Remove --xim-preedit and --xim-status from argv properly.
18628
18629         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
18630         that the client window is present on the X server
18631         before we pass it to the input method.
18632
18633 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
18634
18635         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
18636         if --display is specified on the command line, than
18637         the drag window will not be created on that display.
18638         
18639 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
18640
18641         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
18642         lookups with only_if_exists == TRUE were inserting
18643         bogus values into the atom cache.
18644
18645 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
18646
18647         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
18648         then reset it to NULL.
18649
18650         * gdk/gdkcolor.c:
18651         (gdk_colors_free): 
18652         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
18653         key for g_hash_table_remove() in both functions, this prevents us
18654         from accessing possibly uninitialized portions of a GdkColor structure
18655         where we are only interested in its pixel value.
18656
18657 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18658
18659         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18660         font hash table, if we have a GdkFontPrivate entry for this font
18661         already, simply increment its reference count, provided by Olaf Dietsche
18662         <olaf.dietsche+list.gtk@netcologne.de>.
18663
18664 1999-09-21  Tor Lillqvist  <tml@iki.fi>
18665
18666         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
18667         just to be sure.
18668
18669         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
18670         unused variables, leftovers from the X11 version.
18671
18672         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
18673
18674         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
18675         downcase fields on X11.
18676
18677 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
18678         
18679         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
18680         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
18681
18682 1999-09-17  Tor Lillqvist  <tml@iki.fi>
18683
18684         * gdk/win32/gdk.def: Add gdk_threads_mutex.
18685
18686         * gtk/makefile.msc: Correct path to libintl.
18687
18688         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
18689         use of gint vs. int, and gint vs. gboolean in headers and
18690         definitions. Use GtkType for the *_get_type functions. Note that
18691         these changes preserve binary compatibility.
18692
18693         * gdk/gdk.c
18694         * gdk/win32/gdk.c
18695         * gdk/gdk.h: Fix inconsistencies: gint vs int.
18696
18697         * gtk/gtkmain.c
18698         * gtk/gtkclist.c
18699         * gtk/gtkmenufactory.c
18700         * gtk/gtknotebook.c
18701         * gtk/gtkwidget.c: Fix inconsistencies, also gint
18702         vs. gboolean.
18703
18704         * gtk/gtkcolorsel.[ch]
18705         * gtk/gtkcombo.[ch]
18706         * gtk/gtkdrawingarea.[ch]
18707         * gtk/gtkgamma.[ch]
18708         * gtk/gtkhandlebox.[ch]
18709         * gtk/gtkhpaned.[ch]
18710         * gtk/gtkhruler.[ch]
18711         * gtk/gtkplug.[ch]
18712         * gtk/gtkpreview.[ch]
18713         * gtk/gtkruler.[ch]
18714         * gtk/gtksocket.[ch]
18715         * gtk/gtkstatusbar.[ch]
18716         * gtk/gtktoolbar.[ch]
18717         * gtk/gtkvbbox.[ch]
18718         * gtk/gtkvpaned.[ch]
18719         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
18720         functions.
18721
18722         * gtk/gtkgamma.h: Fix bug, missing () in call of
18723         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
18724
18725 1999-09-14  Tor Lillqvist  <tml@iki.fi>
18726
18727         * gdk/gdkcolor.c (gdk_colormap_new)
18728         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
18729         colormap->colors was allocated twice.
18730
18731         * gdk/win32/gdk.c: Remove some unused stuff.
18732
18733         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
18734         colormap.
18735
18736         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
18737         * gtk/gtklabel.h (gtk_label_get_type)
18738         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
18739         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
18740         in a couple of places, not guint.
18741
18742 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
18743
18744         * configure.in,po/et.po: added Estonian language file
18745
18746 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
18747
18748         * configure.in,po/da.po: added Danish file
18749
18750 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
18751
18752         * docs/gtkfaq.sgml: Minor FAQ Update
18753
18754 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
18755
18756         * docs/gtkfaq.sgml: FAQ update
18757
18758 1999-08-27  Tor Lillqvist  <tml@iki.fi>
18759
18760         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
18761         way to get window contents continually refreshed while resizing. I
18762         didn't like the effects myself, so it's not on by default.
18763
18764         * gdk/win32/gdkprivate.h: New flag variable
18765         gdk_event_func_from_window_proc, FALSE by default.
18766
18767         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
18768         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
18769         are passed --gdk-event-func-from-window-proc.
18770
18771         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
18772         and we have am event_func, call it instead of enqueing the event.
18773
18774 1999-08-23  Tor Lillqvist  <tml@iki.fi>
18775
18776         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
18777         Kelley: Set expose_count in GdkEventExposes correctly.
18778
18779         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
18780         MULTIPLE_WINDOW_CLASSES).
18781
18782         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
18783         for bug in NT, apparently NT *does* draw the end pixel, too, in
18784         LineTo with a one-pixel pen, so we don't have to do it ourselves.
18785
18786 1999-08-21  Tor Lillqvist  <tml@iki.fi>
18787
18788         Improvements by Hans Breuer: 
18789
18790         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
18791
18792         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
18793         CS_?REDRAW flags as they cause lots of (late) redraws when "show
18794         window contents while dragging" is turned on. Allocate at least
18795         one unique class for every GdkWindowType. If support for single
18796         window-specific icons is ever needed (eg. Dialog specific), every
18797         such window should get its own class.
18798
18799 1999-08-19  Tor Lillqvist  <tml@iki.fi>
18800
18801         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
18802         error that caused crashes.
18803
18804 1999-08-17  Tor Lillqvist  <tml@iki.fi>
18805
18806         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
18807         window, use ScrollWindowEx, and call UpdateWindow. This prevents
18808         bugs when for instance part of the window was outside the
18809         display. Thanks to Philippe Colantoni for finding and fixing this.
18810
18811 1999-08-16  Tor Lillqvist  <tml@iki.fi>
18812
18813         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
18814         endpoint calculations which were totally wrong. (A little RTFMing
18815         helps a lot ;-)
18816
18817         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
18818         from a separate directory, not from gettext, because of licensing
18819         issues (we want to use the LGPL version).
18820
18821         * README.win32: Mention the intl from glibc vs from gettext issue.
18822
18823 1999-08-13  Tor Lillqvist  <tml@iki.fi>
18824
18825         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
18826         in the key event handling: Now AltGr chars work again. Also,
18827         now Alt-digits are passed up as well as Control-digits.
18828         Pass keypad plus and minus as normal plus and minus.
18829
18830 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
18831
18832         * docs/gtkfaq.sgml: FAQ Update
18833
18834 1999-07-25  Tor Lillqvist  <tml@iki.fi>
18835
18836         * README.win32
18837         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
18838         the Wintab SDK.
18839
18840         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
18841         OK, but getting closer. Guard against bogus tilt data from Wacom
18842         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
18843         enable easier building without Wintab.
18844
18845         * gdk/win32/gdkinput.h
18846         * gdk/win32/gdkevents.c 
18847         * gdk/win32/gdkwindow.c: Minor changes related related to above.
18848         
18849         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
18850         code. As we have just one visual on Win32, no sense to have it in a
18851         table, and no need for the hash table.
18852
18853         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
18854         better on white background.
18855
18856 1999-07-21  Tor Lillqvist  <tml@iki.fi>
18857
18858         * README.win32: Update gcc build instructions. Mention gettext is
18859         GPL.
18860
18861         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
18862         supported cursor size with GetSystemMetrics.
18863
18864         * gdk/win32/gdkfont.c
18865         * gtk/gtkfontsel.c: Guard against some font weight and charset
18866         symbols being undefined (in mingw32 headers).
18867
18868         * gdk/win32/makefile.cygwin
18869         * gtk/makefile.cygwin
18870         * gtk/gtkthemes.c: No longer need to have differently named
18871         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
18872
18873 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
18874
18875         * docs/gtkfaq.sgml: Long awaited FAQ update.
18876
18877 1999-07-15  Tor Lillqvist  <tml@iki.fi>
18878
18879         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
18880         it. Obscure bit manipulation needed.
18881
18882         * gdk/win32/gdkevents.c: Logging.
18883         
18884         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
18885         style (file name include compiler name) for theme engines.
18886
18887 1999-07-13  Tor Lillqvist  <tml@iki.fi>
18888
18889         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
18890
18891         * gdk/win32/gdkevents.c: Fix long-standing bug in key
18892         events. The key.string wasn't zero-terminated, still we strdup'ed
18893         it in gdk_event_copy(). Synthesize crossing events for button
18894         events before possible propagation.
18895
18896         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
18897
18898         * gdk/win32/makefile.cygwin
18899         * gtk/makefile.cygwin: Use new DLL naming style for the
18900         GCC-compiled ones.
18901
18902         * gdk/win32/makefile.msc
18903         * gtk/makefile.msc: Cosmetics mostly.
18904
18905         * gtk/gtk.def: Add missing entry points.
18906
18907         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
18908
18909 1999-07-09  Tor Lillqvist  <tml@iki.fi>
18910
18911         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
18912         or height is zero. Don't print a warning if Pie or Arc fails, they
18913         always fail (?) for very narrow ellipses.
18914
18915         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
18916         the part or the destination window corresponding to source area
18917         outside of the source drawable's boundary.
18918
18919         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
18920         anything if less than two points.
18921
18922         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
18923         return NULL. Gtk cut-and-paste inside a single program works
18924         better this way. (It always gets the clipboard contents from
18925         Windows, not from its own copy, which is cleared anyway. I can't
18926         say I fully understand what happens... Emulating the X selection
18927         and property stuff is a bit of a mess.)
18928
18929         * gdk/win32/gdkevents.c
18930         * gdk/win32/gdkproperty.c: A bit more verbose logging.
18931
18932         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
18933         that never got deleted). Revamp gdk_region_shrink.
18934
18935         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
18936         after use.
18937
18938         * gtk/gtk.def: Add some missing entry points.
18939
18940         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
18941         component.
18942
18943 1999-07-04  Tor Lillqvist  <tml@iki.fi>
18944
18945         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
18946         Control-digits specially.
18947
18948 1999-07-03  Tor Lillqvist  <tml@iki.fi>
18949
18950         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
18951
18952 1999-06-28  Tor Lillqvist  <tml@iki.fi>
18953
18954         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
18955         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
18956         finding this.)
18957
18958 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
18959
18960         * gtk+.spec.in: Corrected some typos in files section.
18961         
18962 1999-06-15  Tor Lillqvist  <tml@iki.fi>
18963
18964         * README.win32: Mention using GNU gettext.
18965         * config.h.win32: Enable NLS stuff.
18966         * gtk/makefile.msc: Use GNU gettext.
18967         * gdk/win32/gdkdnd.c: Minor header reorg.
18968         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
18969         cosmetics.
18970         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
18971         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
18972
18973 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
18974
18975         * acinclude.m4
18976         * config.guess
18977         * config.status
18978         * ltconfig
18979         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
18980
18981 1999-05-30  Tor Lillqvist  <tml@iki.fi>
18982
18983         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
18984         SafeAdjustWindowRectEx. Don't override all calls to
18985         AdjustWindowRectEx by it, but use it only in two places: When
18986         creating a new top-level window and when moving a top-level
18987         window.
18988
18989         Use screen coordinate rectangle, not client rectangle, in
18990         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
18991         when we try to place a window so that the decoration (mainly,
18992         title bar) isn't visible.
18993
18994         These changes fix the bug that showed up for instance as the
18995         GIMP's saved top-level windows moving right and down (by an amount
18996         equal to the window decoration) for each session. This bug showed
18997         up also in testgtk's "Saved Position".
18998
18999         gdk_window_resize also redone a bit.
19000
19001 1999-05-25  Tor Lillqvist  <tml@iki.fi>
19002
19003         * gtk/testgtkrc: Add (commented out) Windows-style theme
19004         include line.
19005
19006         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
19007
19008 1999-05-18  Tor Lillqvist  <tml@iki.fi>
19009
19010         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
19011         gdkx.h to a gdk subdirectory, so that applications can include
19012         these with <gdk/*.h> without trouble.
19013
19014         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
19015         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
19016         have their bitmap destroyed.
19017
19018         * gdk/win32/gdk.def: Add gdk_root_parent.
19019
19020 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
19021
19022         * configure.in
19023           gtk-config.in
19024           ltconfig
19025           ltmain.sh     
19026           gtk/Makefile.am: changes to compile nicely (with xlib) 
19027           on BeOS
19028
19029 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
19030
19031         * acinclude.m4
19032         * config.guess
19033         * config.sub
19034         * ltconfig
19035         * ltmain.sh: upgrade to libtool 1.3
19036
19037 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
19038
19039         * gtk/gtkclist.c:
19040         * gtk/gtkctree.c: merges from gtk-1-2
19041
19042 1999-04-25  Tor Lillqvist  <tml@iki.fi>
19043
19044         Support added for building using a GNU toolchain on Win32,
19045         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
19046
19047         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
19048         * config.h.win32: Changes for gcc.
19049         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
19050         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
19051         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
19052         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
19053         Protect shl stuff unavaiilable with mingw32 headers.
19054         * gdk/win32/gdkevents.c: Fix typo.
19055         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
19056         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
19057         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
19058         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
19059         the mingw32 headers.
19060         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
19061         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
19062         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
19063         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
19064         Test for NATIVE_WIN32, not _MSC_VER.
19065         * gtk/gtkmain.c: No use warning about developer version on Win32,
19066         there aren't any non-developer versions anyhow.
19067         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
19068         * gtk/makefile.msc: Use pthread from another directory. Minor other
19069         changes. 
19070
19071 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
19072
19073         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
19074           default filter from the list
19075
19076 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
19077
19078         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
19079          when gtk_widget_grab_default() is called for a widget that
19080          is not within a GtkWindow.
19081
19082 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
19083
19084         * docs/gtk_tut.sgml, examples/clist.c: use a
19085           scrolled window in the clist example. Minor
19086           tutorial fixes.
19087
19088 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
19089
19090         * docs/gtk_tut.sgml: Style check from David King
19091           <dking@youvegotmail.net>
19092
19093 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
19094
19095         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
19096         compile with unknown value of GDK_WINDOWING
19097
19098 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
19099
19100         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
19101         after the rule is fired.
19102         (install-exec-local): Install gdkconfig.h only if the contents are
19103         different from the currently installed gdkconfig.h.
19104
19105 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
19106
19107         * gdk/Makefile.am (configexecincludedir): Rename from 
19108         configincludedir so that gdkconfig.h will be installed 
19109         as part of `make install-exec'. 
19110
19111 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
19112
19113         * acinclude.m4
19114         * config.guess
19115         * config.sub
19116         * ltconfig
19117         * ltmain.sh: upgrade to libtool 1.2f
19118
19119         * autogen.sh: libtool is not required to autogen gtk+
19120
19121         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
19122         needed)
19123
19124 1999-03-18  Tor Lillqvist  <tml@iki.fi>
19125
19126         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
19127         declaring gdk variables exported/imported from the DLL. New image
19128         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
19129         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
19130         GDK_DRAG_PROTO_OLE2.
19131
19132         * gdk/gdk.h: Merge in Win32 version: Two new functions,
19133         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
19134         declared only for the Win32 version, but could be in the X11
19135         version as well. (Needed for a Xlib-less gdk_imlib.)
19136         gdk_color_hash should have only one parameter. Declare
19137         gdk_threads_mutex with GDKVAR.
19138         
19139         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
19140         just one parameter.
19141
19142         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
19143         per pixel, not bits.
19144
19145         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
19146         Fetch bpp (which means bits-per-pixel here) from another place on
19147         Win32. Accept also depth==32 (which we might get on Win32) with
19148         bpp==32.
19149
19150         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
19151         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
19152         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
19153         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
19154         in the backend-dependent directory, not in the common gdk
19155         directory.
19156
19157         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
19158         headers.
19159
19160 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
19161
19162         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
19163         want to use the Gtk+ devel version (which is true, and yes - even i am
19164         currently working with the 1.2.x branch). so everyone reading this, you
19165         probably want to issue
19166         cvs checkout -r glib-1-2 glib
19167         and
19168         cvs checkout -r gtk-1-2 gtk+
19169         as your next two comands.
19170
19171 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
19172
19173         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
19174         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
19175
19176         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
19177         file. strongly deprecated the GTK_HAVE_* macros, we provide
19178         GTK_CHECK_VERSION() for people that need to check for certain
19179         Gtk+ versions.
19180
19181         * gtk/gtkcompat.h: removed this from CVS.
19182         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
19183         idea right from the start, it just didn't seem like that back then.
19184
19185 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
19186
19187         * merges from gtk-1-2:
19188
19189 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
19190
19191         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
19192         item factory class has been created.
19193         (gtk_item_factory_parse_rc): likewise.
19194
19195         * gtk/gtkmenu.c:
19196         keep proper references for old_active_menu_item.
19197         (gtk_menu_reparent): unset the usize of the new parent,
19198         so the menu can sanely be size requested and we don't get nasty screen
19199         artefacts upon next reparentation.
19200         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
19201         enter notify. only synthesize enter notifies if the pointer really is
19202         inside the event window.
19203         (gtk_menu_popdown): use gtk_menu_shell_deselect().
19204         (gtk_menu_popup): move the background setting stuff into
19205         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
19206
19207         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
19208         gtk_menu_shell_select_item() to select the new item.
19209         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
19210         do the right thing for deselection as well.
19211
19212 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
19213
19214         * gtk/gtkwidget.[hc]:
19215         (gtk_widget_accelerators_locked): return whether a widget's accelerators
19216         are locked.
19217
19218         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
19219         existing accelerators if the widget's accelerators are locked.
19220
19221 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
19222
19223         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
19224
19225         * gtk/gtkmenu.c: truely forward key press and key release events to
19226         the menu widget from the toplevel or tearoff window. we can't simply
19227         connect to that, we need to stop further processing of the events as
19228         well.
19229
19230 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
19231
19232         * gtk/gtkmenu.c:
19233         (gtk_menu_key_press): pass event->keyval, event->state to
19234         gtk_accelerator_valid, instead of event->keyval twice.
19235         refuse to install single letter accelerators for menus that use
19236         single letter shortcuts.
19237
19238         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
19239         gtk_menu_ensure_uline_accel_group().
19240
19241         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
19242         which will always return an uline accel group, made
19243         gtk_menu_get_uline_accel_group() return NULL if the group isn't
19244         yet created.
19245
19246 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
19247
19248         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
19249
19250         * gtk/gtkclist.c (gtk_clist_column_title_passive):
19251         Leave button sensitive, trap  button_press, button_release,
19252         motion_notify, enter_notify and leave_notify events instead.
19253         (gtk_clist_column_title_active): disconnect event handler.
19254         (gtk_clist_drag_data_get): fixed memory leak. Reported by
19255         Guillaume Laurent <glaurent@worldnet.fr>
19256
19257 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
19258
19259         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
19260         width/height mixups.
19261
19262         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
19263         if needed.
19264
19265 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
19266
19267         * gtk/testgtk.c (create_item_factory): unref the item factory after
19268         window's destruction.
19269
19270         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
19271         count on the menu shell around the menu item's activation, since the
19272         signal emission may cause menu shell destruction.
19273
19274         * gtk/gtkitemfactory.c:
19275         the previous code leaked one accel group per menu. we use
19276         gtk_menu_get_uline_accel_group() now to fix that, and with that
19277         also create the underline accelerator group of the menus only if
19278         required (i.e. an underline accelerator has been specified).
19279         (gtk_item_factory_construct):
19280         (gtk_item_factory_create_item): removed code that would create an
19281         extra accel group for the menu (and leak references).
19282         (gtk_item_factory_create_item): adapted the underline accelerator
19283         installation code to properly feature gtk_menu_get_uline_accel_group().
19284
19285         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
19286         menu->accel_group, this may return NULL if the accelerator group
19287         hasn't been set yet.
19288         added gtk_menu_get_uline_accel_group() to retrive the underline
19289         accelerator group of the menu, this will be created on demand
19290         and proper care is taken about its reference count.
19291
19292         * gtk/gtkitemfactory.h:
19293         * gtk/gtkitemfactory.c:
19294         dumped the approach of keeping a widgets by action list on the
19295         factory since the factory<->widget destroy negotiation didn't work
19296         and would be hard to get going at all. instead we keep a list of
19297         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
19298         persistant throughout a program's life time).
19299         also, i removed the static const gchar *key_* variables, and made
19300         them inline strings (they weren't actually used anyways).
19301         (gtk_item_factory_add_item): update ifactory->items.
19302         (gtk_item_factory_destroy): destroy ifactory->items (and remove
19303         the item factory pointer from the remaining ifactory widgets).
19304         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
19305         list to find the widget.
19306         (gtk_item_factory_get_item): new function that works around
19307         gtk_item_factory_get_widget() limitations, this function will only
19308         return menu items, even for <Branch> entries.
19309
19310 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19311
19312         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19313         font hash table, if we have a GdkFontPrivate entry for this font
19314         already, simply increment its reference count, provided by Olaf Dietsche
19315         <olaf.dietsche+list.gtk@netcologne.de>.
19316
19317         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
19318         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
19319
19320 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
19321
19322         * gtk/gtkcontainer.c:
19323         (gtk_container_add_with_args):
19324         (gtk_container_addv):
19325         (gtk_container_add): before adding a child to a conatiner, make sure
19326         it is (default) constructed, this is neccessary because under certain
19327         circumstances the child will get relized and mapped immediatedly, in
19328         which case it has to be constructed already.
19329
19330 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
19331
19332         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
19333         values > 1 as TRUE also.
19334
19335 1999-03-16  Tor Lillqvist  <tml@iki.fi>
19336
19337         * README.win32: New file.
19338                 
19339         * configure.in: Check for lstat.
19340
19341         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
19342         completeness.
19343
19344         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
19345
19346         * gtk/gtk.def: Removed CRs.
19347
19348         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
19349         ..\gdk\win32).
19350
19351         * gdk/win32/makefile.msc: Correct upwards relative paths.
19352         
19353 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
19354
19355         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
19356           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
19357           it was connecting a void function to expose_event and the int
19358           returning function to the draw signal
19359
19360 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
19361
19362         * configure.in:
19363         Use correct path to libgmodule.la when ref'ing uninstalled copy
19364         of glib.  (Already in stable branch, Bug #417)
19365
19366 1999-03-15  Tor Lillqvist  <tml@iki.fi>
19367
19368         Win32 merge and general portability stuff:
19369                 
19370         * acconfig.h,configure.in: Check for <sys/time.h>.
19371
19372         * gdk/win32: New directory (actually, been there for a while).
19373         
19374         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
19375         NATIVE_WIN32, and use these. Always case fold on Win32. No
19376         backslashed escapes on native Win32.
19377
19378         * gtk/{gtk.def,makefile.msc}: New files.
19379
19380         * gtk/Makefile.am: Add above new files.
19381         
19382         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
19383         instead of <strings.h>.
19384
19385         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
19386         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
19387         <unistd.h> appropriately.
19388
19389         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
19390         Use ABS() (from <glib.h>) instead of abs().
19391         
19392         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
19393         of gtk (and thus glib) headers, so that WIN32 will be
19394         defined. With MS C, include <direct.h> for mkdir prototype.
19395
19396         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
19397         some casts, needed by MS C.
19398
19399         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
19400         implemented).
19401
19402         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
19403         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
19404         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
19405
19406         * gtk/gtkmain.h: Mark variables for export/import on Win32.
19407                 
19408         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
19409         the event is not a hint, or its window is not the slider. Needed
19410         on Win32, at least.
19411
19412         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
19413         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
19414         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
19415         a subdirectory of the Windows directory as gtk system
19416         configuration directory.
19417
19418         * gtk/gtkselection.c: No chunks on Win32.
19419
19420         * gtk/gtksocket.c: Not implemented on Win32.
19421
19422         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
19423
19424         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
19425
19426         * gtk/maketypes.awk: Declare variables with a macro that expands to
19427         necessary export/import magic in the case of Win32.
19428                 
19429         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
19430
19431 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
19432
19433         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
19434         since those were meant only for gdki18n.h.  
19435         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
19436         for widechar tests.
19437         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
19438
19439 1999-03-13  Tor Lillqvist  <tml@iki.fi>
19440
19441         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
19442         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
19443
19444         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
19445         installed) to CFLAGS.
19446
19447         * gdk/Makefile.am: Add rules for gdkconfig.h.
19448
19449         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
19450         APIs.
19451
19452         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
19453         gdkx.h anyway when compiling for X11.
19454         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
19455         general): Merge in Win32 version.
19456         
19457         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
19458         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
19459         expansion (if we don't have HAVE_PWD_H), allow for drive
19460         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
19461         included code from Craig Setera's port to Win32 (the one that uses
19462         X11, and the cygwin dll), even if it probably will be abandoned.
19463
19464         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
19465         the user entered one herself.  This way one can complete *.h and
19466         don't get matches on any .help files, for instance.
19467         
19468 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19469
19470         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19471         font hash table, if we have a GdkFontPrivate entry for this font
19472         already, simply increment its reference count, provided by Olaf Dietsche
19473         <olaf.dietsche+list.gtk@netcologne.de>.
19474
19475         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
19476         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
19477
19478 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
19479
19480         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
19481         the number of calls to gdk_draw_point() (and thus to X) by
19482         clipping the points by hand.
19483
19484         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
19485         the clip parameter.
19486         (gtk_handle_box_paint): Only paint the handle if the expose area
19487         intersects it.
19488
19489 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
19490
19491         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
19492
19493 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
19494
19495         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
19496         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
19497
19498 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
19499
19500         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
19501          textmode (O_TEXT) for OS/2 version.
19502
19503 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
19504
19505         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
19506         GtkSpinButton, "input" and "output", to make the output more flexible.
19507         The user has to provide a mapping between adjustment->value and the
19508         output string (and vice versa, if the spin button is editable). 
19509         See testgtk for examples.
19510
19511 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
19512
19513         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
19514         new one.
19515         
19516         * configure.in: set gtk+ version to 1.3.0.