]> Pileus Git - ~andy/gtk/blob - ChangeLog
Shift the array correctly. Fixes #134055, patch by Tosten Schoenfeld
[~andy/gtk] / ChangeLog
1 2004-02-11  Federico Mena Quintero  <federico@ximian.com>
2
3         * gtk/gtkicontheme.c (gtk_icon_theme_prepend_search_path): Shift
4         the array correctly.  Fixes #134055, patch by Tosten Schoenfeld
5         <kaffeetisch@gmx.de>.
6
7 Wed Feb 11 02:23:39 2004  Matthias Clasen  <maclas@gmx.de>
8
9         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child): Handle
10         focus [hv]adjustment correctly when the focus is located deeper
11         down in the hierarchy.  (#133489)
12
13 Wed Feb 11 02:06:38 2004  Matthias Clasen  <maclas@gmx.de>
14
15         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Remove 
16         arbitrary low upper limits on the xpad, ypad, width and height
17         properties.  (#129696, John Ellis)
18
19 Wed Feb 11 01:24:20 2004  Matthias Clasen  <maclas@gmx.de>
20
21         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear_attributes): 
22         Ugh. Don't try to free ints, even if they're stored in pointers.
23         (#133997, Morten Welinder)
24
25 2004-02-10  Federico Mena Quintero  <federico@ximian.com>
26
27         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
28         Free the filters.  Fixes #133547, patch by Morten Welinder
29         <mortenw@gnome.org>.
30
31 Tue Feb 10 12:02:14 2004  Owen Taylor  <otaylor@redhat.com>
32
33         * gdk/x11/xsettings-client.c (read_settings): Avoid
34         triggering an X error when the client->manager_window
35         is None...makes logs look cleaner.
36
37         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Handle
38         GDK_NONE to mean AnyPropertyType as documented. (Reported 
39         by Yu Shao)
40
41         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window,
42         gdk_x11_screen_get_window_manager_name): Fix error trap
43         we've been leaking since 2002... (#129538)
44
45 2004-02-10  Federico Mena Quintero  <federico@ximian.com>
46
47         Fixes the entry-related part of #133852.
48
49         * gtk/gtkfilechooserdefault.c (update_chooser_entry): Don't change
50         the file part of the entry if the selected item is a folder.
51
52 2004-02-10  Federico Mena Quintero  <federico@ximian.com>
53
54         Fixes #133995, patch by Morten Welinder <mortenw@gnome.org>.
55
56         * tests/prop-editor.c (create_prop_editor): Free the title.
57         (object_changed): Free the children list.
58
59 Tue Feb 10 01:58:55 2004  Matthias Clasen  <maclas@gmx.de>
60
61         * gtk/gtkcontainer.c (gtk_container_set_focus_hadjustment): 
62         * gtk/gtkcontainer.c (gtk_container_set_focus_vadjustment): Document 
63         these functions.
64
65 2004-02-09  Federico Mena Quintero  <federico@ximian.com>
66
67         * gtk/gtkfilechooserdefault.c (set_list_model): Request
68         GTK_FILE_INFO_ALL from the file system model, so that arbitrary
69         filtering will work.  Perhaps we should have a way of aggregating
70         info types to the model as filters get installed.
71
72 Mon Feb  9 22:22:19 2004  Matthias Clasen  <maclas@gmx.de>
73
74         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear_attributes): 
75         Ugh. Don't try to free ints, even if they're stored in pointers.
76
77 2004-02-09  Federico Mena Quintero  <federico@ximian.com>
78
79         Fix #132256.
80
81         * gtk/gtkfilechooserdefault.c
82         (gtk_file_chooser_default_get_paths): Read the contents of the
83         filename entry in both OPEN and SAVE mode.  In multiple-selection
84         mode, add this to the selection from the file/folder list.
85         (struct get_paths_closure): Add a path_from_entry field.
86         (get_paths_foreach): Only add the iterated path if it is not the
87         same as the path from the entry.
88
89 2004-02-09  Federico Mena Quintero  <federico@ximian.com>
90
91         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_folder): If
92         the folder is already open, add the requested info types to it.
93
94 Sun Feb  8 01:28:02 2004  Manish Singh  <yosh@gimp.org>
95
96         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Add appropriate
97         type casts for the gtk_window_set_screen() call.
98
99 Sun Feb  8 01:44:06 2004  Matthias Clasen  <maclas@gmx.de>
100
101         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Make popups 
102         come up on the same screen as the combo box.  (#133544, 
103         Morten Welinder)
104
105 Fri Feb  6 23:40:24 2004  Jonathan Blandford  <jrb@gnome.org>
106
107         * gtk/gtkfilechooserdefault.c (create_file_list): clean up the
108         packing of the file selector.
109
110 Sat Feb  7 01:21:09 2004  Matthias Clasen  <maclas@gmx.de>
111
112         * gtk/gtktreemodel.c (gtk_tree_model_base_init): Don't use function 
113         calls in array initializers, as some compilers seem to hate this.
114         (#133216, Jonas Jonsson)
115
116 Sat Feb  7 00:06:44 2004  Matthias Clasen  <maclas@gmx.de>
117
118         * gtk/gtkaccelmap.[hc]: Add change notification for GtkAccelMap,
119         by on-demand instantiating a singleton object with a "changed" 
120         signal. 
121
122         * gtk/gtkmarshalers.list (VOID:STRING,UINT,FLAGS): Add marshaller
123         for GtkAccelMap::changed.
124
125 Fri Feb  6 23:08:29 2004  Matthias Clasen  <maclas@gmx.de>
126
127         * gtk/gtktextbtree.c (_gtk_text_btree_check): 
128         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear_attributes): 
129         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear_attributes): 
130         Actually free the lists. Pointed out by Morten Welinder.
131         
132 Fri Feb  6 22:38:54 2004  Matthias Clasen  <maclas@gmx.de>
133
134         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Handle character 
135         positions in UTF-8 strings correctly.  (#133315, Theppitak 
136         Karoonboonyanan)
137
138 2004-02-06  Morten Welinder  <terra@gnome.org>
139
140         * gtk/gtktoolbar.c (show_menu): Cleanup using
141         gtk_menu_attach_to_widget.  Also fixes leak, see #133411.
142
143 2004-02-06  Federico Mena Quintero  <federico@ximian.com>
144
145         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Free the
146         list.  Fixes #133546.
147
148 2004-02-06  Federico Mena Quintero  <federico@ximian.com>
149
150         Fix #132327.
151
152         * gtk/gtkfilesystemunix.c (struct _GtkFileSystemUnix): Add a
153         folder_hash field to keep a list of live folder objects.
154         (gtk_file_system_unix_init): Create the folder_hash.
155         (gtk_file_system_unix_finalize): Destroy the folder_hash.
156         (gtk_file_system_unix_get_folder): Ref and return an existing
157         folder if we have it around, otherwise return a new folder object.
158         (struct _GtkFileFolderUnix): Add a field for the parent file system.
159         (gtk_file_folder_unix_finalize): Remove the folder from the file
160         system's hash table.
161         (gtk_file_system_unix_create_folder):  Emit "files-added" on the
162         newly-created folder's parent.  Fixes #132327.
163
164 Fri Feb  6 00:51:57 2004  Matthias Clasen  <maclas@gmx.de>
165
166         * gtk/gtkstock.c (builtin_items): Change the labels of the 
167         ZOOM_100 and ZOOM_FIT stock items to "_Normal Size" and
168         "Best _Fit", to be HIG compliant.  (#124080, Mariano 
169         Suárez-Alvarez)
170
171 Fri Feb  6 00:45:16 2004  Matthias Clasen  <maclas@gmx.de>
172
173         * gtk/gtkcombobox.c (gtk_combo_box_finalize): Add a finalize 
174         function to plug a few memory leaks.  (#133544, Morten Welinder)
175
176 Fri Feb  6 00:15:38 2004  Matthias Clasen  <maclas@gmx.de>
177
178         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_mnemonic_activate): 
179         Support mnemonic_activate here as well.
180         
181         * gtk/gtkcombobox.c (gtk_combo_box_mnemonic_activate): Focus
182         the button, not the tree_view.
183
184 Thu Feb  5 23:48:19 2004  Matthias Clasen  <maclas@gmx.de>
185
186         * gtk/gtkcombobox.c (gtk_combo_box_mnemonic_activate): Add this
187         function, to make mnemonic_activate work for combo boxes.
188         (#133443, Paolo Borelli)
189
190 Thu Feb  5 22:05:52 2004  Matthias Clasen  <maclas@gmx.de>
191
192         * gtk/gtkfilesystemunix.c (bookmark_list_read): Initialize result
193         to FALSE.  (#133539, Morten Welinder)
194
195 Thu Feb  5 21:36:43 2004  Matthias Clasen  <maclas@gmx.de>
196
197         * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): Fix the logic
198         of the depth one check.  (#133488, Christian Persch)
199
200 Thu Feb  5 01:50:19 2004  Matthias Clasen  <maclas@gmx.de>
201
202         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_paint): Fix
203         the drawing of tearoff menu items which don't come first in their
204         menu.  (#33311)
205
206 Thu Feb  5 00:59:08 2004  Matthias Clasen  <maclas@gmx.de>
207
208         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Use 
209         g_completion_complete_utf8(). (#133313, Theppitak Karoonboonyanan)
210
211 2004-02-04  Federico Mena Quintero  <federico@ximian.com>
212
213         Fix #59707.
214
215         * gtk/gtklabel.c (gtk_label_focus): Removed, so we don't ignore
216         the focus chain.
217         (gtk_label_button_press): Fix prototype.
218         (gtk_label_button_release): Likewise.
219         (gtk_label_motion): Likewise.
220
221         * tests/testgtk.c (create_message_dialog): For the dialog with
222         only GTK_BUTTONS_CLOSE, make GTK_RESPONSE_CLOSE the default.
223
224 2004-02-04  Morten Welinder  <terra@gnome.org>
225
226         * gtk/gtktoolbar.c (show_menu): Show on the right screen.  (Fixes
227         bug 133411, apart from the leak.)
228
229 Tue Feb  3 13:39:27 2004  Manish Singh  <yosh@gimp.org>
230
231         * gtk/gtkadjustment.c (gtk_adjustment_new): pass value in last
232         in g_object_new, since it depends on lower and upper being set.
233
234 2004-02-03  Federico Mena Quintero  <federico@ximian.com>
235
236         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): Make the
237         window not resizable.  Fixes #114032.
238
239 2004-02-03  Federico Mena Quintero  <federico@ximian.com>
240
241         * gtk/gtkmessagedialog.c (gtk_message_dialog_class_init): Add
242         documentation for the use_separator style property.
243
244 2004-02-03  Federico Mena Quintero  <federico@ximian.com>
245
246         Fix #68938.
247
248         * gtk/gtkdialog.c (GtkDialogPrivate): New private structure for
249         GtkDialog; right now it only contains an ignore_separator field.
250         (gtk_dialog_class_init): Register the private structure.
251         (gtk_dialog_init): Initialize the priv->ignore_separator field.
252         (_gtk_dialog_set_ignore_separator): New private function.
253         (gtk_dialog_set_has_separator): Ignore the setting if appropriate.
254
255         * gtk/gtkmessagedialog.c (gtk_message_dialog_class_init): Add a
256         use_separator style property.
257         (gtk_message_dialog_style_set): Change the dialog's separator
258         based on the style property.
259         (gtk_message_dialog_init): Set the dialog box to ignore the
260         separator setting.
261
262 Tue Feb  3 02:35:09 2004  Matthias Clasen  <maclas@gmx.de>
263
264         * gtk/Makefile.am: Build filesystemwin32.c if OS_WIN32 and
265         also dist gtkfilesystemwin32.[hc].
266
267 Tue Feb  3 02:04:44 2004  Matthias Clasen  <maclas@gmx.de>
268
269         * gtk/gtklabel.c (gtk_label_ensure_layout): Right-justify labels
270         in rtl mode.  (#129071, chinen@jp.ibm.com)
271
272 Tue Feb  3 02:01:25 2004  Matthias Clasen  <maclas@gmx.de>
273
274         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current): Exchange the
275         meaning GTK_MENU_DIR_PARENT/CHILD and GTK_MENU_DIR_PREV/NEXT in rtl
276         mode.  (#107528)
277
278 Tue Feb  3 01:38:06 2004  Matthias Clasen  <maclas@gmx.de>
279
280         Clip narrow columns in rtl-oriented tree views (#128089,  
281         chinen@jp.ibm.com):
282         
283         * gtk/gtkstyle.c (gtk_default_draw_option): 
284         * gtk/gtkstyle.c (gtk_default_draw_check): Clip to the 
285         given area.
286
287         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action): 
288         Use the right clip area when calling gtk_cell_renderer_render().
289         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_cell_draw_focus): 
290         Use the right clip area when calling gtk_paint_focus().
291         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render): 
292         Use the right clip area when calling gtk_paint_toggle() or
293         gtk_paint_check().
294         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): 
295         Clip to the expose_area when drawing the background rectangle.
296         
297 Tue Feb  3 00:14:36 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
298
299         * gdk/x11/gdkgeometry-x11.c (queue_item_free, gdk_window_queue):
300         Use a weak reference instead of ref()/unref(). (#60857, reported
301         by Joshua N Pritikin)
302
303         * gdk/gdkimage.c (scratch_image_info_for_depth): Formatting fix.
304
305 Tue Feb  3 00:15:17 2004  Matthias Clasen  <maclas@gmx.de>
306
307         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add 
308         init_hadjust_value and prev_width.
309         * gtk/gtktreeview.c (gtk_tree_view_init): Initialize 
310         them here.
311         * gtk/gtktreeview.c (gtk_tree_view_update_size): ...and here.
312         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): Use them
313         here to properly handle the initial position of rtl-oriented
314         tree views.  (#127581, chinen@jp.ibm.com)
315
316 2004-01-20  Federico Mena Quintero  <federico@ximian.com>
317
318         Fix #130846, reported by R. McFarland <rwmcfa1@neces.com>.
319
320         * gtk/gtktreeview.c (gtk_tree_view_button_press): Return TRUE when
321         we handle an event in the colums, and FALSE at the end if the
322         event is not handled at all.
323
324 Mon Feb  2 23:41:48 2004  Matthias Clasen  <maclas@gmx.de>
325
326         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_changed): 
327         Don't access the level after removing the node, since that may
328         kill the level.  (#132615, Crispin Flowerday)
329
330 2004-02-02  Tor Lillqvist  <tml@iki.fi>
331
332         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): Set the cursor
333         in all cases. If no grab cursor specified, use the grabbing
334         window's cursor. If the grabbing window has no cursor, use the
335         default arrow cursor. (#118025)
336
337 Mon Feb  2 22:05:36 2004  Matthias Clasen  <maclas@gmx.de>
338
339         * gtk/gtkseparatormenuitem.c (gtk_separator_menu_item_init): The
340         latest in menu separation technology.
341
342 Mon Feb  2 19:04:17 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
343
344         * gdk/x11/gdkwindow-x11.c: Assume gravity works. (Anything else
345         we have to take our chances with).
346         
347         (Bug 97510)
348
349 Mon Feb  2 18:45:28 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
350
351         Fix bug 110224.
352
353         * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display):
354         Remove unused variable 'result'
355
356         * gdk/x11/xsettings-client.[ch]: Add new set_grab/ungrab_func() functions.
357
358         * gdk/x11/gdkevents-x11.c (_gdk_x11_events_init_screen): Use them
359         here.
360
361 Mon Feb  2 14:32:32 2004  Pablo Saratxaga  <pablo@mandrakesoft.com>
362
363         * configure.in po/uz*.po: changed default for Uzbek; now just "uz"
364         is in cyrillic and "uz@Latn" for latin; "uz@Cyrl" has been removed
365
366 Sun Feb  1 16:34:07 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
367
368         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Only start
369         sliding when using the new API.
370
371 Sun Feb  1 16:03:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
372
373         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Make sure
374         item_area is positioned correctly. Fix #133070, reported by Jeroen
375         Zwartepoorte.
376
377 Sat Jan 31 23:13:43 2004  Matthias Clasen  <maclas@gmx.de>
378
379         * gtk/gtktextchild.c (gtk_text_child_anchor_finalize): Don't
380         crash when finalizing an unused GtkTextChildAnchor.  (#132260,
381         muppet)
382
383 Sat Jan 31 22:41:57 2004  Matthias Clasen  <maclas@gmx.de>
384
385         * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Correct
386         the documentation for new_order.  (#124790, Tim-Philipp Müller)
387
388 Sat Jan 31 22:38:07 2004  Matthias Clasen  <maclas@gmx.de>
389
390         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width): 
391         Reset use_resized_width when setting fixed_width.  (#108612, 
392         Felipe Heidrich) 
393
394 Sat Jan 31 16:27:44 2004  Matthias Clasen  <maclas@gmx.de>
395
396         * gtk/gtkmain.c (gtk_key_snooper_remove): Don't leak the
397         GtkKeySnooperData.  (#132038, R. McFarland)
398
399 2004-01-30  Federico Mena Quintero  <federico@ximian.com>
400
401         Fixes #132975.
402
403         * gtk/gtkfilesystem.c (gtk_file_system_make_path): Return NULL,
404         not FALSE.
405         (gtk_file_system_volume_render_icon): Likewise.
406
407         * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_make_path):
408         Likewise.
409
410         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Return 0,
411         not FALSE.
412
413         * gtk/gtktoolbar.c (gtk_toolbar_get_drop_index): Return -1, not
414         FALSE.
415
416         * gtk/gtktextiter.c (gtk_text_iter_get_chars_in_line): Return 0,
417         not FALSE.
418         (gtk_text_iter_get_bytes_in_line): Likewise.
419
420         * gdk/x11/gdkcursor-x11.c (gdk_display_get_default_cursor_size):
421         Likewise.
422
423         * gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Return FALSE, not
424         0.
425
426 2004-01-30  Not Zed  <NotZed@Ximian.com>
427
428         Fixes #132929.
429
430         * gtk/gtktreeview.c (cancel_arrow_animation): remove the timeout
431         handler when we clear the timeout id.
432
433 2004-01-30  Federico Mena Quintero  <federico@ximian.com>
434
435         Fix #129872, based on a patch by Jan Arne Petersen
436         <jpetersen@uni-bonn.de>
437
438         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_list_bookmarks):
439         Implement.
440         (gtk_file_system_unix_add_bookmark): Implement.
441         (gtk_file_system_unix_remove_bookmark): Implement.
442
443 2004-01-29  Federico Mena Quintero  <federico@ximian.com>
444
445         Fixes #132693.
446
447         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_parent): Don't
448         use filename_from_path().  Also, check that the filename is
449         absolute.
450         (gtk_file_system_unix_get_folder): Likewise.
451         (gtk_file_system_unix_create_folder): Likewise.
452         (gtk_file_system_unix_make_path): Likewise.
453         (gtk_file_system_unix_parse): Likewise.
454         (gtk_file_folder_unix_get_info): Likewise.
455         (filename_from_path): Removed.
456
457 2004-01-30  Federico Mena Quintero  <federico@ximian.com>
458
459         * gtk/gtkcalendar.c (arrow_action): Remove C++ comment; reported
460         by Damien Carbery <damien.carbery@sun.com>.  Fixes #132956.
461
462 Fri Jan 30 11:37:37 2004  Owen Taylor  <otaylor@redhat.com>
463
464         * gdk/x11/gdkdrawable-x11.c: Revert changes from
465         #113476 and go back to using XftDrawSetClip, because
466         XftDrawSetClipRectangles is buggy in XFree86-4.3.
467
468 Thu Jan 29 18:08:06 2004  Owen Taylor  <otaylor@redhat.com>
469
470         * gtk/gtktextlayout.c (line_display_iter_to_index)
471         * gtk/gtktextlayout.c (line_display_index_to_iter): Only
472         adjust the preedit position for lines that include the
473         preedit string. (#132353, Yao Zhang). How the heck
474         did this work as well as it did?!?!
475
476         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): 
477         Reverse change to change of XNFilterEvents event mask from
478         #110493 -- it's documented and in the Xlib code an
479         unsigned long. 
480         
481         * modules/input/gtkimcontextxim.c (preedit_start_callback): 
482         Return -1 rather than void to indicate no length limit.
483         (#129548)
484
485 Fri Jan 30 00:45:46 2004  Matthias Clasen  <maclas@gmx.de>
486
487         * gtk/gtkadjustment.c: Add properties to GtkAdjustment.
488         (#64601, Murray Cumming)
489
490 Fri Jan 30 00:13:46 2004  Matthias Clasen  <maclas@gmx.de>
491
492         * gtk/gtkcombo.c (gtk_combo_set_popdown_strings): Allow NULL
493         for strings to clear the list.  (#105386, Marco Pesenti Gritti)
494         
495 2004-01-28  Richard Hult  <richard@imendio.com>
496
497         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size):
498         Free font_desc.  Fixes #132805.
499
500 2004-01-29  Federico Mena Quintero  <federico@ximian.com>
501
502         * gtk/gtkiconfactory.c (render_icon_name_pixbuf): Free the GError.
503         Patch provided by Christian Persch <chpe@stud.uni-saarland.de>
504         Fixes #132574.
505
506 Thu Jan 29 11:00:18 2004  Owen Taylor  <otaylor@redhat.com>
507
508         * gtk/gtkselection.c (gtk_selection_default_handler): 
509         nul-terminate the target atoms. (#132656, Christian Persch)
510
511 Thu Jan 29 00:59:03 2004  Matthias Clasen  <maclas@gmx.de>
512
513         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
514         Don't leak path if we bail out early.  (#132505, Christian Persch)
515
516 Thu Jan 29 00:48:47 2004  Matthias Clasen  <maclas@gmx.de>
517
518         * gtk/gtkactiongroup.c (gtk_action_group_add_toggle_actions_full):
519         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): Do
520         reference counting on the user_data that is shared between
521         multiple signal handlers, to avoid calling the destroy notify
522         multiple times.  (#132447, Adam Hooper)
523
524 2004-01-28  Hans Breuer  <hans@breuer.org>
525
526         * gtk/stock-icons/stock_network_(16|24).png : new GTK_STOCK_NETWORK ...
527           gtk/gtkstock.[hc] : ... define ...
528           gtk/gtkiconfactory.c : ... register ...
529           gtk/stock-icons/Makefile.am gtk/stock-icons/makefile.msc : ... compile ...
530         * gtk/gtkfilesystemwin32.c : ... and use. Also adapt to recent 
531         IFace changes.
532
533         * gtk/gtk.def : added a bunch of new exported symbols
534
535         * tests/testfilechooser.c (no_backup_files_filter) : don't crash
536         on filter_info->display_name being NULL
537
538         * tests/testgtk.c : make testgtk --bench=all work again
539
540 Wed Jan 28 21:40:47 2004  Matthias Clasen  <maclas@gmx.de>
541
542         * gtk/gtkentrycompletion.c (gtk_entry_completion_action_data_func):
543         Don't leak string.  (#132482, Christian Persch)
544
545 Tue Jan 27 18:45:47 2004  Manish Singh  <yosh@gimp.org>
546
547         * m4macros/gtk-2.0.m4: quote AC_DEFUN macro names so automake
548         1.8 won't whine at us.
549
550 2004-01-28  Tor Lillqvist  <tml@iki.fi>
551
552         * gdk/win32/gdkevents-win32.c (synthesize_leave_event,
553         synthesize_enter_event): Don' generate enter or leave events if
554         the pointer is grabbed with owner_events off, and the grab event
555         mask doesn't ask for them. (#129242)
556
557         (gdk_event_translate): Ditto for focus change events.
558
559 2004-01-27  Federico Mena Quintero  <federico@ximian.com>
560
561         Fix #132314.
562
563         * gtk/gtkfilesystem.h: Removed the #ifdef-ed out, old icon API.
564
565         * gtk/gtkfilesystem.c: Likewise.
566
567         * gtk/gtkfilesystemunix.c (filename_get_info): Removed the old
568         icon-type code.
569         (gtk_file_system_unix_render_icon): Moved the icon-rendering code
570         from GtkFileInfo to here.
571         (gtk_file_system_unix_volume_render_icon): Implement.
572
573 2004-01-28  Changwoo Ryu  <cwryu@debian.org>
574
575         * modules/input/imhangul-defs.h: 
576         * modules/input/imhangul.c:
577         * modules/input/Makefile.am: Remove broken hangul input module.
578         
579 Tue Jan 27 01:56:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
580
581         * gtk/gtktoolbar.c: Remove obsolete comment.
582
583         * gtk/gtktoolbar.c (DEFAULT_SPACE_SIZE, SPACE_LINE_START, 
584         SPACE_LINE_END): Make separators wider and taller, so they are
585         easier to pick up when editing the toolbar.
586
587         * gtk/gtktoolbar.c (slide_idle_handler): Add a comment, simplify
588         a bit, 
589
590         * gtk/gtktoolbar.c (rect_within): Formatting fix
591
592         * gtk/gtktoolbar.c (gtk_toolbar_set_drop_highlight_item): Make
593         sliding feel more responsive by only restarting sliding when the
594         placeholder actually changes its goal allocation.
595
596 Tue Jan 27 02:00:37 2004  Matthias Clasen  <maclas@gmx.de>
597
598         * gtk/gtktreeitem.c (gtk_tree_item_add_pixmaps): Avoid a 
599         compiler warning.  (#122725, Kjartan Maraas)
600         
601 Tue Jan 27 01:46:54 2004  Matthias Clasen  <maclas@gmx.de>
602
603         Make menus work better on Xinerama (#126150):
604         
605         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Calculate the 
606         monitor_num on the screen of the menu, not of the attach widget.
607
608         * gtk/gtkmenu.c (menu_change_screen): Forget the stored monitor_num. 
609         (gtk_menu_window_size_request): Remember the monitor_num.
610
611 2004-01-26  Federico Mena Quintero  <federico@ximian.com>
612
613         Fix #105497; constify uses of GdkColor.
614
615         * gdk/gdkgc.c (gdk_gc_set_rgb_fg_color): Constify.
616         (gdk_gc_set_rgb_bg_color): Constify.
617         (gdk_gc_set_foreground): Constify.
618
619         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): Constify.
620         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Constify.
621         * gdk/linux-fb/gdkcursor-fb.c (gdk_cursor_new_from_pixmap): Constify.
622
623         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_create_from_data): Constify.
624         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data): Constify.
625         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_create_from_data): Constify.
626
627         * gdk/x11/gdkwindow-x11.c (gdk_window_set_background): Constify.
628         * gdk/win32/gdkwindow-win32.c (gdk_window_set_background): Constify.
629         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_background): Constify.
630
631         * gdk/gdkpango.c (gdk_draw_layout_line_with_colors): Constify.
632         (gdk_draw_layout_with_colors): Constify.
633
634         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf): Constify.
635         (gdk_pixmap_colormap_create_from_xpm): Constify.
636         (gdk_pixmap_create_from_xpm): Constify.
637         (gdk_pixmap_colormap_create_from_xpm_d): Constify.
638         (gdk_pixmap_create_from_xpm_d): Constify.
639
640         * gtk/gtkcellview.c (gtk_cell_view_set_background_color): Constify.
641
642         * gtk/gtkclist.c (gtk_clist_set_foreground): Constify.
643         (gtk_clist_set_background): Constify.
644
645         * gtk/gtkcolorbutton.c (gtk_color_button_new_with_color): Constify.
646         (gtk_color_button_set_color): Constify.
647
648         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_color):
649         Constify and add a check for color != NULL.
650         (gtk_color_selection_get_current_color): Add a check for color != NULL.
651         (gtk_color_selection_set_previous_color): Constify and add a check
652         for color != NULL.
653         (gtk_color_selection_get_previous_color): Add a check for color != NULL.
654
655         * gtk/gtkctree.c (gtk_ctree_node_set_foreground): Constify.
656         (gtk_ctree_node_set_background): Constify.
657
658         * gtk/gtktext.c (gtk_text_insert): Constify.
659         (insert_text_property): Constify.
660         (text_properties_equal): Constify.
661         (new_text_property): Constify.
662
663         * gtk/gtkwidget.c (gtk_widget_modify_color_component): Constify.
664         (gtk_widget_modify_fg): Constify.
665         (gtk_widget_modify_bg): Constify.
666         (gtk_widget_modify_text): Constify.
667         (gtk_widget_modify_base): Constify.
668
669 2004-01-26  Christian Rose  <menthos@menthos.com>
670
671         * configure.in: Added "mi" to ALL_LINGUAS.
672
673 2004-01-25  Tor Lillqvist  <tml@iki.fi>
674
675         * gdk/win32/gdkproperty-win32.c (gdk_property_delete): If the
676         WM_TRANSIENT_FOR property is being deleted, set the owner of the
677         window to the root window (i.e., effectively unset it). (#132411)
678
679         * gdk/win32/gdkprivate-win32.h
680         * gdk/win32/gdkglobals-win32.c
681         * gdk/win32/gdkmain-win32.c: Declare, define and initialize
682         _wm_transient_for, a GdkAtom for WM_TRANSIENT_FOR.
683
684         * acconfig.h: Remove HAVE_WINSOCK_H, not used any longer.
685
686 Sun Jan 25 15:14:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
687
688         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Base the decision
689         to map/unmap items on whether they are actually allocated outside
690         the toolbar, not on whether that will eventually happen. Improves
691         animation in the presence of overflown items.
692
693         * gtk/gtktoolbar.c (gtk_toolbar_begin_sliding): Add a
694         queue_resize() to so that the items will get their new goal
695         values and the idle handler will not immediately return FALSE.
696
697         * gtk/gtktoolbar.c (slide_idle_handler): simplify the logic and
698         make sure that a placeholder becoming invisible doesn't cause a
699         return TRUE.
700
701         * gtk/gtktoolbar.c (get_item_size): Don't special case
702         placeholders here.
703
704 Sat Jan 24 23:17:27 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
705
706         * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): Only
707         try to pack icon if there actually is one.
708
709         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Make sure
710         OVERFLOWN items get an allocation even when they are
711         unmapped. This ensures they will slide in properly.
712
713         * gtk/gtktoolbar.c (slide_idle_handler): Make sure we return TRUE
714         when there are overflown items that need to slide in. Also add
715         comments and make formatting more readable.
716
717 Sat Jan 24 17:38:48 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
718
719         * gtk/gtkradiotoolbutton.c (gtk_radio_tool_button_class_init):
720         Add a write-only property ::group to be consistent with
721         GtkRadioAction and GtkRadioButton. (#132159, Patch from Olivier
722         Andrieu)
723
724 Fri Jan 23 23:46:12 2004  Matthias Clasen  <maclas@gmx.de>
725
726         * gtk/gtkfontbutton.c (gtk_font_button_label_use_font): Don't leak the 
727         font description.  (#132168)
728
729 2004-01-23  Federico Mena Quintero  <federico@ximian.com>
730
731         Fix #132247.
732
733         * gtk/gtkfilechooserdefault.c (set_select_multiple): Handle folder
734         mode.
735         (set_select_multiple): Optionally notify about changes to the
736         select-multiple property.
737         (list_selection_changed): Change the condition for the editable row to
738         test for save mode; this is more clear than testing for not being
739         in multiple selection mode.
740         (gtk_file_chooser_default_get_paths): Get impl->action directly
741         rather than calling gtk_file_chooser_get_action().
742         (entry_activate): Likewise.
743         (set_select_multiple): Annotate about #133255.
744         (update_chooser_entry): Likewise.
745         (check_preview_change): Likewise.
746         (tree_selection_changed): Likewise.
747
748 Fri Jan 23 14:56:18 2004  Jonathan Blandford  <jrb@gnome.org>
749
750         * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): Don't crash
751         when there are no columns, or all columns are hidden, #131402
752
753 Fri Jan 23 16:58:28 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
754
755         * gtk/gtkmenu.c (DEFAULT_POPUP_DELAY): Changing to 200 was a
756         mistake. Change back to 225.
757
758 Thu Jan 22 18:46:05 2004  Owen Taylor  <otaylor@redhat.com>
759
760         * === Released 2.3.2 ===
761
762 Thu Jan 22 18:45:26 2004  Owen Taylor  <otaylor@redhat.com>
763
764         * gtk/gtkicontheme.c: Patch from Christian Neumair
765         to make warning string more translator friendly.
766
767         * gtk/gtktreemodelfilter.h gtkseparatortoolitem.[ch]
768         gtk/gtktoolbar.c: Parameter name fixes to keep gtk-doc
769         happy.
770
771         * configure.in: Require GLib-2.3.2, version 2.3.2,
772         interface age 0, binary age 302.
773
774         * NEWS: Organized, added some names.
775
776 Thu Jan 22 16:59:36 2004  Jonathan Blandford  <jrb@gnome.org>
777
778         * gtk/gtkliststore.c (gtk_list_store_reorder): Doc fix.
779
780 2004-01-22  Federico Mena Quintero  <federico@ximian.com>
781
782         * gtk/gtkwidget.c (gtk_widget_class_init): Added documentation for
783         GtkWidget::popup_menu.
784
785 Thu Jan 22 21:45:24 2004  Matthias Clasen  <maclas@gmx.de>
786
787         * gtk/gtkmenu.c (gtk_menu_remove): Remove the attach 
788         info after calling gtk_menu_do_remove(), since that function
789         uses the attach info. Doh!
790
791         * gtk/gtkmenu.c (gtk_menu_do_remove): Don't check priv->columns 
792         for being 1 directly after setting it to 0.
793
794 Thu Jan 22 21:38:52 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
795
796         * NEWS: Updates
797
798 2004-01-22  Alexander Larsson  <alexl@redhat.com>
799
800         * gdk/x11/gdkwindow-x11.c (WINDOW_IS_TOPLEVEL):
801         Fix typo
802
803 2004-01-21  Federico Mena Quintero  <federico@ximian.com>
804
805         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
806         Free the path fields.
807
808         * gtk/gtkfilesystemmodel.c (gtk_file_system_model_finalize): Free
809         the root_path, reported by <scott@asofyet.org>
810         (gtk_file_system_model_finalize): Unref the file system.
811
812         * gtk/gtkfilefilter.c (filter_rule_free): default:
813         g_assert_not_reached().
814         (gtk_file_filter_finalize): Free the filter->name, reported by
815         <scott@asofyet.org>
816         (gtk_file_filter_finalize): Free the rules list.
817
818 Wed Jan 21 18:10:40 2004  Jonathan Blandford  <jrb@gnome.org>
819
820         * gtk/gtkcolorbutton.c (gtk_color_button_set_color):redraw the
821         color button when an alpha is set.
822         (gtk_color_button_set_alpha): redraw the color button when an
823         alpha is set.
824
825 Wed Jan 21 23:27:14 2004  Matthias Clasen  <maclas@gmx.de>
826
827         Fix #131869: 
828         
829         * gtk/gtkaction.c (_gtk_action_emit_activate): Hold
830         a reference to the group while emitting the signals.
831
832         * gtk/gtkactiongroup.c (gtk_action_group_init): Use a 
833         destroy notify which does not only unref, but also resets
834         the action_group property of the action.
835
836 2004-01-20  Federico Mena Quintero  <federico@ximian.com>
837
838         * NEWS: Added details about GtkFileChooser changes.
839
840 2004-01-20  Federico Mena Quintero  <federico@ximian.com>
841
842         Fix #99425, add accessor functions for GtkPaned's children.
843
844         * gtk/gtkpaned.c (gtk_paned_get_child1): New function.
845         (gtk_paned_get_child2): New function.
846
847 Tue Jan 20 23:49:52 2004  Matthias Clasen  <maclas@gmx.de>
848
849         * NEWS: Start of 2.3.2 section.
850
851 Tue Jan 20 22:11:31 2004  Matthias Clasen  <maclas@gmx.de>
852
853         Fixes for #130370, based on a patch by Michael Meeks:
854         
855         * gtk/gtkmenu.c (gtk_menu_do_remove): New auxiliary function to
856         adjust cell positions and recalculate row and column counts after
857         removing an item.
858
859         * gtk/gtkmenu.c (gtk_menu_remove): Call gtk_menu_do_remove.
860
861         * gtk/gtkmenu.c (gtk_menu_do_insert): Don't leave empty rows when
862         appending items.
863
864         * gtk/gtkmenu.c (gtk_menu_attach): Don't call gtk_menu_shell_append,
865         to avoid an unintended recursion.
866
867 2004-01-19  Federico Mena Quintero  <federico@ximian.com>
868
869         Fix #131418.
870
871         * gtk/gtkfilechooserdefault.c (set_select_multiple): New helper
872         function.
873         (gtk_file_chooser_default_set_property): Use
874         set_select_multiple().  Also, re-set this mode to single if the
875         file chooser is set to Save mode.
876         (entry_activate): Handle the case where the entry is completely
877         empty *and* its current folder does exist.  Also, there is need to
878         test for select_multiple here now that we ensure that it won't
879         happen during Save mode.
880
881 Sun Jan 18 15:25:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
882
883         * gtk/gtktoolbar.[ch]: Add _gtk_toolbar_paint_space_line(),
884         _gtk_toolbar_get_default_space_size ();
885
886         * gtk/gtkseparatortoolitem.c (gtk_separator_tool_item_expose,
887         get_space_size): Use them here.
888
889 Sun Jan 18 13:16:34 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
890
891         * tests/testgtk.c (create_toolbar): Set a small size request and
892         make the window resizable, to test mapping/unmapping of buttons.
893
894         * gtk/gtktoolbar.c (gtk_toolbar_remove_content,
895         gtk_toolbar_insert_tool_item): remove these functions.
896
897         * gtk/gtktoolbar.c (gtk_toolbar_show_all,
898         toolbar_content_show_all, gtk_toolbar_hide_all,
899         toolbar_content_hide_all): New functions. 
900
901         Ignore show_all/hide_all for buttons created in compatibility mode.
902
903         * gtk/gtktoolbar.c (internal_insert_element, gtk_toolbar_show_all,
904         gtk_toolbar_hide_all): Make sure buttons are ignored by
905         gtk_toolbar_show_all() and gtk_toolbar_hide_all().
906         
907         * gtk/gtktoolbar.c: s/regular_widget/compatibility/g
908
909         * gtk/gtktoolbar.c (struct _ToolbarContent): Allocate
910         GtkToolbarChild inline. Get rid of GtkToolbarChildSpace.
911
912         * gtk/gtktoolbar.c (toolbar_content_expose): Fix bug where widget
913         could become NULL.
914
915         * gtk/gtktoolbar.c (gtk_toolbar_add): Append new tool items
916         instead of prepending them.
917
918         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Use the same
919         'elapsed' for all items.
920
921         * gtk/gtktoolbar.c (struct _GtkToolbarPrivate): Turn booleans
922         into bitfields.
923
924         * gtk/gtktoolbar.c: Many formatting fixes
925         
926 Sun Jan 18 01:51:12 2004  Matthias Clasen  <maclas@gmx.de>
927
928         * configure.in: Add the necessary magic to create
929         po-properties/Makefile.
930
931 Sat Jan 17 23:05:52 2004  Matthias Clasen  <maclas@gmx.de>
932
933         The second part of the fix for #114351 (see also 
934         gdk-pixbuf/ChangeLog and po/ChangeLog):
935
936         * Makefile.am (SUBDIRS): Add po-properties.
937
938         * configure.in (AC_CONFIG_FILES): Add po-properties/Makefile.in 
939
940         * gdk/gdkintl.h (P_): 
941         * gtk/gtkintl.h (P_): Use translation domain gtk20-properties. 
942
943         * gtk/gtkmain.c (gtk_parse_args): Call bindtextdomain and
944         bind_textdomain_codeset for gtk20-properties as well.
945
946 Sat Jan 17 22:00:07 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
947
948         * gtk/gtktoolbar.c: 
949
950         Fix rest of #128678: Implement all the toolbar_content()
951         methods for the old API case.
952
953 Sat Jan 17 16:53:08 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
954
955         * gtk/gtktoolbar.c: 
956
957         Phase 1 of fixing #128678: Only access ToolbarContent through a
958         set of new functions:
959
960         toolbar_content_expose, toolbar_content_visible,
961         toolbar_content_size_request, toolbar_content_is_homogeneous,
962         toolbar_content_get_child_requisition,
963         toolbar_content_is_placeholder, toolbar_content_disappearing,
964         toolbar_content_get_state, toolbar_content_child_visible,
965         toolbar_content_get_goal_allocation,
966         toolbar_content_get_allocation,
967         toolbar_content_set_start_allocation,
968         toolbar_content_get_start_allocation, toolbar_content_get_expand,
969         toolbar_content_set_goal_allocation,
970         toolbar_content_set_child_visible, toolbar_content_size_allocate,
971         toolbar_content_set_state, toolbar_content_get_widget,
972         toolbar_content_set_disappearing,
973         toolbar_content_set_size_request,
974         toolbar_content_toolbar_reconfigured,
975         toolbar_content_retrieve_menu_item, 
976         toolbar_content_new_tool_item, toolbar_content_destroy,
977         toolbar_content_is_separator
978
979         Also fix #127092.
980         
981 Sat Jan 17 12:55:13 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
982
983         * gtk/gtktoolitem.c (gtk_tool_item_finalize): don't leak the menu
984         item ID.
985
986 Sat Jan 17 12:37:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
987
988         * gtk/gtktoolbar.c (gtk_toolbar_finalize): Don't leak the
989         overflow menu.
990         
991         * gtk/gtktoolbar.h (struct _GtkToolbar): Make some fields public. 
992         [#127726]
993
994 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
995
996         * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModel): Added a
997         has_editable field.
998         (_gtk_file_system_model_add_editable): New function.
999         (_gtk_file_system_model_remove_editable): New function.
1000         (gtk_file_system_model_get_value): Return appropriate values for
1001         the temporary editable row.
1002         (_gtk_file_system_model_get_info): Handle the editable row.
1003         (_gtk_file_system_model_get_path): Likewise.
1004
1005         * gtk/gtkfilechooserdefault.c (shortcuts_append_bookmarks):
1006         Removed an unused variable.
1007         (toolbar_button_new): Optionally show the button.
1008         (up_button_clicked_cb): Renamed from up_button_cb(), fixed prototype.
1009         (toolbar_create): Add a "New Folder" button for Save mode.
1010         (error_building_filename_dialog): New helper function.
1011         (gtk_file_chooser_default_get_paths): Use error_building_filename_dialog().
1012         (create_file_list): Connect to the "edited" signal of the text
1013         cell renderer.  Store the name column and text renderer in the
1014         impl structure.
1015         (renderer_edited_cb): New callback.
1016         (gtk_file_chooser_default_set_property): Show/hide the "New
1017         folder" button when the save action changes.
1018         (COMPARE_DIRECTORIES): Allow the info values to be NULL.
1019         (COMPARE_DIRECTORIES): Duh, use the list_model, not the
1020         tree_model.
1021         (get_list_file_info): Likewise!
1022         (list_icon_data_func): Handle the path being NULL.
1023         (new_folder_button_clicked): New callback.
1024         (list_name_data_func): If we are on the editable row, set the text
1025         to "Type name of new folder".
1026         (list_selection_changed): Handle the editable row.
1027         (list_mtime_data_func): Likewise.
1028
1029         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_make_path): Return
1030         NULL, not FALSE.
1031         (gtk_file_system_unix_create_folder): Test the result of mkdir() correctly.
1032
1033 Fri Jan 16 23:59:01 2004  Matthias Clasen  <maclas@gmx.de>
1034
1035         The first part of the fix for #114351 (see also 
1036         gdk-pixbuf/ChangeLog and po/ChangeLog):
1037         
1038         * gtk/gtkintl.h: 
1039         * gdk/gdkintl.h: Define P_() for property blurbs and nicks.
1040
1041         * gdk/gdkdisplaymanager.c:
1042         * modules/input/gtkimcontextxim.c:
1043         * gtk/*.c:  Mark property blurbs and nicks with P_().
1044         
1045 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
1046
1047         Fix #130969.
1048
1049         * gtk/gtkcellrenderer.h (struct _GtkCellRendererClass): Added an
1050         editing_canceled signal.
1051
1052         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Create the
1053         "editing-canceled" signal.
1054         (gtk_cell_renderer_editing_canceled): New function.
1055
1056         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done):
1057         Call gtk_cell_renderer_editing_canceled().
1058
1059 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
1060
1061         * gtk/gtkfilechooserdefault.c
1062         (gtk_file_chooser_default_set_property): Do not allow setting
1063         select_multiple when in Save mode.
1064         (set_list_model): No need to nullify the list_model and
1065         sort_model.
1066         (gtk_file_chooser_default_get_paths): Handle folder mode as well.
1067         (get_paths_foreach): Likewise.
1068
1069         * gtk/gtkfilechooser.c (gtk_file_chooser_get_filename): Clarify
1070         documentation about folder mode.
1071         (gtk_file_chooser_get_uri): Likewise.
1072
1073 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
1074
1075         * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): New
1076         get_volume_for_path() method.
1077         (struct _GtkFileSystemIface): Finally removed the list_roots() and
1078         get_root_info() methods, and the "roots-changed" signal.
1079
1080         * gtk/gtkfilesystem.c (gtk_file_system_get_volume_for_path): New
1081         function.
1082         (gtk_file_system_list_roots): Removed.
1083         (gtk_file_system_get_root_info): Removed.
1084
1085         * gtk/gtkfilesystemunix.c
1086         (gtk_file_system_unix_get_volume_for_path): Implement.
1087         (get_root_volume): New helper function.
1088         (gtk_file_system_unix_list_volumes): Use get_root_volume().
1089         (gtk_file_system_unix_list_roots): Removed.
1090         (gtk_file_system_unix_get_root_info): Removed.
1091
1092         * gtk/gtkfilesystemmodel.c (_gtk_file_system_model_new): Don't
1093         accept a NULL root_path.
1094         (struct _GtkFileSystemModel): Add a field to remember the
1095         root_path.
1096         (_gtk_file_system_model_new): Store the root_path in the model
1097         structure.
1098         (find_and_ref_path): Stop going up the hierarchy at the root_path
1099         of the model.  Also, don't return prematurely when walking up the
1100         hierarchy.
1101
1102         * gtk/gtkfilechooserdefault.c (create_file_list): Sigh, restore
1103         the rules_hint.
1104         (struct _GtkFileChooserDefault): Added a current_volume_path field.
1105         (set_tree_model): New function; create the folder tree model here.
1106         (create_folder_tree): Don't create the model here.
1107         (set_list_model): Set the show_hidden flag on the list model.
1108
1109 Fri Jan 16 00:04:43 2004  Matthias Clasen  <maclas@gmx.de>
1110
1111         * gtk/gtknotebook.h:
1112         * gtk/gtknotebook.c (gtk_notebook_append_page): 
1113         * gtk/gtknotebook.c (gtk_notebook_append_page_menu): 
1114         * gtk/gtknotebook.c (gtk_notebook_prepend_page): 
1115         * gtk/gtknotebook.c (gtk_notebook_prepend_page_menu): 
1116         * gtk/gtknotebook.c (gtk_notebook_insert_page): 
1117         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): Return the
1118         index of the newly inserted page.  (#130986, Olexiy Avramchenko) 
1119
1120 Thu Jan 15 23:17:14 2004  Matthias Clasen  <maclas@gmx.de>
1121
1122         * gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): Inserting
1123         a 'newly-allocated' to hint that the list should be freed after
1124         use.
1125
1126 Wed Jan 14 18:01:52 2004  Jonathan Blandford  <jrb@gnome.org>
1127
1128         * gtk/gtktreeview.c (gtk_tree_view_button_press): move grab_focus
1129         to after handling the button presses in the TreeView to avoid
1130         getting multiple selection_changes()
1131
1132 Wed Jan 14 21:16:20 2004  Matthias Clasen  <maclas@gmx.de>
1133
1134         * gtk/gtkimcontext.c: Documentation fix.  (#131335, Theppitak 
1135         Karoonboonyanan)
1136
1137 Wed Jan 14 21:00:49 2004  Matthias Clasen  <maclas@gmx.de>
1138
1139         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
1140         Don't leak name and stock_id.  (#131358, Morten Welinder)
1141
1142 Wed Jan 14 13:07:30 GMT 2004  Tony Gale <gale@gtk.org>
1143
1144         * docs/faq/gtk-faq.sgml: Updates to Section 5
1145
1146 Wed Jan 14 02:34:57 2004  Matthias Clasen  <maclas@gmx.de>
1147
1148         * gtk/gtkradioaction.c: Add a writable group property to align
1149         with the GtkRadioButton API.  (#129166, Olivier Andrieu) 
1150
1151 Tue Jan 13 14:48:27 GMT 2004  Tony Gale <gale@gtk.org>
1152
1153         * docs/faq/gtk-faq.sgml: Update info on using autoconf
1154
1155 Mon Jan 12 23:40:34 2004  Matthias Clasen  <maclas@gmx.de>
1156
1157         * tests/testmerge.c: Adjust to the new connect_proxy signals.
1158
1159         * gtk/gtkuimanager.c
1160         * gtk/gtkactiongroup.c
1161         * gtk/gtkaction.c: Move the connect_proxy and disconnect_proxy signals
1162         from GtkAction to GtkActionGroup and proxy it on GtkUIManager. This
1163         removes the confusion between the disconnect_/connect_proxy signals 
1164         and the (unrelated) virtual functions of the same name and aligns
1165         the setup with the pre_/post_activate signals.
1166
1167 2004-01-12  Jody Goldberg <jody@gnome.org>
1168
1169         * gtk/gtkaction.c (connect_proxy) : only connect activate for menus
1170           with no submenus otherwise it looks like we activate every time a
1171           submenu opens.
1172
1173 2004-01-12  Jody Goldberg <jody@gnome.org>
1174
1175         * gtk/gtkuimanager.c: Remove accidentially committed debug spew.
1176
1177 Sun Jan 11 01:55:07 2004  Matthias Clasen  <maclas@gmx.de>
1178
1179         * gtk/gtkaccelmap.c: Remove accidentally committed notification stuff. 
1180         (gtk_accel_map_lock_path): 
1181         (gtk_accel_map_unlock_path): Path locking can now be nested, a missing
1182         entry is silently created during lock_path(), and treated as an error 
1183         during unlock_path(). These changes have been requested by Tim Janik.
1184
1185 2004-01-10  Jody Goldberg <jody@gnome.org>
1186
1187         * gtk/gtkuimanager.c (d) : Add a debug macro to quiet the spew.
1188         s/merge_signals/ui_manager_signals/ for readability.
1189         (gtk_ui_manager_class_init) : add pre_activate and post_activate
1190           signals.
1191         (cb_proxy_pre_activate) : new.
1192         (cb_proxy_post_activate) : new.
1193         (gtk_ui_manager_insert_action_group) : connect the proxies for
1194           GtkActionGroup::pre/post_activate
1195         (gtk_ui_manager_remove_action_group) : disconnect them.
1196
1197         * gtk/gtkactiongroup.c (gtk_action_group_class_init) : add
1198           'sensitive', and 'visible' properties.  Also add pre_activate and
1199           post_activate signals to help deal with activations at a higher
1200           level (eg GtkUIManager)
1201         (gtk_action_group_init) : init sensitive and visible
1202         (gtk_action_group_set_property) : add sensitive and visible
1203         (gtk_action_group_get_property) : add sensitive and visible
1204         (gtk_action_group_get_sensitive) : new.
1205         (gtk_action_group_get_visible) : new.
1206         (cb_set_action_sensitivity) : new with minor optimization that only
1207           signals sensitivity changes if the action could possibly change.
1208         (cb_set_action_visiblility) : ditto.
1209         (gtk_action_group_set_sensitive) : new.  walk the actions directly
1210           rather than using notify::sensitive because that is simpler, easier
1211           to read, and more efficient.
1212         (gtk_action_group_set_visible) : ditto.
1213         (gtk_action_group_add_action) : Each action can only be in 1 group,
1214           set GtkAction::action_group.
1215         (gtk_action_group_remove_action) : clear it.
1216         (gtk_action_group_add_toggle_actions_full) : warning suppression.
1217         (gtk_action_group_add_radio_actions_full) : warning suppression.
1218         (_gtk_action_group_emit_pre_activate) : new protected routine for use
1219           by GtkAction.
1220         (_gtk_action_group_emit_post_activate) : ditto.
1221
1222         * gtk/gtkaction.c (gtk_action_class_init) : add 'action_group' property.
1223         (gtk_action_init) : initialize it.
1224         (gtk_action_get_property) : get.
1225         (gtk_action_set_property) : set it via
1226         (gtk_action_set_action_group) : new function.
1227         (gtk_action_sync_sensitivity) : new routine to sync proxy sensitivity
1228           with the logical sensitivity (action & group) rather than the simple
1229           action::sensitivity.
1230         (gtk_action_sync_visible) : use gtk_action_is_visible to handle
1231           logical visibility (action & group) rather than the simple
1232           action::visible.  Use widget show/hide directly.
1233         (connect_proxy) : handle the custom sensitivity handler.
1234           Make the TOOL_BUTTON signals more general and support TOOL_ITEM
1235           directly, with special cases for TOOL_BUTTON.  Still not especially
1236           good it might be useful to handle label/use_underline by parmspec
1237           lookup.  Those are likely to be implemented by custom types, and are
1238           assumed to exist in GtkToolItem.
1239         (disconnect_proxy) : disconnect the new sensitivity handler.
1240         (_gtk_action_emit_activate) : add pre/post signals.
1241         (gtk_action_activate) : use logical sensitivity.
1242         (gtk_action_is_sensitive) : logical sensitivity.
1243         (gtk_action_get_sensitive) : actual sensitivity.
1244         (closure_accel_activate) : use logical sensitivity.
1245
1246 Fri Jan  9 22:23:45 2004  Matthias Clasen  <maclas@gmx.de>
1247
1248         * gtk/gtkuimanager.c: Introduce a new parser state for 
1249         accelerator elements to avoid misparsing files containing 
1250         such elements.  (#131035, Morten Welinder)
1251
1252 Fri Jan  9 11:58:47 2004  Manish Singh  <yosh@gimp.org>
1253
1254         * gdk-pixbuf/gdk-pixbuf-io.c: #include <unistd.h> for unlink()
1255
1256 Fri Jan  9 15:28:21 GMT 2004  Tony Gale <gale@gtk.org>
1257
1258         * docs/faq/gtk-faq.sgml: update GtkEntry filter code example
1259
1260 Fri Jan  9 00:34:57 2004  Matthias Clasen  <maclas@gmx.de>
1261
1262         * gtk/gtkuimanager.h:
1263         * gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): New function to
1264         obtain a list of toplevel widgets constructed by the ui manager.
1265
1266         * gtk/gtkuimanager.h (GtkUIManagerItemType): Change to flags, so that 
1267         the values can be combined for gtk_ui_manager_get_toplevels().
1268
1269         * tests/testmerge.c: Add a "Dump toplevels" button to test 
1270         gtk_ui_manager_get_toplevels().
1271
1272 Wed Jan  7 23:20:06 2004  Matthias Clasen  <maclas@gmx.de>
1273
1274         * demos/gtk-demo/Makefile.am (demos): Add entry_completion.c
1275         
1276         * demos/gtk-demo/entry_completion.c: New demo for GtkEntryCompletion 
1277         by Anders Carlsson  (#130464).
1278
1279 Wed Jan  7 23:07:28 2004  Matthias Clasen  <maclas@gmx.de>
1280
1281         * gtk/gtkmain.h: 
1282         * gtk/gtkmain.c (gtk_events_pending): Change the return value from 
1283         gint to gboolean.  (#130718, reported by Johannes Weißl)
1284
1285 Wed Jan  7 23:03:32 2004  Matthias Clasen  <maclas@gmx.de>
1286
1287         * gtk/gtkactiongroup.h: 
1288         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
1289         Remove the redundant name and stock_id parameters, adjust all callers.
1290
1291 Wed Jan  7 22:20:20 2004  Matthias Clasen  <maclas@gmx.de>
1292
1293         * gtk/gtkaction.h: 
1294         * gtk/gtkaction.c (gtk_action_new):  
1295         * gtk/gtktoggleaction.h: 
1296         * gtk/gtktoggleaction.c (gtk_toggle_action_new): 
1297         * gtk/gtkradioaction.h: 
1298         * gtk/gtkradioaction.c (gtk_radio_action_new): Add creation 
1299         functions for actions.
1300
1301         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): 
1302         (gtk_action_group_add_toggle_actions_full): 
1303         (gtk_action_group_add_radio_actions_full): and use the
1304         new functions here.  (#125322, Patch by Jeff Frank)
1305
1306 Wed Jan  7 21:42:49 2004  Matthias Clasen  <maclas@gmx.de>
1307
1308         * gtk/gtkaccelmap.c (gtk_accel_map_lock_path): Fix grammar of 
1309         docs.
1310
1311 2004-01-07  Jan Arne Petersen  <jpetersen@uni-bonn.de>
1312
1313         * gtk/gtkfilechooserdefault.c: (shortcuts_insert_path),
1314         (shortcuts_append_home), (shortcuts_append_desktop),
1315         (shortcuts_append_paths), (shortcuts_add_volumes),
1316         (shortcuts_append_bookmarks), (create_shortcuts_model),
1317         (gtk_file_chooser_default_add_shortcut_folder): add REMOVABLE column
1318         to the shortcuts_model.
1319
1320         (remove_bookmark_button_clicked_cb),
1321         (bookmarks_check_remove_sensitivity): use REMOVABLE column to check if
1322         bookmarks can be removed. Fixes #129873
1323
1324 Wed Jan  7 02:50:55 2004  Matthias Clasen  <maclas@gmx.de>
1325
1326         * demos/testpixbuf-save.c: Make s, S, Control-S, p, P, Control-P,
1327         i, I, Control-I test gdk_pixbuf_save(), gdk_pixbuf_save_to_buffer()
1328         and gdk_pixbuf_save_to_callback() with jpeg, png and ico formats, 
1329         respectively. Tests #82203.
1330
1331 2004-01-06  Federico Mena Quintero  <federico@ximian.com>
1332
1333         * gtk/gtkfilesel.c (gtk_file_selection_create_dir_confirmed): Use
1334         0777 as the mode for mkdir() and let the umask do the right
1335         thing.  Fixes #121819.
1336
1337         * gtk/gtkfilesystemunix.c (filename_is_root): g_path_skip_root()
1338         can return NULL; handle this.  Fixes #129565.
1339
1340 2004-01-06  Alexander Winston  <alexander.winston@comcast.net>
1341
1342         * gtk/gtkfilesel.c: (gtk_file_selection_delete_file): Removed space
1343         that proceeded the end-of-sentence punctuation. Fixes: #130353.
1344
1345 2004-01-06  Jody Goldberg <jody@gnome.org>
1346
1347         * gtk/gtktoolitem.c (gtk_tool_item_set_property) : Call 
1348           gtk_tool_item_set_visible_vertical for PROP_VISIBLE_VERTICAL.
1349
1350 2004-01-05  Federico Mena Quintero  <federico@ximian.com>
1351
1352         * gtk/gtkfilechooserdefault.c (shortcuts_append_bookmarks): Oops,
1353         call shortcuts_add_bookmarks() here.
1354         (remove_bookmark_button_clicked_cb): Ahem, fetch the selected
1355         iter.
1356         (shortcuts_append_paths): Don't display error dialogs here.
1357         (create_file_list): Remove the @#$% rules hint.
1358
1359 2004-01-05  Federico Mena Quintero  <federico@ximian.com>
1360
1361         * gtk/gtkfilechooserdefault.c (toolbar_button_new): New helper
1362         function.
1363         (toolbar_create): Do not use a toolbar widget, just an hbox
1364         instead.  Add the bookmarks buttons and the current folder label
1365         here.
1366         (create_filename_entry_and_filter_combo): Create the filter combo
1367         here.
1368         (filter_create): Don't show the filter combo initially.
1369         (up_button_cb): Renamed from toolbar_up_cb().
1370         (create_shortcuts_buttons): Removed.
1371
1372 2004-01-05  Murray Cumming  <murrayc@usa.net>
1373
1374         * gdk/gdkimage.h: Added <public> documentation to the struct, as
1375         suggested by Owen Taylor.
1376
1377 2004-01-05  Jody Goldberg <jody@gnome.org>
1378
1379         * gtk/gtkiconfactory.c (get_default_icons) : add stock indent, unindent
1380           I would have prefered outdent, but compatibility seems more
1381           important.
1382         * gtk/gtkstock.c (builtin_items) : ditto.
1383         * gtk/gtkstock.h : ditto.
1384         * gtk/stock-icons/Makefile.am : ditto.
1385         * gtk/stock-icons/stock_text_indent_16.png :
1386         * gtk/stock-icons/stock_text_indent_24.png :
1387         * gtk/stock-icons/stock_text_unindent_16.png :
1388         * gtk/stock-icons/stock_text_unindent_24.png : from gnome-icon-theme
1389
1390 Sun Jan  4 15:29:04 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1391
1392         * gtk/gtkradiotoolbutton.[ch]
1393         (gtk_radio_tool_button_new_with_stock_from_widget): Change API so
1394         group is a GtkRadioButton, not a GtkWidget.
1395
1396 2004-01-04  Hans Breuer  <hans@breuer.org>
1397
1398         * gdk/win32/gdkwindow-win32.c : use SWP_NOACTIVATE in 
1399         gdk_window_set_keep_(above|below) to make DND work again.
1400         Thanks to Alif Wahid for noticing.
1401
1402         * gdk/gdk.def : update externals
1403
1404         * gtk/gtkfilesystemwin32.c : adapt to GtkFileSystemIFace changes
1405
1406         * gtk/gtk-stock.[hc] gtk/gtkiconfactory.c 
1407           gtk/stock-icons/Makefile.am gtk/stock-icons/makefile.msc :
1408           gtk/stock-icons/stock_harddisk_16.png 
1409           gtk/stock-icons/stock_harddisk_24.png 
1410         Harddisk stock icons for file system implementations. Beside
1411         FLOPPY and CDROM there is now HARDDISK, probably some 
1412         GTK_STOCK_NETWORK would be useful, but I could not find one.
1413
1414 Sat Jan  3 11:39:42 2004  Manish Singh  <yosh@gimp.org>
1415
1416         * gtk/gtkclipboard.c: Update freedesktop.org clipboard doc link.
1417         Patch from Andrew Moise (#130462).
1418
1419 2004-01-01  Jody Goldberg <jody@gnome.org>
1420
1421         * gtk/gtkaction.c (_GtkActionPrivate) : add visible_horizontal,
1422           visible_vertical.
1423         (gtk_action_class_init) : here.
1424         (gtk_action_init) : here.
1425         (gtk_action_set_property) : here.
1426         (gtk_action_get_property) : here.
1427         (connect_proxy) : and here.
1428
1429 2003-12-30  Jody Goldberg <jody@gnome.org>
1430
1431         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel) :  new
1432           utility routine for use in derived GtkActions with the replicated code
1433           from.
1434         (gtk_action_group_add_actions_full) : here.
1435         (gtk_action_group_add_toggle_actions_full) : here.
1436         (gtk_action_group_add_radio_actions_full) : and here.
1437
1438 2004-01-01  Taneem Ahmed  <taneem@bengalinux.org>
1439
1440         * configure.in: Added "bn" to ALL_LINGUAS.
1441
1442 2004-01-01  Taneem Ahmed  <taneem@bengalinux.org>
1443
1444         * bn.po: Added Bangla translation by 
1445         of Ankur group <gnome-translation@bengalinux.org>.
1446
1447 Fri Jan  2 02:50:11 2004  Matthias Clasen  <maclas@gmx.de>
1448
1449         * gtk/gtkcalendar.c (gtk_calendar_compute_days): 
1450         * gtk/gtkcalendar.c (gtk_calendar_paint_day_names): 
1451         * gtk/gtkcalendar.c (gtk_calendar_init): Changes to support 
1452         week_start values other than 0 and 1, e.g. 6 will let weeks start
1453         on Saturday.  (#130349, Roozbeh Pournader) 
1454
1455 2003-12-31 13:49 Daniel Rogers <dsrogers@phasevelocity.org>
1456
1457         * gdk/x11/gdkinput-x11.c: (gdk_input_translate_coordinates)
1458         
1459         Fix to allow reasonable pointer behavior in window mode when an
1460         extended input device reports an incorrect resolution of 0.  Fixes
1461         bug #123546
1462         
1463 2003-12-31  Christian Neumair  <chris@gnome-de.org>
1464
1465         * gdk-pixbuf/gdk-pixdata.c: (gdk_pixbuf_from_pixdata):
1466         * gtk/gtkfilechooserdefault.c: (list_size_data_func): Use ngettext for
1467         plurals (#123847).
1468
1469 Wed Dec 31 02:05:39 2003  Matthias Clasen  <maclas@gmx.de>
1470
1471         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): 
1472         (gtk_action_group_add_toggle_actions_full):
1473         (gtk_action_group_add_radio_actions_full): Pull accelerator key
1474         from the stock item if stock_id is given, but accelerator 
1475         not.  (Noticed by Jeff Franks and Jody Goldberg)
1476
1477         * tests/testmerge.c: Remove the accelerator from the "Open" entry
1478         to test the above change.
1479         
1480 2003-12-29  Federico Mena Quintero  <federico@ximian.com>
1481
1482         Make show_all() work for the extra and preview widgets; reported
1483         by Paolo Maggi.
1484
1485         * gtk/gtkfilechooserdefault.c (set_preview_widget): show_all() the
1486         preview widget.
1487         (set_extra_widget): show_all() the extra widget.
1488
1489 Mon Dec 29 12:22:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1490
1491         * gtk/gtkuimanager.c (do_updates): 
1492         * gtk/gtktoolbar.c (slide_idle_handler): 
1493         * gtk/gtkdnd.c (gtk_drag_update_idle): 
1494
1495         Add GDK_THREADS_ENTER()/GDK_THREADS_LEAVE() pairs around idle
1496         functions. (#130157, patch from Olexiy Avramchenko).
1497         
1498 2003-12-29  Anders Carlsson  <andersca@gnome.org>
1499
1500         * gtk/gtkradiotoolbutton.c:
1501         * gtk/gtkradiotoolbutton.h:
1502         * gtk/gtkseparatortoolitem.c:
1503         * gtk/gtkseparatortoolitem.h:
1504         * gtk/gtktoggletoolbutton.c:
1505         * gtk/gtktoggletoolbutton.h:
1506         * gtk/gtktoolbar.c:
1507         * gtk/gtktoolbar.h:
1508         * gtk/gtktoolbutton.c:
1509         * gtk/gtktoolbutton.h:
1510         * gtk/gtktoolitem.c:
1511         * gtk/gtktoolitem.h:
1512         Update my e-mail address.
1513         
1514 Mon Dec 29 01:36:22 2003  Matthias Clasen  <maclas@gmx.de>
1515
1516         * gtk/gtkaccelmap.[hc]: (gtk_accel_map_lock_path, 
1517         gtk_accel_map_unlock_path): Add a way to lock individual accelerator
1518         paths.  (#73207, reported by Havoc Pennington)
1519
1520 Sat Dec 27 23:17:56 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1521
1522         * gtk/gtktoolbar.c (slide_idle_handler): use CHILD_VISIBLE
1523         instead of VISIBLE to determine whether we should stop
1524         sliding. (#130018, reported by Christian Persch).
1525
1526 Fri Dec 26 23:24:35 2003  Matthias Clasen  <maclas@gmx.de>
1527
1528         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
1529         Don't use first_action without initializing it if n_entries is 0.
1530
1531 Thu Dec 25 00:26:34 2003  Matthias Clasen  <maclas@gmx.de>
1532
1533         * gdk/x11/gdkcursor-x11.c (gdk_display_get_default_cursor_size):
1534         Add the missing _get_ to the name of the non-Xcursor version of
1535         this function.  (noticed by Torsten Schoenfeld)
1536
1537 Tue Dec 23 22:34:50 2003  Manish Singh  <yosh@gimp.org>
1538
1539         * gtk/gtkicontheme.h: fix GTK_TYPE_ICON_INFO macro, reported by
1540         muppet.
1541
1542 2003-12-24  Jody Goldberg <jody@gnome.org>
1543
1544         * gtk/gtkactiongroup.h : Add some const to the char * in
1545           GtkActionEntry*.  We're reccomending people pass static strings to
1546           them, and not freeing them.  This stems to flood of warnings that
1547           result.
1548         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full) : change
1549           temp vars to const to match above.
1550         (gtk_action_group_add_toggle_actions_full) : ditto.
1551         (gtk_action_group_add_radio_actions_full) : ditto.
1552
1553 Wed Dec 24 01:12:53 2003  Matthias Clasen  <maclas@gmx.de>
1554
1555         * gtk/gtkclipboard.[hc]: Add GtkClipboardTargetReceivedFunc,
1556         gtk_clipboard_request_targets() and 
1557         gtk_clipboard_wait_for_targets().  (#101774, Dom Lachowicz)
1558
1559 Mon Dec 22 00:40:39 2003  Matthias Clasen  <maclas@gmx.de>
1560
1561         * gtk/gtkcalendar.c (gtk_calendar_paint_arrow): Use 
1562         gtk_paint_arrow instead of draw_arrow_left/draw_arrow_right.
1563         * gtk/gtkcalendar.c (draw_arrow_left):
1564         (draw_arrow_right): Removed. 
1565         * gtk/gtkcalendar.c (gtk_calendar_realize_arrows): 
1566         * gtk/gtkcalendar.c (gtk_calendar_state_changed): Set the
1567         arrow_state to GTK_STATE_INSENSITIVE if the calendar is 
1568         insensitive.  (#97376)
1569
1570 Sun Dec 21 23:17:01 2003  Matthias Clasen  <maclas@gmx.de>
1571
1572         * gtk/gtkuimanager.c (update_node): 
1573         (update_smart_separators): 
1574         (_gtk_menu_is_empty): 
1575         (find_menu_position): 
1576         * gtk/gtktreeview.c (gtk_tree_view_search_dialog_destroy): 
1577         * gtk/gtkcombobox.c (gtk_combo_box_relayout_item): 
1578         (gtk_combo_box_relayout): Fix memory leaks caused by the
1579         failure to free the result of gtk_container_get_children().
1580
1581 Sun Dec 21 17:34:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1582
1583         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): Set the right
1584         properties when the window becomes a toplevel. When a window that
1585         was previously a toplevel becomes a toplevel again, restore its
1586         window type. Also make sure the focus window is removed from the
1587         XID hash when it is destroyed. (#117579, reported by Morten
1588         Welinder, patch reviewed by Owen Taylor).
1589
1590 Sun Dec 21 01:54:40 2003  Matthias Clasen  <maclas@gmx.de>
1591
1592         * gtk/gtkmenushell.h: 
1593         * gtk/gtkmenushell.c (gtk_menu_shell_cancel): New function 
1594         to emit the "cancel" signal on a menu shell.
1595
1596         * gtk/gtkmenu.c (gtk_menu_key_press): 
1597         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu): 
1598         * gtk/gtkmenubar.c (_gtk_menu_bar_cycle_focus): Use the 
1599         new function instead of directly emitting the 
1600         signal.  (#81803, Owen Taylor)
1601
1602 Sun Dec 21 00:39:50 2003  Matthias Clasen  <maclas@gmx.de>
1603
1604         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
1605         Fix the "language_set" blurb.  
1606         
1607 Sat Dec 20 22:06:03 2003  Kristian Rietveld  <kris@gtk.org>
1608
1609         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): do not invalidate
1610         all of treeview when resizing (#110074, patch from Soeren Sandmann).
1611
1612 Fri Dec 19 23:36:00 2003  Kristian Rietveld  <kris@gtk.org>
1613
1614         Fixes #108458.
1615
1616         * gtk/gtkcelllayout.[ch]: added a reorder method.
1617
1618         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_layout_init),
1619         (gtk_tree_view_column_cell_layout_reorder): implement reorder.
1620
1621         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_init),
1622         (gtk_cell_view_cell_layout_reorder): ditto.
1623
1624         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_init),
1625         (gtk_combo_box_cell_layout_reorder): ditto.
1626
1627         * gtk/gtkentrycompletion.c (gtk_entry_completion_cell_layout_init),
1628         (gtk_entry_completion_reorder): ditto.
1629
1630 Fri Dec 19 22:18:19 2003  Kristian Rietveld  <kris@gtk.org>
1631
1632         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): use strstr
1633         instead of strcmp (#117127, suggestion from Soeren Sandmann).
1634
1635 Fri Dec 19 21:52:46 2003  Kristian Rietveld  <kris@gtk.org>
1636
1637         * gtk/gtkmenu.c (gtk_menu_do_insert): move item insertion logic
1638         here from gtk_menu_real_insert(),
1639         (gtk_menu_real_insert): just call gtk_menu_do_insert(),
1640         (gtk_menu_reorder_child): run _do_insert after inserting the child
1641         (unbreaks _reorder_child, reported by Tim Janik).
1642
1643 2003-12-19  Federico Mena Quintero  <federico@ximian.com>
1644
1645         * gtk/gtkfilechooserdefault.c (list_mtime_data_func): Use
1646         g_date_strftime() for UTF-8 correctness; use Julian dates to
1647         simplify the function.
1648
1649 Fri Dec 19 01:47:34 2003  Matthias Clasen  <maclas@gmx.de>
1650
1651         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): 
1652         Test extra_width, not extra_height, when determining whether to
1653         set extra_width.  (#129647, Jan Arne Petersen)
1654
1655 Fri Dec 19 01:35:34 2003  Matthias Clasen  <maclas@gmx.de>
1656
1657         Fix the behaviour of insensitive actions, which was broken
1658         when gtk_action_activate() was changed to pay attention to 
1659         sensitivity  (#129557, Christian Persch)
1660         
1661         * gtk/gtkaction.h: 
1662         * gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
1663         function to emit an activate signal without regard to sensitivity.
1664
1665         * gtk/gtkradioaction.c: 
1666         * gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
1667         instead of gtk_action_activate().
1668
1669 2003-12-18  Jody Goldberg <jody@gnome.org>
1670
1671         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon)) : Add a sanity test
1672           to ensure that the base hicolor theme is installed.  Silently
1673           failing to produce icons that apps assume exist in the theme seems
1674           like a bad idea.
1675
1676 Thu Dec 18 19:13:12 2003  Kristian Rietveld  <kris@gtk.org>
1677
1678         Fixes #110249, reworked patch from Joshua N Pritikin.
1679
1680         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_type),
1681         (gtk_tree_model_sort_tree_drag_source_init),
1682         (gtk_tree_model_sort_row_draggable),
1683         (gtk_tree_model_sort_drag_data_get),
1684         (gtk_tree_model_sort_drag_data_delete): implement GtkTreeDragSource.
1685
1686         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_get_type),
1687         (gtk_tree_model_filter_tree_drag_source_init),
1688         (gtk_tree_model_filter_row_draggable),
1689         (gtk_tree_model_filter_drag_data_get),
1690         (gtk_tree_model_filter_drag_data_delete): ditto.
1691
1692 Thu Dec 18 18:01:01 2003  Kristian Rietveld  <kris@gtk.org>
1693
1694         * gtk/gtktreeview.c (gtk_tree_view_class_init): add key bindings
1695         for "*" and "/" (expand/collapse all). (#110195, reported by
1696         Calum Benson).
1697
1698 Thu Dec 18 17:52:56 2003  Kristian Rietveld  <kris@gtk.org>
1699
1700         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
1701         clear the extra_attrs list if we set "text" after "markup".
1702         (Fixes #121933, Federico Mena Quintero).
1703
1704 2003-12-18  Alexander Larsson  <alexl@redhat.com>
1705
1706         * gtk/gtkicontheme.c (gtk_icon_info_get_embedded_rect):
1707         Fix typo that used the wrong x/y values for the x1, y1 point
1708         (#129605)
1709
1710 Thu Dec 18 01:41:50 2003  Kristian Rietveld  <kris@gtk.org>
1711
1712         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init),
1713         (gtk_cell_renderer_text_finalize),
1714         (gtk_cell_renderer_text_get_property),
1715         (gtk_cell_renderer_text_set_property), (get_layout): added language
1716         and language_set properties like GtkTextTag has. (#103800, reported
1717         by Owen Taylor).
1718
1719 Thu Dec 18 01:37:59 2003  Matthias Clasen  <maclas@gmx.de>
1720
1721         * gtk/gtkwidget.c (gtk_widget_activate): Correct misleading docs.
1722         * gtk/gtkbutton.c (gtk_button_class_init): Add docs for the 
1723         "activate" signal.  (#129358, Ka-Hing Cheung)
1724
1725 Thu Dec 18 01:21:59 2003  Kristian Rietveld  <kris@gtk.org>
1726
1727         * gtk/gtktreeview.c (gtk_tree_view_class_init): Jonathan got
1728         the logical flag backwards in the expand_collapse_cursor_row
1729         bindings, fixing.
1730         (gtk_tree_view_real_expand_collapse_cursor_row): invert expand
1731         flag when !logical and in RTL. (Fixes #107527, reported by
1732         Noah Levitt).
1733
1734 Thu Dec 18 01:10:16 2003  Kristian Rietveld  <kris@gtk.org>
1735
1736         * gtk/gtktreeview.c (gtk_tree_view_button_press): only start
1737         editing when activated by the left mouse button. (#106869,
1738         patch from Evan Martin).
1739
1740 Thu Dec 18 00:57:18 2003  Kristian Rietveld  <kris@gtk.org>
1741
1742         Migrating all cell renderers to use the new instance private data
1743         construction.
1744
1745         * gtk/gtktreeprivate.h: remove GtkCellRendererInfo, as it is no
1746         longer being used.
1747
1748         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init),
1749         (gtk_cell_renderer_class_init), (gtk_cell_renderer_get_property),
1750         (set_cell_bg_color), (gtk_cell_renderer_render): remove old
1751         GtkCellRendererInfo handling, migrate to instance private data.
1752
1753         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done),
1754         (gtk_cell_renderer_text_start_editing): moved focus_out_id
1755         from GtkCellRendererInfo to text renderer private data.
1756
1757         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_init),
1758         (gtk_cell_renderer_pixbuf_class_init),
1759         (gtk_cell_renderer_pixbuf_finalize),
1760         (gtk_cell_renderer_pixbuf_get_property),
1761         (gtk_cell_renderer_pixbuf_set_property),
1762         (gtk_cell_renderer_pixbuf_create_stock_pixbuf),
1763         (gtk_cell_renderer_pixbuf_get_size), (gtk_cell_renderer_pixbuf_render):
1764         migrate to instance private data.
1765
1766         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init),
1767         (gtk_cell_renderer_toggle_get_property),
1768         (gtk_cell_renderer_toggle_set_property),
1769         (gtk_cell_renderer_toggle_render): migrate to instance private data.
1770
1771 Thu Dec 18 00:24:32 2003  Kristian Rietveld  <kris@gtk.org>
1772
1773         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init),
1774         (gtk_cell_renderer_text_get_property),
1775         (gtk_cell_renderer_text_set_property), (get_layout): add a
1776         single-paragraph-mode property, use private instance data.
1777         (Fixes #114943, reported by Morten Welinder).
1778
1779 Thu Dec 18 00:07:01 2003  Kristian Rietveld  <kris@gtk.org>
1780
1781         * gtk/gtktreemodel.h (gtk_tree_path_new_root),
1782         (gtk_tree_model_get_iter_root): now deprecated (#106953, reported
1783         by Matthias Clasen).
1784
1785 Wed Dec 17 23:50:56 2003  Kristian Rietveld  <kris@gtk.org>
1786
1787         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
1788         if we set a new stock_id and there was a previous stock_id, unref
1789         the pixbuf (since it was used to renderer the previous stock_id
1790         and stock_id might have been set to NULL now). (Fixes #122966).
1791
1792 2003-12-17  Marco Pesenti Gritti  <marco@gnome.org>
1793
1794         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_get_iter):
1795
1796         Check that index is not bigger than level array length
1797         also when depth is 1. Now get_iter_first correctly return
1798         FALSE when the model is empty (#129411).
1799
1800 Wed Dec 17 23:31:19 2003  Kristian Rietveld  <kris@gtk.org>
1801
1802         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): only
1803         try to strcmp or strlen if we managed to normalize and casefold
1804         the string correctly. Fixes crashes with non-UTF8 strings.
1805         (#121617, Patch from Tim-Philipp Müller).
1806
1807 Wed Dec 17 23:20:23 2003  Matthias Clasen  <maclas@gmx.de>
1808
1809         * gtk/gtkexpander.c (gtk_expander_animation_timeout): Add missing
1810         GDK_THREADS_ENTER()/GDK_THREADS_LEAVE().
1811         * gtk/gtkcalendar.c, gtk/gtkclist.c, gtk/gtkexpander.c, 
1812         gtk/gtklist.c, gtk/gtknotebook.c, gtk/gtkselection.c, 
1813         gtk/gtkspinbutton.c: Cast second argument to g_timeout_add() to
1814         GSourceFunc instead of GtkFunction.  (#129525, Olexiy Avramchenko) 
1815
1816 Wed Dec 17 23:16:45 2003  Kristian Rietveld  <kris@gtk.org>
1817
1818         * gtk/gtktreeview.c (gtk_tree_view_button_press): fix compile warning.
1819         (#122727, patch from Kjartan Maraas).
1820
1821 Wed Dec 17 21:23:01 2003  Kristian Rietveld  <kris@gtk.org>
1822
1823         Yay! Fixed height mode! Hooray! (Part 2 of #80868).
1824
1825         * gtk/gtktreeview.c (gtk_tree_view_class_init),
1826         (gtk_tree_view_init), (gtk_tree_view_set_property),
1827         (gtk_tree_view_get_property), (gtk_tree_view_set_model): add a
1828         fixed_height_mode property,
1829         (intialize_fixed_height_mode), (do_validate_rows),
1830         (column_sizing_notify), (gtk_tree_view_set_fixed_height_mode),
1831         (gtk_tree_view_style_set), (gtk_tree_view_row_changed),
1832         (gtk_tree_view_row_inserted), (gtk_tree_view_remove_column),
1833         (gtk_tree_view_insert_column): implement fixed height mode,
1834         (gtk_tree_view_append_column), (gtk_tree_view_insert_column),
1835         (gtk_tree_view_insert_column_with_attributes),
1836         (gtk_tree_view_insert_column_with_data_func): update docs.
1837
1838         * gtk/gtktreeprivate.h: add two fields to GtkTreePrivate.
1839
1840 2003-12-07  Murray Cumming  <murrayc@usa.net>
1841  
1842         * gtk/gtktreemodel.c:
1843         (row_inserted_marshal, row_deleted_marshal, rows_reorderered_marshal)
1844         Actually call the default signal handlers instead of calling the
1845         marshallers themselves in an endless loop. These default signal handler
1846         callbacks are not actually set so this is only noticed by gtkmm at
1847         the moment. Bug 123923.
1848
1849 2003-12-16  Federico Mena Quintero  <federico@ximian.com>
1850
1851         * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Added a
1852         "volumes-changed" signal.  Added the following methods:
1853                 list_volumes
1854                 volume_free
1855                 volume_get_base_path
1856                 volume_get_is_mounted
1857                 volume_mount
1858                 volume_get_display_name
1859                 volume_render_icon
1860
1861         * gtk/gtkfilesystem.c (gtk_file_system_base_init): Create the
1862         "volumes-changed" signal.
1863         (gtk_file_system_list_volumes): New function.
1864         (gtk_file_system_volume_free): New function.
1865         (gtk_file_system_volume_get_base_path): New function.
1866         (gtk_file_system_volume_get_is_mounted): New function.
1867         (gtk_file_system_volume_mount): New function.
1868         (gtk_file_system_volume_get_display_name): New function.
1869         (gtk_file_system_volume_render_icon): New function.
1870
1871         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_free): Implement.
1872         (gtk_file_system_unix_volume_get_base_path): Implement.
1873         (gtk_file_system_unix_volume_get_is_mounted): Implement.
1874         (gtk_file_system_unix_volume_mount): Implement.
1875         (gtk_file_system_unix_volume_get_display_name): Implement.
1876         (gtk_file_system_unix_volume_render_icon): Implement.
1877
1878         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
1879         Added a field for the "volumes-changed" signal connection.
1880         (gtk_file_chooser_default_set_property): Connect to
1881         "volumes-changed" on the file system.
1882         (gtk_file_chooser_default_finalize): Disconnect from
1883         "volumes-changed".
1884
1885         * gtk/gtkfilechooserdefault.c (shortcuts_remove_rows): New helper
1886         function.
1887         (shortcuts_get_index): New helper function.
1888         (shortcuts_insert_path): Can now insert volumes as well as paths.
1889         (shortcuts_append_paths): Don't take is_file_system_root.
1890         (shortcuts_add_volumes): New function.
1891         (shortcuts_append_file_system_roots): Removed.
1892         (create_shortcuts_model): Use shortcuts_add_volumes().
1893         (remove_bookmark_button_clicked_cb): Check that the index is
1894         within range.
1895         (bookmarks_check_add_sensitivity): Take volumes into account.
1896         (shortcuts_get_selected_index): New helper function.
1897         (remove_bookmark_button_clicked_cb): Use
1898         shortcuts_get_selected_index().
1899         (bookmarks_check_remove_sensitivity): Likewise.
1900         (shortcuts_select_func): Likewise.
1901         (shortcuts_row_activated_cb): Handle volumes as well as normal
1902         paths.
1903         (shortcuts_activate_volume): New function.
1904         (struct _GtkFileChooserDefault): Removed the bookmarks_set and
1905         bookmarks_iter fields.
1906         (shortcuts_append_bookmarks): Use shortcuts_remove_rows().
1907         (bookmarks_changed_cb): Use shortcuts_add_bookmarks().
1908         (remove_bookmark_rows): Removed.
1909         (shortcuts_add_bookmarks): New function; moved most of the code
1910         over from shortcuts_append_bookmarks().
1911         (shortcuts_append_bookmarks): Add the separator node here, and
1912         then call shortcuts_add_bookmarks().
1913
1914 Tue Dec 16 15:01:10 2003  Manish Singh  <yosh@gimp.org>
1915
1916         * gtk/gtkfilechooserwidget.c: fix preprocessor conditional confusion.
1917         (G_OS_UNIX/G_OS_WIN32 stuff)
1918
1919 Tue Dec 16 01:46:46 2003  Matthias Clasen  <maclas@gmx.de>
1920
1921         Do not interpret distant clicks as double-clicks  (#116541,
1922         Bernhard Walle):
1923         
1924         * gdk/gdkdisplay.h (struct GdkDisplay): Add new fields
1925         double_click_distance, button_x and button_y.
1926         * gdk/gdkdisplay.c (gdk_display_init): Initialize the new fields.
1927
1928         * gdk/gdkdisplay.h: 
1929         * gdk/gdkevents.c (gdk_display_set_double_click_distance): 
1930         New function to set the double click distance on a display.
1931
1932         * gdk/gdkevents.c: Take double click distance into account
1933         when generating single, double or triple clicks.
1934
1935         * gtk/gtksettings.c: Add new setting "gtk-double-click-distance".
1936
1937         * gdk/x11/gdkevents-x11.c: Add the XSetting 
1938         "Net/DoubleClickDistance" and map it to "gtk-double-click-distance".
1939
1940 2003-12-15  Federico Mena Quintero  <federico@ximian.com>
1941
1942         * gtk/gtkdialog.c: Sigh, revert the change.
1943
1944 2003-12-15  Federico Mena Quintero  <federico@ximian.com>
1945
1946         * gtk/gtkdialog.c (dialog_has_cancel): Removed.
1947         (gtk_dialog_close): Don't call dialog_has_cancel().  At least
1948         allows sane behavior for #101293.
1949
1950 Mon Dec 15 00:56:54 2003  Matthias Clasen  <maclas@gmx.de>
1951
1952         * gtk/gtkbutton.[hc]: Add new properties, xalign and yalign, with
1953         getter and setter gtk_button_[sg]et_alignment(), to set the
1954         alignment of the child.  (#70961, Jody Goldberg)
1955
1956 2003-12-14  Hans Breuer  <hans@breuer.org>
1957
1958         * gtk/gtkprivate.h gtk/gtkmain.c : handle GTK_DATADIR
1959         similar as the other filesystem placement 'constants' (dynamic
1960         resolving on win32)
1961
1962         * gtk/gtkfilechooserwidget.c : handle file system to win32
1963         renaming here as will
1964         * gtk/gtkfilesystemwin32.c : implement render_icon
1965
1966         * gtk/gtk.def gdk/gdk.def : updated externals
1967
1968         * gdk/win32/gdkdisplay-win32.c : make it compile without
1969         <multimon.h> - i.e. even older sdk
1970
1971         * gdk/win32/gdkevents-win32.c : match resize_timer_proc
1972         with TIMERPROC prototype
1973
1974         * gdk/win32/gdkwindow-win32.c : older msvc does not know
1975         BITMAPV5HEADER (from win xp) either
1976
1977         * gtk/gtkimmodule.c : make it compile even if GTK_LOCALEDIR is
1978         not defined
1979
1980         * tests/testfilechooser.c : recent GLib crashes on 
1981         g_print ("%s", NULL) so avoid this
1982
1983 2003-12-14  Tor Lillqvist  <tml@iki.fi>
1984
1985         * gdk/win32/gdkselection-win32.c: Calls to OpenClipboard() must be
1986         followed by calls to CloseClipboard(). Add a missing call to
1987         CloseClipboard(). Found by Adam Wright, fixes #104944. Use
1988         API_CALL macro in more places.
1989
1990 2003-12-14  Tor Lillqvist  <tml@iki.fi>
1991
1992         Merge from stable:
1993
1994         * gdk/gdkdisplaymanager.c: Mark default_display static.
1995
1996         * gdk/win32/gdkdnd-win32.c: Mark current_dest_drag static.
1997
1998         * gdk/win32/gdkkeys-win32.c: Disable some overly verbose debugging
1999         output.
2000
2001         * gdk/win32/gdkevents-win32.c: Clean up the debugging output from
2002         --gdk-debug=events. In general, output just one line of debugging
2003         output for each Windows message, plus one line for each GDK event
2004         generated. Indent all lines according to window procedure nesting
2005         level.
2006
2007         (inner_window_procedure): Rename from real_window_procedure.
2008
2009         (find_real_window_for_grabbed_mouse_event): Don't get misled when
2010         the point is in the non-client (decoration) area of the window
2011         returned by WindowFromPoint(). Return the root window in that
2012         case.
2013
2014         (build_pointer_event_state): Test also MK_XBUTTON1 and
2015         MK_XBUTTON2 (buttons 4 and 5).
2016
2017         (synthesize_enter_event): Track the mouse leaving the window in
2018         the event being generated, not the one mentioned in the Windows
2019         message.
2020
2021         (propagate): Test for NULL parent earlier. Improves event
2022         generation from a grabbed pointer. Part of fix for #107320.
2023
2024         (handle_stuff_while_moving_or_resizing): New function, to
2025         dispatch the main loop (once).
2026
2027         (resize_timer_proc): New function, set to be called by an inerval
2028         timer during resizes/moves. Calls handle_stuff_while_moving_or_resizing().
2029
2030         (gdk_event_translate): Drop unused return_exposes parameter.
2031
2032         Handle WM_XBUTTONDOWN and UP messages (buttons 4 and 5).
2033
2034         On WM_SYSKEYUP, generate a key release event also for just the Alt
2035         key.
2036
2037         On WM_MOUSELEAVE, generate a leave event of type
2038         GDK_NOTIFY_ANCESTOR (and not UNKNOWN) if the mouse left a
2039         top-level window, and left the app completely.
2040
2041         On WM_ENTERSIZEMOVE, set a flag, and start an interval timer that
2042         calls resize_timer_proc() at regular intervals. On
2043         WM_EXITSIZEMOVE, kill the timer.
2044
2045         On WM_WINDOWPOSCHANGED, generate a configure event if necessary,
2046         and dispatch the main loop (by calling
2047         handle_stuff_while_moving_or_resizing()). Fixes #99540, idea by
2048         Herman Bloggs.
2049
2050         * gdk/win32/gdkmain-win32.c (_gdk_win32_message_to_string): Handle
2051         also wintab messages.
2052
2053         * gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
2054         Instead of using WS_EX_TOOLWINDOW, implement by setting/unsetting
2055         the window's owner. Fixes #118093, reported by Maxime Romano.
2056
2057 Tue Dec  8 09:41:00 2003  Tim Evans  <t.evans@aranz.com>
2058
2059         * gdk/win32/gdkwindow-win32.[ch]: Implement
2060         gdk_window_set_icon_list() for Win32, with support for big and
2061         small icons and support for alpha-channel icons under Windows
2062         XP. Replaces the previous implementation of gdk_window_set_icon().
2063         (#128762)
2064         
2065 Sun Dec 14 01:28:23 2003  Matthias Clasen  <maclas@gmx.de>
2066
2067         * gdk/x11/gdkprivate-x11.h: 
2068         * gdk/x11/gdkx.h: 
2069         * gdk/x11/gdkevents-x11.c (gdk_x11_register_standard_event_type): 
2070         Rename from _gdk_x11_register_event_type(), added API docs.
2071         * gdk/x11/gdkinput-x11.c (_gdk_input_common_init): 
2072         * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init): Adjust
2073         all callers.  (#121471, Bill Haneman)
2074
2075 Sat Dec 13 23:37:50 2003  Matthias Clasen  <maclas@gmx.de>
2076
2077         * gdk/gdkdraw.c (gdk_draw_pixbuf): Document that the clip mask
2078         of gc is ignored.  (#101983, Sebastian Rittau)
2079
2080 Sat Dec 13 16:13:27 2003  Kristian Rietveld  <kris@gtk.org>
2081
2082         A trick for a faster treeview, step 1. Patch to short circuit
2083         _build_tree(), inspired by Jonathan (#80868).
2084
2085         * gtk/gtktreeview.c (gtk_tree_view_init): don't put _IS_LIST in
2086         flags by default,
2087         (gtk_tree_view_build_tree): don't even try to recurse when the
2088         model says that it is a list, remove flag unsetter,
2089         (gtk_tree_view_set_model): change flag setting logic.
2090
2091         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_flags):
2092         propagate whether or not the child model has _IS_LIST set.
2093
2094         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_get_flags):
2095         ditto.
2096
2097 Sat Dec 13 02:33:17 2003  Matthias Clasen  <maclas@gmx.de>
2098
2099         * gtk/gtkrange.c (gtk_range_scroll): Undo the last change, 
2100         since it broke logical keynav. 
2101         * gtk/gtkrange.c (range_get_scroll_for_grab): Fix stepper
2102         direction in inverted scrollbars here instead.
2103
2104 Sat Dec 13 00:39:24 2003  Matthias Clasen  <maclas@gmx.de>
2105
2106         * gtk/gtkviewport.c (viewport_set_hadjustment_values): Implement
2107         "gravity" for RTL mode in a better way: Keep the distance from 
2108         the upper end of the page to the upper bound constant. This also 
2109         fixes problems with the initial position of the viewport in RTL 
2110         mode.  (#129063)
2111         
2112 Fri Dec 12 21:00:12 2003  Kristian Rietveld  <kris@gtk.org>
2113
2114         Combo box flipping support.
2115
2116         * gtk/gtkcombobox.c (gtk_combo_box_menu_position),
2117         (gtk_combo_box_size_allocate): support RTL flipping (#126518,
2118         patch from Matthias Clasen),
2119         (gtk_combo_box_popup): fix popup window alignment if there's a
2120         cell view frame visible (#126518, patch from Semion Chichelnitsky).
2121
2122         * gtk/gtkcellview.c (gtk_cell_view_expose): support RTL flipping
2123         (#128348, patch from Semion Chichelnitsky).
2124
2125 Fri Dec 12 01:13:34 2003  Matthias Clasen  <maclas@gmx.de>
2126
2127         * examples/gtkdial/gtkdial.c:
2128         * examples/menu/menu.c:
2129         * examples/scribble-xinput/scribble-xinput.c:
2130         * examples/progressbar/progressbar.c:
2131         * docs/tutorial/gtk-tut.sgml: Remove deprecated functions
2132         in examples. (#129074, Olexiy Avramchenko)
2133         * examples/calendar/Makefile:
2134         * examples/rangewidgets/Makefile:
2135         * examples/menu/Makefile: Allow deprecated functions in
2136         examples which use deprecated widgets.
2137
2138 Fri Dec 12 00:43:16 2003  Matthias Clasen  <maclas@gmx.de>
2139
2140         * gdk/gdk.c (gdk_threads_set_lock_functions): 
2141         * gdk/x11/gdkspawn-x11.c: Add "Since: 2.4" to doc comments.
2142
2143 Fri Dec 12 00:05:31 2003  Matthias Clasen  <maclas@gmx.de>
2144
2145         * gtk/gtkrange.c (gtk_range_scroll): Fix direction of 
2146         steppers in inverted scrollbars.  (#129084, Olexiy Avramchenko)
2147
2148 Thu Dec 11 23:50:30 2003  Matthias Clasen  <maclas@gmx.de>
2149
2150         * gtk/gtknotebook.c (gtk_notebook_pages_allocate): Don't 
2151         unnecessarily reserve space for arrows in RTL mode.  (#129075,
2152         Semion Chichelnitsky)
2153
2154 Thu Dec 11 00:35:12 2003  Matthias Clasen  <maclas@gmx.de>
2155
2156         Changes to allow "no input" windows (#64613):
2157         
2158         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean
2159         field accept_focus.
2160         
2161         * gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to
2162         set it.
2163
2164         * gtk/gtkwindow.[hc]: Add a boolean property "accept_focus"
2165         and gtk_window_get_focus() and gtk_window_set_focus().
2166
2167         * gdk/win32/gdkwindow-win32.c (gdk_window_new): 
2168         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new): 
2169         * gdk/x11/gdkwindow-x11.c (gdk_window_set_new):
2170         Initialize the accept_focus field to TRUE.
2171
2172         * gdk/win32/gdkwindow-win32.c (gdk_window_set_accept_focus): 
2173         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_accept_focus): 
2174         * gdk/x11/gdkwindow-x11.c (gdk_window_set_accept_focus): 
2175         Implementations for the various backends. The Win32 and linux-fb
2176         implementations set the accept_focus field, but don't use it yet 
2177         to actually implement noinput windows. The X implementation updates
2178         the WM_HINTS to select the globally active input model (see the
2179         ICCCM) if accept_focus is FALSE.
2180
2181         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Ignore the
2182         WM_TAKE_FOCUS message if accept_focus is FALSE.
2183         
2184 2003-12-10  Federico Mena Quintero  <federico@ximian.com>
2185
2186         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
2187         Added toolbar items for the filter separator and the filter item.
2188         (toolbar_create): Add the filter widgets here.
2189         (filter_create): Renamed from create_filter().  Don't store the
2190         alignment in the impl structure, just return it.
2191         (toolbar_show_filters): New function.
2192         (gtk_file_chooser_default_add_filter): Use toolbar_show_filters().
2193         (gtk_file_chooser_default_remove_filter): Likewise.
2194         (gtk_file_chooser_default_constructor): Don't create the filter
2195         widget here.
2196         (struct _GtkFileChooserDefault): Added a field for a current
2197         folder label.
2198         (gtk_file_chooser_default_constructor): Create the folder label.
2199         (gtk_file_chooser_default_set_current_folder): Set the current
2200         folder label.
2201
2202         * tests/testfilechooser.c (main): Dramatically improved the
2203         usability of the extra widget through careful word choice.
2204
2205 2003-12-10  Mark McLoughlin  <mark@skynet.ie>
2206
2207         * gdk/gdk.h: include gdkspawn.h.
2208
2209 2003-12-10  Mark McLoughlin  <mark@skynet.ie>
2210
2211         * gdk/linux-fb/gdkspawn-fb.c,
2212           gdk/win32/gdkspawn-win32.c,
2213           gdk/x11/gdkspawn-x11.c: (gdk_spawn_command_line_on_screen):
2214         s/gdk_spawn/gdk_spawn_on_screen/.
2215
2216 2003-12-10  Mark McLoughlin  <mark@skynet.ie>
2217
2218         Utility functions for multi-screen applications which need
2219         to ensure launched applications appear on a certain screen.
2220         See bug #95897.
2221         
2222         * gdk/gdkspawn.h: header for multi-screen launching
2223         support.
2224         
2225         * gdk/Makefile.am: install gdkspawn.h.
2226         
2227         * gdk/x11/Makefile.am:
2228         * gdk/x11/gdkspawn-x11.c:
2229         (gdk_spawn_make_environment_for_screen): private function
2230         to create an environment vector with DISPLAY set appropriately
2231         for the screen.
2232         (gdk_spawn_on_screen): multi-screen version of g_spawn_async().
2233         (gdk_spawn_on_screen_with_pipes): version of g_spawn_async_with_pipes().
2234         (gdk_spawn_command_line_on_screen): version of g_spawn_command_line_async().
2235         
2236         * gdk/linux-fb/Makefile.am,
2237           gdk/linux-fb/gdkspawn-fb.c: linux-fb impl.
2238         
2239         * gdk/win32/Makefile.am,
2240           gdk/win32/gdkspawn-win32.c: win32 impl.
2241
2242 2003-12-09  Federico Mena Quintero  <federico@ximian.com>
2243
2244         * gtk/gtkfilechooserdefault.c (shortcuts_append_home): Use "Home"
2245         rather than "Username's Home" (#125964).
2246         (shortcuts_selection_changed_cb): New callback, check the
2247         sensitivity of the Remove Bookmark button at the right time.
2248         (shortcuts_row_activated_cb): It is not necessary to check the
2249         sensitivity here.
2250
2251 Wed Dec 10 00:06:24 2003  Matthias Clasen  <maclas@gmx.de>
2252
2253         Improve the GDK API for dealing with group leaders (#119375):
2254         
2255         * gdk/gdkwindow.h: 
2256         * gdk/x11/gdkwindow-x11.c (gdk_window_get_group): New function to 
2257         get the group leader of a toplevel window as a GdkWindow.
2258
2259         * gdk/gdkdisplay.h: 
2260         * gdk/x11/gdkdisplay-x11.c (gdk_display_get_default_group): New 
2261         function to get the default group leader as a GdkWindow.
2262
2263         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add a field for
2264         the GdkWindow of the default group leader.
2265         
2266         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Construct the GdkWindow
2267         for the default group leader.
2268
2269 2003-12-09  Noah Levitt  <nlevitt@columbia.edu>
2270
2271         * gdk/gdkkeysyms.h:
2272         * gdk/gdkkeyuni.c: Add keysyms Ukrainian_ghe_with_upturn,
2273         Ukrainian_GHE_WITH_UPTURN. (#128529)
2274
2275 2003-12-08  Jan Arne Petersen  <jpetersen@uni-bonn.de>
2276
2277         * gtk/gtkfilechooserdefault.c:
2278         (gtk_file_chooser_default_get_paths), (entry_activate): Use the
2279         behavior of the GtkFileSelection to determine selected paths in
2280         single selected, GTK_FILE_CHOOSER_ACTION_SAVE mode.
2281
2282 2003-12-08  Federico Mena Quintero  <federico@ximian.com>
2283
2284         * gtk/gtkfilechooserdefault.c
2285         (gtk_file_chooser_default_get_paths): Don't declare the closure
2286         struct twice.
2287         (get_paths_foreach): Likewise.
2288
2289 Tue Dec  9 00:12:36 2003  Matthias Clasen  <maclas@gmx.de>
2290
2291         * gtk/gtkfilesystemwin32.[hc]: s/Unix/Win32/g. 
2292
2293 2003-12-08  Tor Lillqvist  <tml@iki.fi>
2294
2295         * gdk/win32/gdkdisplay-win32.c: Use <multimon.h> when compiling
2296         with MSVC and old headers. (#126933, John Ehresman)
2297
2298 Mon Dec  8 10:54:44 2003  Owen Taylor  <otaylor@redhat.com>
2299          
2300         * === Released 2.3.1 ===
2301
2302         * NEWS: Updates for 2.3.1
2303
2304         * configure.in: Version 2.3.1, interface age 0, binary age 301.
2305
2306         * gtk/gtkmenuitem.c (gtk_menu_item_can_activate_accel):
2307         Rename from gtk_menu_item_real_can_activate_accel() to
2308         match GTK+ convention, improve comment.
2309
2310         * gtk/gtkwidget.c: Document gtk_widget_can_activate_accel(),
2311         can ::can-activate-accel signal.
2312
2313         * gtk/gtkwidget.c (closure_accel_activate): Fix spelling
2314         in comment.
2315
2316         * gtk/gtkmenu.c (gtk_menu_real_can_activate_accel): Clean 
2317         up comment.
2318         
2319         * gtk/gtkcellview{,menuitem}.[ch]: Move GET_PRIVATE() macros
2320         into the .c file.
2321
2322 Mon Dec  8 12:09:21 2003  Owen Taylor  <otaylor@redhat.com>
2323
2324         * gtk/gtkicontheme.c (find_builtin_icon): Fix a
2325         missing 'else'. (#128816, Jorn Baayen)
2326
2327 2003-12-02  Michael Meeks  <michael@ximian.com>
2328
2329         Based on a patch by Martin Kretzschmar; #122448
2330         
2331         * gdk/gdk.h: new gdk_threads_lock, gdk_threads_unlock, point to
2332         implementation of GDK_THREADS_ENTER / GDK_THREADS_LEAVE.
2333         (GDK_THREADS_ENTER, GDK_THREADS_LEAVE): use gdk_threads_[un]lock
2334         function pointers. Deprecate the global gdk_threads_mutex variable.
2335         
2336         * gdk/gdk.c (gdk_threads_impl_lock, gdk_threads_impl_unlock): new,
2337         extracted from GTK_THREADS_ENTER/LEAVE macros.
2338         (gdk_threads_init): init gtk_threads_[un]lock if not set.
2339         (gdk_threads_set_lock_functions): impl.
2340
2341         * gdk/gdkglobals.c: add definitions of gdk_threads_[un]lock.
2342
2343 Sun Dec  7 23:45:40 2003  Matthias Clasen  <maclas@gmx.de>
2344
2345         * gtk/gtkicontheme.c (gtk_icon_theme_has_icon): Don't crash if
2346         icon_theme_builtin_icons hasn't been initialized.  (#128726, Diego
2347         Gonzalez)
2348
2349 2003-12-07  Tor Lillqvist  <tml@iki.fi>
2350
2351         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon): Don't use the
2352         return value from SendMessage(WM_SETICON). That is the old
2353         icon. Fixes GDI resource leak. (#128559, Tim Evans)
2354
2355         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): If we already
2356         have a pointer grab active with a grab cursor set, destroy that
2357         cursor to avoid a GDI resource leak. (#128410, Tim Evans)
2358
2359 2003-12-05  Paisa Seeluangsawat  <paisa@users.sf.net>
2360
2361         * configure.in: Added Thai (th) to ALL_LINGUAS.
2362
2363 Sat Dec  6 01:42:04 2003  Matthias Clasen  <maclas@gmx.de>
2364
2365         * gtk/gtkalignment.c (gtk_alignment_size_allocate): Implement
2366         RTL flipping for GtkAlignment.  (#127585)
2367
2368 Sat Dec  6 01:13:09 2003  Matthias Clasen  <maclas@gmx.de>
2369
2370         * gtk/gtkcombo.c (gtk_combo_get_pos): Fix the position of the 
2371         popup window when in RTL mode.  (#127578)
2372
2373 Fri Dec  5 15:30:16 2003  Manish Singh  <yosh@gimp.org>
2374
2375         * gtk/gtkaccelgroup.c (quick_accel_find): Applied patch from
2376         Ross McFarland <rwmcfa1@neces.com>, initialize *count_p to 0
2377         before doing anything to prevent garbage returns.
2378
2379 Sat Dec  6 00:23:46 2003  Matthias Clasen  <maclas@gmx.de>
2380
2381         * gtk/gtkviewport.c: Implement RTL flipping for 
2382         GtkViewport: Adjust the "gravity" when resizing
2383         This is a bit flickery in RTL mode.  (#107526)
2384
2385 Sat Dec  6 00:22:14 2003  Matthias Clasen  <maclas@gmx.de>
2386
2387         * gtk/gtkscrolledwindow.c: Implement RTL flipping for 
2388         GtkScrolledWindow: the vertical scrollbar shows up on the left
2389         side in RTL mode.  (#107526)
2390
2391 Fri Dec  5 01:58:33 2003  Matthias Clasen  <maclas@gmx.de>
2392
2393         * gtk/gtknotebook.c: Implement RTL flipping for GtkNotebook:
2394         tabs displayed at the top/bottom are rearranged, and tabs on
2395         the left/right are displayed at the opposite edge.  (#96630)
2396
2397 2003-12-04  Mark McLoughlin  <mark@skynet.ie>
2398
2399         * gtk/gtklabel.c: (gtk_label_set_attributes_internal): Allow
2400         gtk_label_set_attributes() take NULL. See bug #128517.
2401
2402 2003-12-03  Federico Mena Quintero  <federico@ximian.com>
2403
2404         * gtk/gtkfilechooserentry.c (struct _GtkFileChooserEntry): Removed
2405         the in_change flag.
2406         (completion_idle_callback): Use a temporary list store and re-set
2407         it on the completion rather than modifying the old one.  We are
2408         re-reading the folder anyway, and this gets rid of non-atomicity
2409         problems.
2410
2411 2003-12-01  Federico Mena Quintero  <federico@ximian.com>
2412
2413         Decouple impl->current_folder from the selection in the folder
2414         tree.  This is so that going to /home/federico/.foo (e.g. from a
2415         bookmark) will work even if show_hidden == FALSE.  The folder tree
2416         needs to be fixed in this case to show such folders explicitly.
2417
2418         * gtk/gtkfilechooserdefault.c
2419         (gtk_file_chooser_default_set_current_folder): When changing
2420         folders, do the entry and list model work here, instead of
2421         tree_selection_changed().
2422         (struct _GtkFileChooserDefault): Added a changing_folder flag
2423         again, dum de dum.
2424         (tree_selection_changed): Use _gtk_file_chooser_set_current_folder_path().
2425
2426 Tue Dec  2 01:01:54 2003  Matthias Clasen  <maclas@gmx.de>
2427
2428         * gtk/gtkiconfactory.h: Remove duplicate declaration of 
2429         gtk_icon_source_set_icon_name().  (#Jeff Franks, #128269)
2430
2431 2003-12-01  Federico Mena Quintero  <federico@ximian.com>
2432
2433         Patch from Hans-Petter Jansson <hpj@ximian.com> to align the
2434         bookmarks buttons with the location entry.
2435
2436         * gtk/gtkfilechooserdefault.c
2437         (gtk_file_chooser_default_constructor): Use a GtkSizeGroup for the
2438         bookmarks buttons and the location entry.
2439
2440 2003-12-01  Federico Mena Quintero  <federico@ximian.com>
2441
2442         * gtk/gtkfilechooserdefault.c (create_shortcuts_tree): Set the
2443         shortcuts tree as a drag destination.
2444         (shortcuts_drag_data_received_cb): New callback.
2445         (get_file_info): Also fetch information on whether the file is a folder.
2446         (add_bookmark_button_clicked_cb): Use error_could_not_add_bookmark_dialog().
2447         (error_could_not_add_bookmark_dialog): New function.
2448         (shortcuts_add_bookmark_from_path): New helper function.
2449         (add_bookmark_button_clicked_cb): Use shortcuts_add_bookmark_from_path().
2450         (shortcuts_row_activated): We no longer need the changing_folder flag.
2451         (struct _GtkFileChooserDefault): Likewise.
2452
2453 Sun Nov 30 17:31:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2454
2455         * gtk/gtktoolbar.c (slide_idle_handler): return TRUE if there are
2456         disappearing placeholders that are still visible.
2457
2458         * gtk/gtktoolbar.c: formatting fixes
2459
2460         * gtk/gtktoolbar.c (struct _ToolbarContent): new bit:
2461         disappearing, for placeholders that are going to disappear.
2462
2463         * gtk/gtktoolbar.c (get_item_size): return 0 for disappearing placeholders
2464
2465 Sat Nov 29 00:55:28 2003  Jonathan Blandford  <jrb@gnome.org>
2466
2467         * gtk/gtktreeview.c (gtk_tree_view_new_column_width): 
2468         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2469         Patch from <chinen@jp.ibm.com> to handle RTL support for column
2470         resizers, #127874
2471
2472 Fri Nov 28 00:26:24 2003  Matthias Clasen  <maclas@gmx.de>
2473
2474         * gtk/gtkfilesystemmodel.c (gtk_file_system_model_finalize): 
2475         Don't use freed memory.  (#127698, Taavi Talvik) 
2476
2477 Fri Nov 28 00:09:10 2003  Matthias Clasen  <maclas@gmx.de>
2478
2479         * gtk/gtkfilechooserentry.c: Remove debug g_print()s. 
2480
2481 Thu Nov 27 22:17:50 2003  Matthias Clasen  <maclas@gmx.de>
2482
2483         * gtk/gtkuimanager.c: Remove debug define.
2484
2485 Thu Nov 27 16:19:03 2003  Tim Janik  <timj@gtk.org>
2486
2487         * gtk/gtkmenu.c: allow accel activation depending on sensitivity
2488         and the attach widget.
2489
2490         * gtk/gtkmenuitem.c: allow accel activation depending on visibility,
2491         sensitivity and the parent menu.
2492
2493         * gtk/gtkwidget.[hc]: introduced ::can-activate-accel signal which
2494         checks whether accelerators may activate a widget. the default handler
2495         demands the widget be sensitive and visible+viewable.
2496
2497         * gtk/gtkaccelgroup.[hc]: export gtk_accel_group_activate().
2498
2499 Tue Nov 25 00:10:05 2003  Matthias Clasen  <maclas@gmx.de>
2500
2501         * gtk/gtkuimanager.c (update_node): Don't show accelerators in
2502         popup menus.  (#127227)
2503
2504 Mon Nov 24 13:47:39 GMT 2003  Tony Gale <gale@gtk.org>
2505
2506         * docs/faq/gtk-faq.sgml: start 2.x Section 4 updates
2507
2508 Mon Nov 24 04:05:15 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2509
2510         * gtk/gtkradiotoolbutton.[ch]
2511         (gtk_radio_tool_button_new_from_widget): Make this function take a
2512         GtkRadioToolButton instead of a GtkWidget. (#127729, Murray
2513         Cumming)
2514
2515 Mon Nov 24 02:34:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2516
2517         * gtk/gtktoolbar.c: remove variables in_dnd and leaving_dnd
2518
2519 Mon Nov 24 02:19:33 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2520
2521         * gtk/gtktoolbar.c: remove variable
2522         n_overflowed_menu_items_when_dnd_started
2523
2524 Mon Nov 24 01:47:10 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2525
2526         Rework sliding algorithm.
2527         - No more weird jumping when items are dragged off and added to
2528         the toolbar,
2529         - More natural item movement
2530
2531         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Many changes. This
2532         function is now responsible for calculating intermediate positions
2533         during item sliding. It is also responsible for starting sliding
2534         if items disappear.  Also turn off expanding when there is an
2535         overflow menu.
2536         (gtk_toolbar_begin_sliding, stop_sliding): New functions.
2537         (slide_idle_handler): New function. All the sliding is now done by
2538         gtk_toolbar_size_allocate(), so the idle handler now just checks
2539         if there is more sliding to be done.
2540         (compute_intermediate_allocation, position): new functions
2541         calculating intermediate steps in the slide animations. The new
2542         animation algorithm uses a constant speed instead of a constant
2543         must-be-finished-within time.
2544         (struct _ToolbarContent): use 
2545         GtkAllocation goal_allocation; and 
2546         GtkAllocation start_allocation; instead of 
2547         gint start/goal_width;
2548
2549         * gtk/gtktoolitem.c (gtk_tool_item_set_tooltip): fix typo in
2550         documentation
2551
2552 Sun Nov 23 22:26:25 2003  Matthias Clasen  <maclas@gmx.de>
2553
2554         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): Make tooltip 
2555         positioning Xinerama-aware.  (#127332)
2556
2557 Fri Nov 21 01:57:21 2003  Matthias Clasen  <maclas@gmx.de>
2558
2559         * gdk/x11/gdkscreen-x11.c (init_xinerama_support): Make monitor
2560         boundaries visible in fake Xinerama mode.
2561
2562 Thu Nov 20 15:41:56 2003  Manish Singh  <yosh@gimp.org>
2563
2564         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): cast to GTK_WIDGET()
2565         for the gtk_widget_hide() call.
2566
2567 Thu Nov 20 14:51:41 2003  Jonathan Blandford  <jrb@redhat.com>
2568
2569         * gtk/gtktreedatalist.c (gtk_tree_data_list_compare_func): Patch
2570         from David Hampton to fix sorting on booleans.
2571
2572 Thu Nov 20 15:48:03 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2573
2574         * gtk/gtksocket.c (gtk_socket_focus): Use gtk_widget_is_focus()
2575         instead of GTK_WIDGET_HAS_FOCUS. (#122327, Owen Taylor. Reported
2576         by Frederic Crozat).
2577
2578 Thu Nov 20 13:10:29 GMT 2003  Tony Gale <gale@gtk.org>
2579
2580         * docs/faq/gtk-faq.sgml: Update Section 3 to 2.x
2581
2582 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
2583
2584         Fixes to problems reported by Iain Holmes:
2585
2586         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Do not
2587         throw up an error dialog if the desktop doesn't exist.
2588         (error_message): Handle the case where there is no real toplevel
2589
2590         yet.
2591         (list_model_filter_func): Always let folders pass through (patch
2592         by Dave Malcolm).
2593
2594 Wed Nov 19 23:19:23 2003  Kristian Rietveld  <kris@gtk.org>
2595
2596         * gtk/gtkcombobox.[ch] (gtk_combo_box_scroll_event): move function
2597         to a somewhat more logical place,
2598         (gtk_combo_box_remove_text): New function (#125262, Owen Taylor).
2599
2600 Wed Nov 19 22:15:01 2003  Kristian Rietveld  <kris@gtk.org>
2601
2602         * gtk/gtkentry.c (gtk_entry_completion_timeout): always resize
2603         the popup when it is visible, popdown when there are less chars
2604         than the minimum key length in the entry,
2605         (gtk_entry_completion_changed): popdown when the entry is empty.
2606
2607         * gtk/gtkentrycompletion.c (gtk_entry_completion_init): set the
2608         size request of the vscrollbar to (-1, 0), to get a nicely sized
2609         completion treeview (Fixes #126573, reported by Piers Cornwell),
2610         (_gtk_entry_completion_resize_popup): show/hide the action_view
2611         based on items.
2612
2613 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
2614
2615         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_init): Turn
2616         off the dialog's separator (thanks to Iain Holmes).
2617
2618 Wed Nov 19 18:15:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2619
2620         * gtk/gtkmenu.c (DEFAULT_POPUP_DELAY): set to 200 instead of 225
2621         * gtk/gtkmenuitem.c (get_minimum_width): Impose a minimum width
2622         on items that have a submenu. (#120104).
2623
2624 Wed Nov 19 18:11:08 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2625
2626         * gtk/gtktoolbar.c (struct _ToolbarContent): Add a new
2627         "ItemState" field indicating the overflowed-ness etc. of the item.
2628         (gtk_toolbar_size_allocate): update the field here.
2629
2630 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
2631
2632         * gtk/gtkfilechooserdefault.c (create_filter): Don't add padding
2633         to the alignment.  Use the HIG-specified spacing between the
2634         filter label and the combo.
2635         (create_filename_entry): Use HIG-specified spacing between the
2636         location label and the entry.
2637         (gtk_file_chooser_default_constructor): Don't use vertical padding
2638         around the filename entry.
2639
2640 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
2641
2642         * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Added a
2643         render_icon virtual method.
2644
2645         * gtk/gtkfilesystem.c (gtk_file_system_render_icon): New function.
2646
2647         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_render_icon):
2648         Implement as a stub for now.
2649
2650         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Use
2651         gtk_file_system_render_icon().
2652         (list_icon_data_func): Likewise.
2653         (toolbar_create): Set the toolbar style to icons only.
2654
2655         * gtk/gtkfilechooser.c (gtk_file_chooser_add_shortcut_folder_uri):
2656         Fix doc comments.
2657
2658 Wed Nov 19 02:18:37 2003  Matthias Clasen  <maclas@gmx.de>
2659
2660         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Call 
2661         gtk_widget_hide(menu) when reattaching the menu.  (#126057) 
2662
2663 Wed Nov 19 00:06:04 2003  Kristian Rietveld  <kris@gtk.org>
2664
2665         * gtk/gtkentrycompletion.c (gtk_entry_completion_selection_changed):
2666         only unselect all items if the treeview has focus. (Fixes bug
2667         reported by Marco Pesenti Gritti).
2668
2669 Tue Nov 18 22:26:30 2003  Kristian Rietveld  <kris@gtk.org>
2670
2671         * gtk/gtkentry.c (gtk_entry_completion_key_press): the total
2672         number of actions is "matches + actions - 1". (Fixes #126572).
2673
2674 Tue Nov 18 21:05:05 2003  Christian Persch  <chp@cvs.gnome.org>
2675
2676         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_inserted): fix
2677         mem leaks (#119435).
2678
2679 Tue Nov 18 20:51:38 2003  Kristian Rietveld  <kris@gtk.org>
2680
2681         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): don't
2682         try to fetch the child back, since we do know that it is already
2683         gone by now (#126493, Marco Pesenti Gritti).
2684
2685 Tue Nov 18 19:47:59 2003  Kristian Rietveld  <kris@gtk.org>
2686
2687         Fixes based on comments from Owen Taylor, #125264.
2688
2689         * gtk/gtkcellview.[ch] (gtk_cell_view_finalize): remove unused
2690         variable,
2691         (gtk_cell_view_set_value), (gtk_cell_view_set_displayed_model): queue
2692         a resize,
2693         (gtk_cell_view_get_size_of_row): new function,
2694         (gtk_cell_view_set_value), (gtk_cell_view_set_valuesv),
2695         (gtk_cell_view_set_values), (gtk_cell_view_set_model),
2696         (gtk_cell_view_set_displayed_row), (gtk_cell_view_get_displayed_row):
2697         s/cellview/cell_view/ in the function definitions, so they match
2698         with the header file.
2699
2700         * gtk/gtkcombobox.c (gtk_combo_box_remeasure): remove the resize
2701         flag again (:, and use gtk_cell_view_get_size_of_row instead of
2702         the measurer, remove _set_size_request call,
2703         (gtk_combo_box_calc_requested_width): use gtk_cell_view_get_size_of_row
2704         instead of the measurer,
2705         (gtk_combo_box_style_set): queue a resize,
2706         (gtk_combo_box_size_request): update of _remeasure call,
2707         (gtk_combo_box_init), (gtk_combo_box_cell_layout_pack_start),
2708         (gtk_combo_box_cell_layout_pack_end),
2709         (gtk_combo_box_cell_layout_clear),
2710         (gtk_combo_box_set_model): get rid of the measurer,
2711         (gtk_combo_box_cell_layout_add_attribute),
2712         (gtk_combo_box_cell_layout_set_cell_data_func),
2713         (gtk_combo_box_cell_layout_clear_attributes): ditto and queue a
2714         resize instead of calling _remeasure.
2715
2716 Mon Nov 17 16:25:04 2003  Manish Singh <yosh@gimp.org>
2717
2718         * gdk-pixbuf/Makefile.am
2719         * modules/input/Makefile.am: Use install-data-hook for
2720         gdk-pixbuf.loaders and gtk.immodules install generation targets.
2721         Fixes #112806.
2722
2723         * gtk/gtkexpander.h: Apply missing declarations from #124449.
2724
2725 Tue Nov 18 00:12:55 2003  Matthias Clasen  <maclas@gmx.de>
2726
2727         Fix for #119555, Peter Zelezny:
2728         
2729         * gdk/gdkdrawable.h: Declare gdk_drawable_copy_to_image.
2730         * gdk/gdkdraw.c (gdk_drawable_copy_to_image): Make public
2731         by removing the _ prefix. 
2732         * gdk/gdkdraw.c, gdk/gdkpixbuf-drawable.c, gdk/gdkpixmap.c, 
2733         gdk/gdkwindow.c: Adjust all callers.
2734
2735 Mon Nov 17 23:36:02 2003  Matthias Clasen  <maclas@gmx.de>
2736
2737         * gtk/gtkaction.c (gtk_action_activate): Only activate if 
2738         the action is sensitive.  (#127187, Christian Persch)
2739
2740 Mon Nov 17 23:23:49 2003  Matthias Clasen  <maclas@gmx.de>
2741
2742         * gtk/gtkcombobox.c: Add mouse wheel support.  (#126517)
2743
2744 Mon Nov 17 22:56:09 2003  Kristian Rietveld  <kris@gtk.org>
2745
2746         * gtk/gtkentryprivate.h: add _gtk_entry_completion_resize_popup.
2747
2748         * gtk/gtkentry.c (gtk_entry_completion_timeout): popup when not
2749         mapped, else resize_popup.
2750
2751         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup),
2752         (_gtk_entry_completion_popup): moved all popup resizing code to
2753         _gtk_entry_completion_resize_popup, and show the window when there
2754         are more than zero items in the completion list again (sigh).
2755
2756 2003-11-17  Mark McLoughlin  <mark@skynet.ie>
2757
2758         Patch from Jaiserca <jaiserca@inf.upv.es> to add a
2759         "use_markup" property. See bug #124449.
2760
2761         * gtk/gtkexpander.c:
2762         (gtk_expander_class_init),
2763         (gtk_expander_init), (gtk_expander_set_property),
2764         (gtk_expander_get_property), (gtk_expander_set_label),
2765         (gtk_expander_set_use_markup),  (gtk_expander_get_use_markup):
2766         Add a "use_markup" property and use it when creating the
2767         child label.
2768
2769 Mon Nov 17 12:58:32 2003  Kristian Rietveld  <kris@gtk.org>
2770
2771         Temporary size requisition fix. Will fix it for real tonight.
2772
2773         * gtk/gtkcombobox.c (gtk_combo_box_remeasure): add a resize flag,
2774         (gtk_combo_box_size_request): use gtk_combo_box_remeasure to determine
2775         a good width for the child,
2776         (gtk_combo_box_cell_layout_add_attribute),
2777         (gtk_combo_box_set_cell_data_func),
2778         (gtk_combo_box_cell_layout_clear_attributes): update.
2779
2780 Mon Nov 17 00:11:21 2003  Kristian Rietveld  <kris@gtk.org>
2781
2782         Fixes #124373, Murray Cumming.
2783
2784         * gtk/gtkcombobox.[ch] (gtk_combo_box_class_init): the model property
2785         is no longer construct only,
2786         (gtk_combo_box_unset_model), (gtk_combo_box_set_model_internal),
2787         (gtk_combo_box_menu_fill): new functions,
2788         (gtk_combo_box_menu_setup), (gtk_combo_box_menu_destroy),
2789         (gtk_combo_box_menu_row_*), (gtk_combo_box_list_setup),
2790         (gtk_combo_box_list_destroy): updated,
2791         (gtk_combo_box_new), (gtk_combo_box_new_with_model): new/changed
2792         functions,
2793         (gtk_combo_box_set_model): is now public, updated,
2794         (gtk_combo_box_get_model): small update.
2795
2796         * gtk/gtkcomboboxentry.[ch] (gtk_combo_box_entry_class_init): the
2797         text_column property is no longer construct only,
2798         (gtk_combo_box_entry_set_text_column): now public,
2799         (gtk_combo_box_entry_new), (gtk_combo_box_entry_new_with_model):
2800         new/changed functions.
2801
2802         * tests/testcombo.c: updated.
2803
2804 Sun Nov 16 22:50:58 2003  Matthias Clasen  <maclas@gmx.de>
2805
2806         Reinstate fixes for (#124212, Marco Pesenti Gritti):
2807         
2808         * gtk/gtkuimanager.c (update_smart_separators): Don't spit 
2809         warnings for popups.
2810         (_gtk_menu_is_empty): Return FALSE for non-menus.
2811
2812 Sun Nov 16 21:48:40 2003  Kristian Rietveld  <kris@gtk.org>
2813
2814         * gtk/gtkcellview.c (gtk_cell_view_finalize): just call
2815         gtk_cell_view_cell_layout_clear instead of trying to free the
2816         structure ourselves here. (#125726, Morten Welinder).
2817
2818 Sun Nov 16 00:35:29 2003  Matthias Clasen  <maclas@gmx.de>
2819
2820         * gtk/gtkfilechooser.[hc]: 
2821         * gtk/gtkentrycompletion.h: Fix parameter name mismatches which
2822         confuse gtk-doc.
2823
2824 2003-11-15  Hans Breuer  <hans@breuer.org>
2825
2826         * gdk/makefile.msc gdk/gdk.def 
2827             gtk/gtk.def gtk/makefile.msc.in : updated
2828         * tests/makefile.msc : added all the new tests
2829
2830         * gtk/gtkfilefilter.c(finalize) : initialize filter
2831         from object not from itself
2832
2833         * gtk/gtkfilesystemwin32.[hc] : copied from gtkfilesystemunix.[hc]
2834         modified as less as posible to have aworking implementation
2835         on win32. There maybe the desire to merge the unchanged pats into
2836         a common base class.
2837         Also implemented a simple glib based bookmark handling, which
2838         is currently missing in gtkfilesystemunix.[hc] but can be copied
2839         over there.
2840         * gtk/gtkfilechooserwidget.c : conditional include gtkfilesystemwin32.h
2841
2842         * gdk/win32/gdkwindow-win32.c : implement 
2843         gdk_window_set_keep_above() and gdk_window_set_keep_below()
2844
2845         * tests/testmerge.c : don't include unistd.h unconditionally,
2846         #define STDOUT_FILENO if it isn't defined
2847
2848         * tests/testfilechooser.c : make it compile on win32
2849
2850 2003-11-15  Tor Lillqvist  <tml@iki.fi>
2851
2852         * gdk/win32/gdkwindow-win32.c (gdk_window_focus): If the window is
2853         maximized, use SW_SHOWMAXIMIZED. (#126986, John Ehresman)
2854
2855 Thu Nov 13 12:55:29 GMT 2003  Tony Gale <gale@gtk.org>
2856
2857         * docs/faq/gtk-faq.sgml: Update the rest of Section 2
2858
2859 Thu Nov 13 01:46:32 2003  Matthias Clasen  <maclas@gmx.de>
2860
2861         * gtk/gtkicontheme.c (gtk_icon_theme_init): Use 
2862         GTK_DATADIR/{icons,pixmaps} instead of 
2863         GTK_DATA_PREFIX/{icons,pixmaps}.  (#123365, Marco Pesenti Gritti)
2864
2865 Wed Nov 12 21:40:10 2003  Matthias Clasen  <maclas@gmx.de>
2866
2867         Changes to improve menu positioning on Xinerama (#108328, #126150):
2868         
2869         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Use the event 
2870         window of the menuitem to determine the monitor. This fixes some
2871
2872         * gtk/gtkmenu.c (struct _GtkMenuPrivate): Add a menu_num field
2873         to store the monitor on which the menu is to be positioned.
2874
2875         * gtk/gtkmenu.[hc] (gtk_menu_position): Store the monitor number
2876         in the GtkMenuPrivate struct and fetch the monitor geometry after
2877         calling the position_func, in case it has been changed.
2878
2879         * gtk/gtkmenu.c (gtk_menu_set_monitor): New function 
2880         to be used in GtkMenuPositionFunc implementations for setting
2881         the monitor_num field in GtkMenuPrivate.
2882
2883         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Call 
2884         gtk_menu_set_monitor.
2885
2886 Wed Nov 12 21:00:10 2003  Matthias Clasen  <maclas@gmx.de>
2887
2888         * gtk/gtkinputdialog.c (gtk_input_dialog_init): Clarify the
2889         label for the empty list. String change.  (#95446, Tomas Ögren)
2890
2891 Wed Nov 12 20:57:50 2003  Matthias Clasen  <maclas@gmx.de>
2892
2893         * gtk/gtkicontheme.h (enum GtkIconLookupFlags): Correct
2894         the definition of the values.  (#123361, Marco Pesenti Gritti)
2895
2896 Wed Nov 12 20:54:02 2003  Matthias Clasen  <maclas@gmx.de>
2897
2898         * gdk/gdkkeyuni.c: Map KP_Separator to ','.
2899         (#122941, Egmont Koblinger)
2900
2901 2003-11-12  Padraig O'Briain  <padraig.obriain@sun.com>
2902
2903         *gtk/gtkcolorsel.c (gtk_color_selection_init): Add tooltip for
2904         opacity entry widget. Change tooltip for opacity widgets. (#126426)
2905
2906 2003-11-12  Padraig O'Briain  <padraig.obriain@sun.com>
2907
2908         * gtk/gtkmenu.c (gtk_menu_popup): Do not let pointer position
2909         affect window menu position when popped from keyboard. (#102660)
2910
2911 Wed Nov 12 01:29:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2912
2913         * gtk/gtktoolbar.c (gtk_toolbar_internal_insert_element): When we
2914         are using the old API, make all items "is_important". That way
2915         BOTH_HORIZ will continue to show both icon and label in old API
2916         mode.
2917
2918 Mon Nov 10 00:40:41 2003  Matthias Clasen  <maclas@gmx.de>
2919
2920         * gtk/gtkeventbox.c (gtk_event_box_set_above_child): 
2921         Remember the new value in all cases.  (#126276, Damon Chaplin)
2922
2923 Sat Nov  8 23:06:02 2003  Matthias Clasen  <maclas@gmx.de>
2924
2925         * demos/gtk-demo/main.c (row_activated_cb): Call the do_
2926         functions with the toplevel as argument.
2927
2928         * demos/gtk-demo/geninclude.pl.in: Change the signature
2929         of GDoDemoFunc to take a widget argument
2930
2931         * demos/gtk-demo/ui_manager.c (do_ui_manager): 
2932         * demos/gtk-demo/tree_store.c (do_tree_store): 
2933         * demos/gtk-demo/textview.c (do_textview): 
2934         * demos/gtk-demo/stock_browser.c (do_stock_browser): 
2935         * demos/gtk-demo/sizegroup.c (do_sizegroup): 
2936         * demos/gtk-demo/pixbufs.c (do_pixbufs): 
2937         * demos/gtk-demo/panes.c (do_panes): 
2938         * demos/gtk-demo/menus.c (do_menus): 
2939         * demos/gtk-demo/list_store.c (do_list_store): 
2940         * demos/gtk-demo/images.c (do_images): 
2941         * demos/gtk-demo/hypertext.c (do_hypertext): 
2942         * demos/gtk-demo/editable_cells.c (do_editable_cells): 
2943         * demos/gtk-demo/drawingarea.c (do_drawingarea): 
2944         * demos/gtk-demo/dialog.c (do_dialog): 
2945         * demos/gtk-demo/colorsel.c (do_colorsel): 
2946         * demos/gtk-demo/changedisplay.c (do_changedisplay): 
2947         * demos/gtk-demo/button_box.c (do_button_box): 
2948         * demos/gtk-demo/appwindow.c (do_appwindow): Take a widget
2949         as argument, and make new windows or dialogs appear on the
2950         same screen.  (#80388)
2951
2952 Sat Nov  8 21:59:30 2003  Matthias Clasen  <maclas@gmx.de>
2953
2954         * gtk/gtkeventbox.c (gtk_event_box_class_init): Let 
2955         visible-window default to TRUE, as documented and 
2956         implemented. (#126270 Damon Chaplin)
2957
2958 Sat Nov  8 01:50:17 2003  Matthias Clasen  <maclas@gmx.de>
2959
2960         * gtk/gtkicontheme.c: 
2961         * gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new): 
2962         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new): 
2963         * gtk/gtkfilechooser.c (gtk_file_chooser_[un]select_all): Mark as
2964         2.4 additions.
2965
2966 2003-11-07  Federico Mena Quintero  <federico@ximian.com>
2967
2968         Changing GtkFileChooserEntry to use GtkEntryCompletion.
2969
2970         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): Create
2971         a GtkListStore for the completion list.  Create a
2972         GtkEntryCompletion and attach it to the chooser entry.
2973         (gtk_file_chooser_entry_finalize): Unref the completion store.
2974         (completion_match_func): New callback for the GtkEntryCompletion.
2975         (completion_idle_callback): Fill the completion store with filenames.
2976
2977 Fri Nov  7 22:55:49 2003  Matthias Clasen  <maclas@gmx.de>
2978
2979         * gtk/gtkwindow.c (gtk_window_set_role): 
2980         * gtk/gtkwindow.c (gtk_window_set_title): 
2981         * gtk/gtkwidget.c (gtk_widget_set_name): 
2982         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_title): 
2983         * gtk/gtkbutton.c (gtk_button_set_label): Make string setters
2984         safe for self-assignment.  (#122745, Soeren Sandmann)
2985
2986 Thu Nov  6 20:41:40 2003  Matthias Clasen  <maclas@gmx.de>
2987
2988         * gtk/gtkstyle.c (gtk_style_attach): Fix doc comment.
2989         (#126369, Olexiy Avramchenko)
2990
2991 Thu Nov  6 00:21:41 2003  Matthias Clasen  <maclas@gmx.de>
2992
2993         * gtk/gtkcolorbutton.c (gtk_color_button_init): 
2994         * gtk/gtkfontbutton.c (gtk_font_button_init): Improve the 
2995         consistency of titles.  (#126193, Damon Chaplin)
2996
2997 Wed Nov  5 22:49:36 2003  Matthias Clasen  <maclas@gmx.de>
2998
2999         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Set torn off 
3000         menus to be transient for the toplevel they were torn off from.
3001         (gtk_menu_get_toplevel): Auxiliary function to find the
3002         toplevel of a menu.  (#54775, Jon-Kare Hellan)
3003
3004 Wed Nov  5 21:07:58 2003  Matthias Clasen  <maclas@gmx.de>
3005
3006         * gtk/gtkpaned.c (gtk_paned_class_init): Add readonly properties
3007         min-position and max-position.  (#58431, Padraig O'Briain)
3008
3009 Wed Nov  5 21:02:26 2003  Matthias Clasen  <maclas@gmx.de>
3010
3011         * gtk/gtkcolorsel.c (update_color): 
3012         (make_label_spinbutton): 
3013         (adjustment_changed): Change the ranges for Saturation and
3014         Value to be 0-100 instead of 0-255, since these axes of HSV
3015         are usually expressed in percent.  (#121519, Gregory Merchan)
3016
3017 Wed Nov  5 08:51:48 GMT 2003  Tony Gale <gale@gtk.org>
3018
3019         * docs/faq/gtk-faq.sgml: More 2.x updates
3020
3021 Tue Nov  4 15:00:33 GMT 2003  Tony Gale <gale@gtk.org>
3022
3023         * docs/faq/gtk-faq.sgml: More 2.x updates, fix
3024         pkg-config command error, update copyright.
3025
3026 2003-11-03  Federico Mena Quintero  <federico@ximian.com>
3027
3028         * gtk/gtkfilechooserdefault.c (error_dialog): Take in a path as
3029         well.  Use a helper function.
3030         (shortcuts_append_home): Display an error box if necessary.
3031         (shortcuts_append_desktop): Likewise.
3032         (add_bookmark_button_clicked_cb): Likewise.
3033         (gtk_file_chooser_default_select_path): Likewise.
3034         (entry_activate): Likewise.
3035         (shortcuts_append_paths): New helper function.
3036         (shortcuts_append_file_system_roots): Use
3037         shortcuts_append_paths().
3038         (shortcuts_append_bookmarks): Likewise.
3039
3040 Mon Nov  3 23:12:41 2003  Matthias Clasen  <maclas@gmx.de>
3041
3042         * gtk/gtkuimanager.c (_gtk_menu_is_empty): Return TRUE if 
3043         menu is NULL.
3044         (update_smart_separators): Remove some unneeded ifs.
3045
3046 Mon Nov  3 22:45:58 2003  Matthias Clasen  <maclas@gmx.de>
3047
3048         * gtk/gtkwindow-decorate.h: Add G_BEGIN_DECLS/G_END_DECLS to make 
3049         these usable in C++. Forgot this file in my Oct 11 commit.
3050
3051 2003-11-03  Federico Mena Quintero  <federico@ximian.com>
3052
3053         * gtk/gtkfilechooserdefault.c (create_shortcuts_tree): Add a stock
3054         icon to the "Add bookmark" button.
3055
3056         * gtk/gtkfilesystemunix.c: Mark missing strings for translation.
3057         * gtk/gtkfilesystemmodel.c: Likewise.
3058         * gtk/gtkfilechooser.c: Likewise.
3059         * gtk/gtkfilechooserdefault.c: Likewise.
3060
3061 Mon Nov  3 20:56:28 2003  Matthias Clasen  <maclas@gmx.de>
3062
3063         * gdk/gdk.c: 
3064         * gdk/gdkinternals.h: 
3065         * gdk/x11/gdkscreen-x11.c (init_xinerama_support): Introduce a
3066         GDK_DEBUG_XINERAMA debug flag, and make it trigger a fake 2x2
3067         Xinerama mode when no actual Xinerama setup is found. 
3068
3069 2003-11-03  Federico Mena Quintero  <federico@ximian.com>
3070
3071         * gtk/gtkfilechooserdefault.c (shortcuts_select_folder): Removed.
3072         (create_shortcuts_tree): Don't call the above.
3073         (bookmarks_changed_cb): Likewise.
3074         (tree_selection_changed): Unselect everything from the shortcuts
3075         list.  This is the behavior that Mac OS has.
3076         (toolbar_add_item): Return the item.
3077         (toolbar_create): Store the up_button in the impl structure.
3078         (toolbar_check_sensitivity): New function to set the sensitivity
3079         of the "Up" button in the toolbar.
3080         (tree_selection_changed): Call toolbar_check_sensitivity().
3081
3082 2003-11-02  Federico Mena Quintero  <federico@ximian.com>
3083
3084         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Do
3085         not set a border width for the toplevel container.
3086         (toolbar_create): New function; create a simple toolbar for the
3087         file chooser.
3088         (gtk_file_chooser_default_constructor): Use a spacing of 12 for
3089         the table, as per the HIG.
3090         (gtk_file_chooser_default_init): Likewise, for the default
3091         implementation's vbox.
3092
3093         * gtk/gtkfilesystem.c (gtk_file_system_get_parent): Added docs to
3094         note that NULL is a valid return value for the parent path.
3095
3096 Sat Nov  1 14:59:27 2003  Owen Taylor  <otaylor@redhat.com>
3097
3098         * gtk/gtkfilechooserdefault.c (shortcuts_row_activated): 
3099         Change on activation, not selection change (temporary
3100         workaround for #125955, needed for keynav, likely
3101         the right UI anyways.)
3102
3103         * gtk/gtkfilechooserdefault.c (shortcuts_select_func): 
3104         Don't allow the separator node to be selected.
3105
3106         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_constructor):
3107         Set the focus chain so that the entry gets focused first.
3108         (Not really right after initial focusing, maybe we
3109         should just have a gtk_file_chooser_focus_entry() that
3110         we call from gtk_file_chooser_dialog on creation.)
3111
3112 Sat Nov  1 12:41:04 2003  Owen Taylor  <otaylor@redhat.com>
3113
3114         * gtk/gtkwindow.c (gtk_window_unfullscreen): Fix a
3115         residual call to gtk_window_get_private().
3116
3117 Sat Nov  1 09:10:13 2003  Owen Taylor  <otaylor@redhat.com>
3118
3119         * gtk/gtkwindow.[ch]: Move above_initially, below_initially
3120         into GtkWindowPrivate structure, fixing ABI breakage
3121         on Win32. (Hans Breuer). Switch GtkWindowPrivate over
3122         to instance-private-data.
3123
3124 Fri Oct 31 02:43:34 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3125
3126         * gtk/gtktoolbar.c (get_item_requisition): delete this function
3127         (toolbar_item_is_homogeneous): cache max_homogeneous_pixels
3128         instead of re-calculating for each item.
3129         (gtk_toolbar_size_allocate): Update comments
3130
3131 Thu Oct 30 22:04:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3132
3133         * gtk/gtktoolbar.c (gtk_toolbar_forall): Only include
3134         placeholders when include_internals is TRUE.
3135
3136 Thu Oct 30 17:57:53 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3137
3138         * gtk/gtktoolbar.c (logical_to_physical): Make it work even when
3139         item 0 is a placeholder. (#125826)
3140         * tests/testtoolbar.c: add an assertion that 
3141         gtk_toolbar_get_nth_item (0) != NULL
3142
3143 Thu Oct 30 17:40:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3144
3145         * gtk/gtktoolbar.c (logical_to_physical): Make it work for
3146         logical == 0.(#125826)
3147
3148 Thu Oct 30 16:20:58 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3149
3150         * gtk/gtktoolbar.c (logical_to_physical): Make sure we actually
3151         return the index of a real item.
3152         (get_nth_item) assert that the returned items is not a
3153         placeholder.  (#125826, Marco Pesenti Gritti).
3154         
3155 2003-10-29  Federico Mena Quintero  <federico@ximian.com>
3156
3157         * gtk/gtkcellrendererseptext.c
3158         (gtk_cell_renderer_sep_text_render): Only paint a separator if the
3159         text is NULL, rather than also doing it if it is an empty string.
3160
3161 Wed Oct 29 15:40:26 2003  Owen Taylor  <otaylor@redhat.com>
3162
3163         * gtk/gtkmessagedialog.c (gtk_message_dialog_new/
3164         gtk_message_dialog_new_with_format): Allow NULL
3165         for message_format, as described in the docs and
3166         as worked previously. (#125759, Richard Hult)
3167
3168         * gtk/gtkmessagedialog.c (gtk_message_dialog_new_with_markup):
3169         Use g_markup_vprintf_escaped() to escape arguments.
3170
3171         * gtk/gtkmessagedialog.[ch]: Add gtk_message_dialog_set_markup()
3172         so there is some way to set literal markup.
3173
3174 Wed Oct 29 15:01:32 2003  Owen Taylor  <otaylor@redhat.com>
3175  
3176         * gdk/x11/gdkimage-x11.c (_gdk_x11_copy_to_image): Move
3177         the call to gdk_error_trap_pop() to the right place,
3178         fixing a problem where we'd pop() too many times 
3179         when bailing out. (#123302, Thomas Leonard)
3180         
3181 Wed Oct 29 12:50:02 2003  Owen Taylor  <otaylor@redhat.com>
3182
3183         * gtk/gtkfilechooserutils.c (delegate_set_current_folder): 
3184         Fix infinite recursion. (#125679, Christian Persch)
3185
3186 Wed Oct 29 13:29:15 GMT 2003  Tony Gale <gale@gtk.org>
3187
3188         * docs/faq/gtk-faq.sgml: further 2.x updates:
3189         mirrors,compiling,g_main_context_iteration
3190
3191 Wed Oct 29 02:54:35 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3192
3193         * gtk/gtktoolbar.[ch] (gtk_toolbar_set_drop_highlight_item): Add this
3194         function; remove gtk_toolbar_highlight_drop_location() and
3195         gtk_toolbar_unhighlight_drop_location().
3196
3197         Also fix bug where the number of overflowed items were miscounted.
3198
3199 Tue Oct 28 12:20:16 2003  Owen Taylor  <otaylor@redhat.com>
3200
3201         * gtk/gtkwindow.c (gtk_window_has_toplevel_focus): Remove
3202         some accidentally committed duplicate code.
3203
3204 Tue Oct 28 17:06:17 GMT 2003  Tony Gale <gale@gtk.org>
3205
3206         * docs/faq/gtk-faq.sgml: Update info on compiling GTK+
3207
3208 Tue Oct 28 10:34:24 2003  Owen Taylor  <otaylor@redhat.com>
3209
3210         * gtk/gtkwindow.[ch] (gtk_window_is_active, 
3211         gtk_has_toplevel_focus): Add getters corresponding to
3212         the is_active and has_toplevel_focus properties.
3213         (#122531)
3214
3215 2003-10-28  Mark McLoughlin  <mark@skynet.ie>
3216
3217         * gtk/gtkexpander.c:
3218         (gtk_expander_class_init): hook up the destroy handler.
3219         (gtk_expander_destroy), (gtk_expander_unrealize):
3220         remove the expand/collapse timeout on destroy instead
3221         of unrealize to avoid leaving the expander in a inconsistent
3222         state when unrealizing during animation.
3223         (gtk_expander_start_animation): remove realized check.
3224         (gtk_expander_set_expanded): if the widget isn't realized,
3225         expand immediately.
3226
3227 Tue Oct 28 09:44:16 2003  Owen Taylor  <otaylor@redhat.com>
3228
3229         * gtk/gtkxembed.c (_gtk_xembed_send_focus_message): Silently
3230         do nothing when recipient is NULL, as described in the
3231         doc comment. (#123107, Thomas Leonard)
3232
3233 Tue Oct 28 09:21:29 2003  Owen Taylor  <otaylor@redhat.com>
3234
3235         * gtk/gtkmain.c (gtk_check_version): Move docs inline,
3236         rewrite docs, mention memory management for the return
3237         value. (Partly addresses #125549, Michael Natterer)
3238
3239 2003-10-28  Padraig O'Briain  <padraig.obriain@sun.com>
3240
3241         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_remove_filter):
3242         Change index to filter_index to fix compilation error.
3243
3244         * gtk/gtkfilesystem.h: Correct definition of gtk_file_path_get_string.
3245
3246 Mon Oct 27 15:47:58 2003  Manish Singh  <yosh@gimp.org>
3247
3248         * gdk/x11/gdkscreen-x11.c: #include <X11/extensions/Xrandr.h> if
3249         we have RandR support, for XRRUpdateConfiguration declaration.
3250
3251         * gtk/gtkfilefilter.c: #include "gtkprivate.h" for _gtk_fnmatch
3252         declaration.
3253
3254         * gtk/gtkuimanager.c (gtk_ui_manager_add_ui_from_file): Make
3255         length a gsize variable, since that's what g_file_get_contents()
3256         expects.
3257
3258 Mon Oct 27 12:18:49 2003  Owen Taylor  <otaylor@redhat.com>
3259
3260         * NEWS: Fix attribution for above/below EWMH work.
3261
3262 Sat Oct 25 23:30:13 2003  Matthias Clasen  <maclas@gmx.de>
3263
3264         * gtk/gtkactiongroup.c (gtk_action_group_class_init): Add "name" 
3265         as a construct-only property.  (#125475, Murray Cumming)
3266
3267 Thu Oct 23 21:55:10 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3268
3269         Fix bug 116297 and 125472
3270         
3271         * gtk/gtktoolbar.c (gtk_toolbar_highlight_drop_location): Make
3272         this function take an index and a GtkToolItem.
3273
3274         * tests/testtoolbar.c (main): Make "Show Arrow" default to
3275         true. Make one of the separators !draw and expand.
3276         Update for new highlight_drop_location() API.
3277
3278         * gtk/gtktoolitem.[ch]: Remove "pack_end" property
3279
3280         * gtk/gtktoolbar.h: Formatting fixes.
3281
3282         * gtk/gtktoolbar.c: Remove "pack_end" child property. Allow
3283         separator tool items to expand.
3284         (logical_to_physical, physical_to_logical): Fix off-by-one errors
3285         (Fix #125472, Marco Pesenti Gritti)
3286
3287         * gtk/gtkseparatortoolitem.[ch]: Add new "draw" property.
3288         (gtk_separator_tool_item_expose) only draw if "draw" is TRUE. Also
3289         return FALSE, not TRUE.
3290         (gtk_separator_too_item_{set|get}_property,
3291         (gtk_separator_tool_item_{set|get}_draw): new functions
3292
3293 Fri Oct 24 16:54:04 2003  Owen Taylor  <otaylor@redhat.com>
3294
3295         * === Released 2.3.0 ===
3296
3297         * configure.in: Remove a stray comma.
3298
3299         * README.in: Fix a few notes about Xft 1 and pango-1.0.
3300
3301         * NEWS: Finish updates for 2.3.0.
3302
3303         * po/Makefile.in.in: Update to latest GLib version.
3304
3305 Fri Oct 24 20:31:35 2003  Kristian Rietveld  <kris@gtk.org>
3306
3307         * gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
3308         gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch],
3309         gtk/gtktreemodelfilter.[ch]: Fix licensing (I managed to put it
3310         under GPL licensing instead of LGPL...). (Fixes #125381, Soeren
3311         Sandmann).
3312
3313 Fri Oct 24 20:22:40 2003  Kristian Rietveld  <kris@gtk.org>
3314
3315         * gtk/gtktreemodelfilter.h: add padding to the class structure.
3316
3317 2003-10-23  Federico Mena Quintero  <federico@ximian.com>
3318
3319         * gtk/gtkfilechooser.c (gtk_file_chooser_get_preview_uri): Fixed docs.
3320         (gtk_file_chooser_remove_filter): Likewise.
3321         (gtk_file_chooser_select_all): Added docs.
3322         (gtk_file_chooser_unselect_all): Likewise.
3323
3324         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new): Added docs.
3325
3326         * gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new): Added docs.
3327
3328 Thu Oct 23 23:22:15 2003  Matthias Clasen  <maclas@gmx.de>
3329
3330         * gtk/gtkfilefilter.c: 
3331         * gtk/gtkfilechooser.c: Add "Since: 2.4" to all API doc comments.
3332
3333 Thu Oct 23 22:33:47 2003  Matthias Clasen  <maclas@gmx.de>
3334
3335         * gtk/gtkfilefilter.c (gtk_file_filter_new): Fix doc markup.
3336
3337 Thu Oct 23 21:49:05 2003  Matthias Clasen  <maclas@gmx.de>
3338
3339         * NEWS: Remove a few duplicates, group the menu changes.
3340
3341 Thu Oct 23 21:12:50 2003  Kristian Rietveld  <kris@gtk.org>
3342
3343         * NEWS: Updates for 2.3.0; changed header to match the style we used
3344         for 2.1.0.
3345
3346 Thu Oct 23 20:47:44 2003  Matthias Clasen  <maclas@gmx.de>
3347
3348         * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Actually
3349         assign the new leader.  (#125168, Mariano Suarez-Alvarez)
3350
3351 Thu Oct 23 20:21:16 2003  Kristian Rietveld  <kris@gtk.org>
3352
3353         * gtk/gtkcelllayout.c, gtk/gtkcellview.c gtk/gtkcellviewmenuitem.c,
3354         gtk/gtkcombobox.c, gtk/gtkcomboboxentry.c, gtk/gtkentrycompletion.c,
3355         gtk/gtktreemodelfilter.c, gtk/gtkcellrenderertoggle.c: Fix includes.
3356
3357 Thu Oct 23 15:13:56 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3358
3359         * NEWS: Partial update for 2.3.0.
3360
3361 Thu Oct 23 01:09:04 2003  Owen Taylor  <otaylor@redhat.com>
3362
3363         * gtk/gtkfilechooserdefault.c: Convert GtkOptionMenu to
3364         GtkComboBox.
3365
3366 Wed Oct 22 23:20:04 2003  Owen Taylor  <otaylor@redhat.com>
3367
3368         * gtk/gtkfilechooser.[ch] gtk/gtkfilefilter.[ch] 
3369         gtk/gtkfilechooserwidget.[ch] gtk/gtkfilechooserdialog.[ch]:
3370         gtk/gtkfilechooserutils.c gtk/gtkfilechooserprivate.[ch]:
3371         Basic framework for the new file selector widget.
3372
3373         * gtk/gtkfilechooserdefault.[ch] gtk/gtkcellrenderersep.[ch] 
3374         gtk/gtkfilechooserentry.[ch] gtk/gtkfilesystemmodel.[ch]:
3375         Initial implementation of the GtkFileChooser user interface.
3376
3377         * gtk/gtkfilesystemunix.[ch]: GtkFileSystem implementation
3378         for Unix files.
3379
3380         * configure.in gtk/Makefile.am gtk/xdgmime: Build code
3381         for freedesktop.org MIME system on Unix.
3382
3383         * tests/testfilechooser.c: Test program for GtkFileChooser
3384
3385         * tests/prop-editor.c: Add support for properties on interfaces.
3386
3387 Tue Oct 21 16:12:51 2003  Owen Taylor  <otaylor@redhat.com>
3388
3389         * demos/gtk-demo/menus.c (do_menus): Fix some unused
3390         variables.
3391
3392         * gtk/gtkmain.c (_gtk_get_lc_ctype): Fix an unused
3393         variable warning.
3394
3395 Thu Oct 23 00:04:50 2003  Matthias Clasen  <maclas@gmx.de>
3396
3397         * NEWS: Partial update for 2.3.0.
3398
3399 Tue Oct 21 22:07:12 2003  Kristian Rietveld  <kris@gtk.org>
3400
3401         * gtk/gtktreeview.c (gtk_tree_view_real_move_cursor): set
3402         ctrl_pressed and shift_pressed according to the current event
3403         state (if there is one). (Fixes #125063, reported by Sebastien Bacher).
3404
3405 Mon Oct 20 23:24:27 2003  Kristian Rietveld  <kris@gtk.org>
3406
3407         * gtk/gtkentry.c (gtk_entry_key_press): remove the completion
3408         timeout when the user pressed on Enter/ESC. Fixes the bug where the
3409         completion popup popped up after the user pressed on Enter (which is
3410         just weird). Reported by the Epiphany people (all of them).
3411
3412 Mon Oct 20 20:27:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3413
3414         Add support for OS X like sliding of toolbar items during drag and
3415         drop, (#110919, Dave Bordoley)
3416
3417         Make dnd highlighting the responsibility of the
3418         application. (Fixes #116298, Owen Taylor)
3419
3420         * gtk/gtktoolbar.h: Add prototypes for new API.
3421         
3422         * gtk/gtktoolbar.c
3423         (physical_to_logical, logical_to_physical): new functions
3424         converting between "position including placeholders" and "position
3425         excluding placeholders".
3426         (gtk_toolbar_class_init): remove drag_leave and drag_motion
3427         handlers
3428         (struct _ToolbarContent): new struct containing information
3429         related to toolbar items.
3430         (gtk_toolbar_highlight_drop_location): new public function
3431         (gtk_toolbar_unhighlight_drop_location): new public function
3432         
3433         * tests/testtoolbar.c
3434         (toolbar_drag_motion, toolbar_drag_leave): new functions
3435         (main): connect to dnd signals.  Make the "New" item expand to
3436         make drag and drop more exciting.
3437
3438 Wed Oct 15 22:39:23 2003  Kristian Rietveld  <kris@gtk.org>
3439
3440         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): it's
3441         _set_active, not _set_active_item.
3442
3443 Wed Oct 15 22:31:09 2003  Kristian Rietveld  <kris@gtk.org>
3444
3445         * gtk/gtkcombobox.h: add padding to the class structure.
3446         * gtk/gtkcomboboxentry.h: ditto.
3447         * gtk/gtkentrycompletion.h: ditto.
3448
3449 Wed Oct 15 22:04:59 2003  Kristian Rietveld  <kris@gtk.org>
3450
3451         * gtk/gtkcombobox.c (gtk_combo_box_get_active),
3452         (gtk_combo_box_set_active): mention in the docs that -1 is a valid
3453         value and what it means.
3454
3455         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): set the active
3456         item to -1 (default),
3457         (gtk_combo_box_entry_active_changed): do nothing when the index is
3458         < 0.
3459
3460 Tue Oct 14 16:10:21 2003  Jonathan Blandford  <jrb@redhat.com>
3461
3462         * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function
3463         to set the active row by iter.
3464
3465         * gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function
3466         to get the active row by iter.
3467
3468 2003-10-13  Federico Mena Quintero  <federico@ximian.com>
3469
3470         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Don't do
3471         operations on windows if the tree view is not mapped.
3472         (gtk_tree_view_button_press): Compare equal types of pointers, not
3473         GtkWidget* vs. GtkTreeView*.
3474
3475 Mon Oct 13 21:01:43 2003  Kristian Rietveld  <kris@gtk.org>
3476
3477         * gtk/gtkentrycompletion.c (gtk_entry_completion_popup): remove
3478         the reset of first_sel_changed, as after the first popup the treeview
3479         will always have a row selected and will thus not focus_to_cursor.
3480
3481         * gtk/gtkentry.c (keyval_is_cursor_move): new function to determine
3482         whether the keyval should move the completion selection cursor (used
3483         to avoid ending up with extreme cluttered code), also added
3484         all KP_ equivalents of the keys here,
3485         (gtk_entry_completion_key_press): Keynav tweaks based on comments
3486         from Dave Bordoley and Marco Pesenti Gritti; add the -1 state
3487         as possible current selection, implement Home/End keys, modified
3488         the down key to stop cycling. Maybe page up/down should be implemented
3489         at some later time.
3490
3491 Mon Oct 13 20:58:07 2003  Matthias Clasen  <maclas@gmx.de>
3492
3493         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon): Make it work 
3494         as documented when pixmap or mask is NULL.  (#124081) 
3495
3496 Mon Oct 13 20:21:38 2003  Kristian Rietveld  <kris@gtk.org>
3497
3498         * gtk/gtkentry.c (gtk_entry_set_text): I overlooked a return when
3499         I was adding the signal block/unblock code. Oops. (Noticed by
3500         Marco Pesenti Gritti).
3501
3502 Mon Oct 13 20:21:55 2003  Kristian Rietveld  <kris@gtk.org>
3503
3504         * demos/testpixbuf-scale.c: enable GTK_DISABLE_DEPRECATED again,
3505         (set_interp_type), (main): port over from option menu to GtkComboBox.
3506
3507 Mon Oct 13 19:41:55 2003  Kristian Rietveld  <kris@gtk.org>
3508
3509         * tests/testmenus.c: Still uses option menus, so turn off
3510         GTK_DISABLE_DEPRECATED.
3511
3512 Sun Oct 12 01:10:29 2003  Matthias Clasen  <maclas@gmx.de>
3513
3514         * gtk/gtkalignment.[hc]: 
3515         * gtk/gtkcombobox.[hc]: 
3516         * gtk/gtkcomboboxentry.[hc]: 
3517         * gtk/gtktreemodelfilter.[hc]: Move GET_PRIVATE macros
3518         from header to implementation.
3519
3520 Sun Oct 12 00:18:02 2003  Matthias Clasen  <maclas@gmx.de>
3521
3522         * tests/testtreeview.c: 
3523         * demos/testpixbuf-scale.c: 
3524         * tests/prop-editor.c: These files still use option menus,
3525         so turn off GTK_DISABLE_DEPRECATED to fix the build. 
3526
3527 Sat Oct 11 23:14:36 2003  Matthias Clasen  <maclas@gmx.de>
3528
3529         * gtk/gtkactiongroup.h: 
3530         * gtk/gtkaction.h: 
3531         * gtk/gtkradioaction.h: 
3532         * gtk/gtkradiotoolbutton.h: 
3533         * gtk/gtkseparatortoolitem.h: 
3534         * gtk/gtktoggleaction.h: 
3535         * gtk/gtktoolitem.h: 
3536         * gtk/gtkuimanager.h: Add G_BEGIN_DECLS/G_END_DECLS to make 
3537         these usable in C++.  (#124351, Murray Cumming)
3538
3539 Sat Oct 11 19:09:05 2003  Kristian Rietveld  <kris@gtk.org>
3540
3541         * gtk/gtkentry.c (gtk_entry_set_text): Check if completion is
3542         non-NULL before accessing it. Oops.
3543
3544 Sat Oct 11 15:47:03 2003  Kristian Rietveld  <kris@gtk.org>
3545
3546         * gtk/gtkentrycompletion.[ch] (gtk_entry_completion_insert_action),
3547         (gtk_entry_completion_insert_action_text),
3548         (gtk_entry_completion_insert_action_markup): the gchar* parameters
3549         should be const (pointed out by both Marco Pesenti Gritti and
3550         Murray Cumming (#124356).
3551
3552 Sat Oct 11 15:37:19 2003  Kristian Rietveld  <kris@gtk.org>
3553
3554         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate): for the custom
3555         child list mode, allocate the height allocation->height to the
3556         button instead of the height requested by the button. (Tiny
3557         size allocation screwup noticed by Macro Pesenti Gritti).
3558
3559 Sat Oct 11 15:23:27 2003  Kristian Rietveld  <kris@gtk.org>
3560
3561         Fixes based on comments from Marco Pesenti Gritti.
3562
3563         * gtk/gtkentry.c (gtk_entry_set_text): block the completion changed
3564         signal handler, avoids the completion popup to popup when text is
3565         set programmatically in most cases (we actually have to handle this
3566         in the _editable functions as well, but that will break popping up
3567         when the user actually typed something :),
3568         (gtk_entry_completion_key_press): when handling enter, bail out
3569         when nothing has been selected,
3570         (gtk_entry_completion_changed): don't popdown when the entry content
3571         changed.
3572
3573         * gtk/gtkentrycompletion.c (gtk_entry_completion_init),
3574         (gtk_entry_completion_selected_changed): unselect_all on the
3575         first selected changed signal. Avoids having a default row selected,
3576         (_gtk_entry_completion_popup): don't select the first row by default.
3577
3578         * gtk/gtkentryprivate.h (struct _GtkEntryCompletionPrivate): add a
3579         first_sel_changed field.
3580
3581 Fri Oct 10 23:02:58 2003  Matthias Clasen  <maclas@gmx.de>
3582
3583         * demos/gtk-demo/menus.c: Replace GtkItemFactory by GtkUIManager 
3584         in the intro (again).
3585
3586 Fri Oct 10 22:50:05 2003  Matthias Clasen  <maclas@gmx.de>
3587
3588         Fixes for (#124212, Marco Pesenti Gritti):
3589         
3590         * gtk/gtkuimanager.c (update_smart_separators): Don't spit 
3591         warnings for popups.
3592         (_gtk_menu_is_empty): Return FALSE for non-menus.
3593
3594 Fri Oct 10 19:10:12 2003  Kristian Rietveld  <kris@gtk.org>
3595
3596         * gtk/gtkcombo.h: Deprecate.
3597         * gtk/gtkoptionmenu.h: Ditto.
3598
3599         * gtk/gtkcombobox.c (gtk_combo_box_size_request),
3600         (gtk_combo_box_size_allocate): Rework, things behave better now. Still
3601         needs some work on requesting enough size when taking the items in
3602         the list into account.
3603
3604         * gtk/gtkfilesel.c: put gtkoptionmenu.h include inside "enable
3605         deprecated" guards.
3606         * gtk/gtkinputdialog.c: ditto.
3607         * gtk/gtkitemfactory.c: ditto.
3608         * gtk/gtkoptionmenu.c: ditto.
3609
3610         * demos/gtk-demo/menus.c: remove the option menu.
3611         * demos/gtk-demo/sizegroup.c: replace the option menus with
3612         GtkComboBox.
3613         * demos/gtk-demo/textview.c: ditto.
3614         (A general GtkComboBox demo will be added later on).
3615
3616 Wed Oct  8 00:06:17 2003  Matthias Clasen  <maclas@gmx.de>
3617
3618         * demos/gtk-demo/ui_manager.c (activate_radio_action): New
3619         callback to propertly report radio actions.
3620
3621         * demos/gtk-demo/ui_manager.c (do_ui_manager): Use it here.
3622
3623 Tue Oct  7 23:23:05 2003  Matthias Clasen  <maclas@gmx.de>
3624
3625         * gtk/gtkplug.c (xembed_set_info): Put the supported protocol
3626         version in in the right field of the _XEMBED_INFO property.  
3627         (#123885, Denis Mikhalkin)
3628
3629 Mon Oct  6 14:18:47 2003  Jonathan Blandford  <jrb@redhat.com>
3630
3631         * gtk/gtkexpander.c (gtk_expander_animation_timeout): only show
3632         the child if we have one.
3633
3634         (gtk_expander_button_release): use
3635         gtk_widget_activate instead.
3636
3637 Mon Oct  6 21:05:46 2003  Matthias Clasen  <maclas@gmx.de>
3638
3639         * gtk/gtktable.c (gtk_table_class_init): Start the blurb for 
3640         "right_attach" with a capital.  (#123945, Christian Rose)
3641
3642 Sun Oct  5 23:59:03 2003  Matthias Clasen  <maclas@gmx.de>
3643
3644         * tests/testsocket.c (child_read_watch): Remove an
3645         extraneous unref.  (#122336, Frederic Crozat)
3646
3647 Sun Oct  5 22:38:22 2003  Matthias Clasen  <maclas@gmx.de>
3648
3649         * gtk/gtkeventbox.c (gtk_event_box_class_init): Trim 
3650         whitespace in "visible-window" blurb.  (#123910, Christian Rose)
3651
3652 Sun Oct  5 00:53:15 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3653
3654         * gtk/gtktoolbar.c (gtk_toolbar_list_children_in_focus_order):
3655         focus arrow before pack_end items (#123851, Matthias Clasen)
3656
3657 Fri Oct  3 20:50:48 2003  Kristian Rietveld  <kris@gtk.org>
3658
3659         * gtk/gtkcombobox.c (gtk_combo_box_set_model): only set the model
3660         on ->priv->cell_view if ->priv->cell_view is non-NULL.
3661
3662         * gtk/gtkcomboboxentry.c: include gtkintl.h, add text_renderer
3663         field to GtkComboBoxEntryPrivate,
3664         (gtk_combo_box_entry_class_init), (gtk_combo_box_entry_init),
3665         (gtk_combo_box_entry_set_property), (gtk_combo_box_entry_get_property),
3666         (gtk_combo_box_entry_set_text_column), (gtk_combo_box_entry_new): add
3667         a construct-only "text_column" property and reorder code to use it
3668         and support inheriting this widget.
3669
3670 Thu Oct  2 23:28:02 2003  Kristian Rietveld  <kris@gtk.org>
3671
3672         * gtk/gtkcombobox.c: Added API doc comments.
3673
3674         * gtk/gtkcomboboxentry.c: Ditto.
3675
3676 2003-10-02  Matthias Clasen  <maclas@gmx.de>
3677
3678         * gtk/gtktoggleaction.c: Documentation tweaks.
3679
3680 Wed Oct  1 22:43:40 2003  Kristian Rietveld  <kris@gtk.org>
3681
3682         * gtk/gtkcellview.[ch]: implement the GtkCellLayout interface, drop
3683         packing/attribute/cell data functions from the header,
3684         (gtk_cell_view_set_cell_data): added support for cell data funcs.
3685
3686         * gtk/gtkcombobox.[ch]: implement the GtkCellLayout interface, drop
3687         packing/attribute/cell data functions from the header, implemented
3688         cell data func support.
3689
3690         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_new): updated
3691         for the move to GtkCellLayout.
3692
3693         * tests/testcombo.c (create_combo_box_grid_demo), (main): ditto.
3694
3695 2003-10-01  Matthias Clasen  <maclas@gmx.de>
3696
3697         * gtk/gtkaction.c (gtk_action_class_init): 
3698         (gtk_action_[gs]et_property): Introduce a separate
3699         "hide_if_empty" property for empty menu handling.
3700         (_gtk_action_sync_menu_visible): ...and use it here.
3701
3702         * tests/testmerge.c (main): ...and here.
3703
3704         * gtk/gtktoolitem.c (gtk_tool_item_class_init): Fix signal doc 
3705         comments to pacify gtk-doc.
3706
3707         * gtk/gtkmain.c: Doc formatting tweaks.
3708
3709         * gtk/gtktoolitem.c (gtk_tool_item_set_is_important): Fix a typo.
3710
3711         * gtk/gtkcheckmenuitem.h (gtk_check_menu_item_set_draw_as_radio): 
3712         Use the same parameter names as in .c file, to pacify gtk-doc.
3713
3714         * gtk/gtktoggletoolbutton.[hc]: 
3715         * gtk/gtktoolbutton.[hc]: 
3716         * gtk/gtktoolitem.[hc]:
3717         * gtk/gtktoolbar.[hc]: 
3718         * gtk/gtkcolorbutton.[hc]: 
3719         * gtk/gtkfontbutton.[hc]: 
3720         * gtk/gtkalignment.[hc]: Define GET_PRIVATE macros in the 
3721         source, not in the header.
3722
3723         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_[sg]et_draw_as_radio): 
3724         Document these as 2.4 API additions.
3725
3726 Tue Sep 30 23:42:56 2003  Kristian Rietveld  <kris@gtk.org>
3727
3728         * gtk/gtkentry.c (gtk_entry_set_completion),
3729         (gtk_entry_get_completion): Add API doc comments.
3730
3731         * gtk/gtkentrycompletion.c: Fix #includes and add API doc comments.
3732
3733 Tue Sep 30 23:12:34 2003  Kristian Rietveld  <kris@gtk.org>
3734
3735         * gtk/gtktreemodelfilter.c: Add "Since: 2.4" to all API doc comments.
3736
3737 Tue Sep 30 22:59:58 2003  Kristian Rietveld  <kris@gtk.org>
3738
3739         * gtk/gtktreeviewcolumn.c: Some API doc comment fixes.
3740
3741         * gtk/gtkcellayout.c: Fix #include and oooooh API doc comments!
3742
3743 2003-09-30  Matthias Clasen  <maclas@gmx.de>
3744
3745         * tests/merge-*.ui: 
3746         * tests/testmerge.c: Test handling of empty menus.
3747
3748         * gtk/gtkuimanager.c (_gtk_menu_is_empty): New function to determine
3749         whether a menu is empty. Used in gtkaction.c.
3750         (update_smart_separators): Also update the visibility of empty menus.
3751         (update_node): When creating a new menu proxy, insert an "Empty" menu 
3752         item which only gets shown if the menu is empty. 
3753
3754         * gtk/gtkaction.c (gtk_action_class_init): Document the meaning of
3755         "is_important" for menu proxies.
3756         (_gtk_action_sync_menu_visible): New function to sync the visibility
3757         of menu proxies. Used in gtkuimanager.c.
3758         (gtk_action_sync_visible): New function to sync the visibility of 
3759         proxies.
3760
3761 Tue Sep 30 21:43:34 2003  Kristian Rietveld  <kris@gtk.org>
3762
3763         * gtk/gtkcombobox.c (gtk_combo_box_menu_button_press): set
3764         popup_in_progress to TRUE,
3765         (gtk_combo_box_menu_show): and back to FALSE here; the menu now
3766         won't disappear on the first button release. (Reported by Matthias
3767         Clasen).
3768
3769 Tue Sep 30 21:08:43 2003  Kristian Rietveld  <kris@gtk.org>
3770
3771         * gtk/gtkcombobox.c (gtk_combo_box_init): actually show the child.
3772
3773         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): ditto. (#123543,
3774         Marco Pesenti Gritti).
3775
3776 2003-09-30  Murray Cumming  <murrayc@usa.net>
3777  
3778         * gtk/gtkcellrenderer.h: The render vfunc takes a GdkDrawable*
3779         instead of a GdkWindow*, because that what it is given. The 
3780         documentation was already correct. This should cause no API/ABI
3781         breakage with C compilers.
3782         * gtk/gtkcellrenderertext.c, gtkcellrendererpixbuf.c, 
3783         gtkcellrenderertogger.c: Updated the declarations of the render vfunc
3784         implementation accordingly.
3785
3786 2003-09-30  Matthias Clasen  <maclas@gmx.de>
3787
3788         * gdk/gdkkeys.c (gdk_keymap_class_init): Document the
3789         "direction-changed" and "keys-changed" signals.
3790
3791         * gdk/gdkscreen.c (gdk_screen_class_init): Document the 
3792         "size-changed" signal.
3793
3794         * gdk/gdkdisplaymanager.c (gdk_display_manager_class_init): 
3795         Document the "display-opened" signal.
3796
3797         * gdk/gdkdisplay.c (gdk_display_close): Doc tweak.
3798         (gdk_display_class_init): Document the "closed" signal.
3799
3800 Sat Sep 27 16:02:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3801
3802         * gtk/gtktextview.[ch]: rename property tab_moves_focus to
3803         accepts_tab. (#122709 again).
3804
3805 2003-09-27  Matthias Clasen  <maclas@gmx.de>
3806
3807         * gtk/gtkwindow.c (gtk_window_new):
3808         * gtk/gtkitemfactory.c (gtk_item_factory_new): Document 
3809         the fact that the newly created object does not come with 
3810         a floating reference.  (#103068, patch by Frederic Lespez)
3811         
3812         * gtk/gtkitemfactory.h: Deprecate GtkItemFactory in favor 
3813         of GtkUIManager. Just leave GtkTranslateFunc undeprecated, 
3814         since GtkActionGroup uses it.
3815
3816         * tests/testtext.c: Turn off GTK_DISABLE_DEPRECATED, since
3817         this test uses the soon-to-be-deprecated GtkItemFactory.
3818
3819         * demos/gtk-demo/Makefile.am (demos): Add ui_manager.c,
3820         remove item_factory.c
3821
3822         * demos/gtk-demo/ui_manager.c: Duplicate of item_factory.c 
3823         using GtkUIManager instead of GtkItemFactory.
3824
3825         * tests/testmerge.c: Demonstrate the use of the 
3826         connect-proxy signal.
3827
3828         * gtk/gtkaction.c (connect_proxy): Add connect-proxy and 
3829         disconnect-proxy signals to do small customizations 
3830         like displaying tooltips in the statusbar without 
3831         custom actions.  (#122894, Philip Langdale)
3832
3833         * gtk/gtkuimanager.c (update_node): Don't leak tooltip.
3834
3835 Fri Sep 26 23:49:44 2003  Kristian Rietveld  <kris@gtk.org>
3836
3837         Landing the new ComboBox. Note that only gtkcombobox.h and
3838         gtkcomboboxentry.h are public.
3839
3840         * gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
3841         gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch]: new files.
3842
3843         * gtk/Makefile.am, gtk/gtk.h: adding the new files.
3844
3845         * tests/testcombo.c: and a new test.
3846
3847         * tests/Makefile.am: adding the new test.
3848
3849 2003-09-25  Tor Lillqvist  <tml@iki.fi>
3850
3851         * demos/gtk-demo/main.c: Don't use hardcoded DEMOCODEDIR on Windows.
3852
3853 2003-09-21  Tor Lillqvist  <tml@iki.fi>
3854
3855         * gdk/win32/gdkevents-win32.c (handle_wm_paint): New
3856         function. Code split out from gdk_event_translate(). Needed
3857         because gdk_event_get_graphics_expose() couldn't do anything
3858         sensible otherwise. (Not that I think graphics exposes work anyway
3859         in gdk/win32, but at least now the code could work.)
3860
3861         (gdk_event_get_graphics_expose): Call handle_wm_paint() instead of
3862         gdk_event_translate(), which couldn't have worked as it doesn't
3863         take any pre-allocated GdkEvent parameter any longer.
3864         
3865         (gdk_event_translate): Handle WM_MOUSEACTIVATE: Don't let
3866         GDK_WINDOW_TEMP windows be activated. (#122578, John Ehresman)
3867
3868 2003-09-24  Matthias Clasen  <maclas@gmx.de>
3869
3870         * demos/gtk-demo/appwindow.c (do_appwindow): Demonstrate tooltips
3871         on toolitems.
3872
3873         * gtk/gtkaction.c (connect_proxy): Sync tooltips on toolitems.
3874
3875         * gtk/gtkuimanager.c (update_node): Don't complain about missing
3876         actions on popups. Re-set "tooltip" property on toolitems after
3877         adding them to parent to trigger proxy update.
3878
3879 2003-09-22  Matthias Clasen  <maclas@gmx.de>
3880
3881         * tests/testmerge.c (main): Initially activate the JUSTIFY_RIGHT
3882         group member to test the fix for #122904.
3883
3884         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
3885         Add the action to the group before activating it, otherwise we
3886         may end up with multiple active group members.  (#122904, Marco
3887         Pesenti Gritti)
3888
3889 2003-09-21  Matthias Clasen  <maclas@gmx.de>
3890
3891         Changes to make cross-process merging feasible:
3892         
3893         * gtk/gtkuimanager.[hc]: Add a readonly "ui" property which holds the
3894         merged UI definition. Remove the "changed" signal, since its role
3895         is now filled by "notify::ui". Instead add a "actions-changed" signal
3896         which gets emitted when the set of actions changes.
3897
3898         * gtk/gtktoggleactionprivate.h:
3899         * gtk/gtktoggleaction.[hc] (gtk_toggle_action_[sg]et_draw_as_radio):
3900         Add a "draw_as_radio" property to toggle actions so that they can be
3901         used as proxies for radio actions much like the "draw_as_radio" 
3902         property on check menu items enables them to operate as proxies for
3903         radio actions.
3904
3905         Prevent the "show_all" trap for action-based menus (see
3906         http://mail.gnome.org/archives/gtk-devel-list/2003-September/
3907         msg00260.html):
3908
3909         * gtk/gtkmenu.c (gtk_menu_{hide,show}_all): Remove g_return_if_fail()
3910         calls from static functions.
3911
3912         * gtk/gtkuimanager.c (update_node): 
3913         * gtk/gtkaction.c (connect_proxy): Set "no_show_all" on constructed
3914         widgets whose visibility is externally controlled.
3915
3916         * gtk/gtkwidget.[hc] (gtk_widget_[gs]et_no_show_all): Add a boolean 
3917         "no_show_all" property with setter and getter. When TRUE, it keeps
3918         gtk_widget_{hide,show}_all() from modifying the visibility of the 
3919         widget and its children.
3920
3921 Sun Sep 21 23:13:37 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3922
3923         * gtk/gtktextview.[ch]: Add new "tab moves focus" property (#122709)
3924
3925 2003-09-20  Tor Lillqvist  <tml@iki.fi>
3926
3927         * gtk-zip.sh.in: Don't use zip -r on the etc directory, to avoid
3928         including editor backup files. List files we want explicitly.
3929
3930         * gtk/gtkmain.c (_gtk_get_lc_ctype): New function. On Unix, just
3931         calls setlocale (LC_CTYPE, NULL). On Windows, looks for the
3932         LC_ALL, LC_CTYPE and LANG environment variables, than calls
3933         g_win32_getlocale().
3934
3935         (gtk_get_default_language): Code snippet moved to above function,
3936         call it.
3937
3938         * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave)
3939         * gtk/gtkrc.c (gtk_rc_context_parse_file): Call
3940         _gtk_get_lc_ctype() instead of setlocale().
3941
3942 Fri Sep 19 18:15:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3943
3944         * gtk/gtkpaned.c, gtk/gtkhpaned.c: implement RTL flipping
3945         (#96632)
3946
3947 Fri Sep 19 13:24:54 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3948
3949         * gtk/gtktreeview.c (gtk_tree_view_get_cursor): Improve
3950         documentation. (#117306, Steve Chaplin)
3951
3952 2003-09-19  Tor Lillqvist  <tml@iki.fi>
3953
3954         * gdk/win32/gdkkeys-win32.c (update_keymap): Handle dead keysyms
3955         present on the US-International keyboard. For clarity, order
3956         keysyms in case statement according to numeric value.
3957
3958         (gdk_keymap_translate_keyboard_state): Handle Caps Lock
3959         correctly. (#120176, Ken Rastatter and Owen Taylor)
3960
3961 2003-09-18  Matthias Clasen  <maclas@gmx.de>
3962
3963         * gtk/gtkaction.c (gtk_action_finalize): Call g_closure_unref() to
3964         unref a closure, not g_object_unref().  (#122637, Marco Pesenti Gritti)
3965
3966         Install accelerators on actions, not on proxies, support
3967         accelerator-only actions:
3968         
3969         * gtk/gtkmenu.c (get_accel_path): New function to get the accel path
3970         and its lock status either via _gtk_widget_get_accel_path() or by 
3971         looking at the accel_path stored in the menu item itself and determining
3972         its lock status by peeking into the contained accel label. This was
3973         already (accidentally) committed a week ago.
3974
3975         * gtk/gtkaction.h (gtk_action_set_accel_group):
3976         (gtk_action_[dis]connect_accelerator): New functions.
3977
3978         * gtk/gtkaction.c (struct _GtkActionPrivate): Add accel_group,
3979         accel_closure and accel_count. We must have a reference to the 
3980         accel_group, since we need it in connect_proxy. The count is necessary
3981         to ensure that the accelerator isn't removed before the last proxy 
3982         requesting it has been unmerged.
3983         (connect_proxy): Connect the accelerator to the 
3984         action now, only set the accel_path on the menuitem.
3985         (remove_proxy): Disconnect the accelerator from the action, not from
3986         the menuitem.
3987         (gtk_action_set_accel_group): Set the accel group. 
3988         (gtk_action_[dis]connect_accelerator): Count the number of times
3989         this functions have been called and install/remove the accelerator if
3990         the count leaves/reaches zero.
3991
3992         * gtk/gtkuimanager.h (GtkUIManagerItemType): Add 
3993         GTK_UI_MANAGER_ACCELERATOR.
3994
3995         * gtk/gtkuimanager.c (NodeType): Add NODE_TYPE_ACCELERATOR.
3996         (start_element_handler): Create NODE_TYPE_ACCELERATOR nodes from
3997         <accelerator> elements.
3998         (gtk_ui_manager_add_ui): Create NODE_TYPE_ACCELERATOR nodes when
3999         type is GTK_UI_MANAGER_ACCELERATOR.
4000         (update_node): Set the accel group on actions before creating their
4001         proxies. Don't set the accel group on created menus. For 
4002         NODE_TYPE_ACCELERATOR nodes, [dis]connect the actions' accelerator.
4003         (print_node): Also emit <accelerator> elements.
4004
4005         * tests/testmerge.c (dump_accels): Add a "Dump Accels" button. 
4006
4007         * gtk/gtkuimanager.c (update_node): Robustness improvements.
4008
4009 2003-09-17  Matthias Clasen  <maclas@gmx.de>
4010
4011         * gtk/gtkuimanager.c (text_handler): Report unexpected character
4012         data as error from the GMarkup parser, otherwise things like
4013         gtk_ui_manager_add_ui_from_string (ui, "Hi there!", -1, &error) 
4014         pass unexpectedly.
4015
4016 Wed Sep 17 02:38:53 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4017
4018         * gtk/gtktoolbar.c (gtk_toolbar_class_init): revert accidentally
4019         committed redraw_on_allocate change.
4020
4021 Tue Sep 16 10:42:00 2003  Eric Warmenhoven  <eric@warmenhoven.org>
4022
4023         * gdk/linux-fb/gdkwindow-fb.c: Add gdk_window_set_keep_{above,below}
4024         stubs to fix compilation
4025
4026         * gdk/linux-fb/gdkrender-fb.c: Add gdk_shadow_fb_stop_updates stub for
4027         when shadowfb is disabled. Patch from pjm@cctechnol.com (#120847).
4028
4029         * gdk/linux-fb/gdkmouse-fb.c: Add GDK_MOUSE_DEVICE environment
4030         variable. Patch from Marc Welz (#121347).
4031
4032 2003-09-16  Matthias Clasen  <maclas@gmx.de>
4033
4034         * gtk/gtkaction.h: Apply egtk-format-protos.
4035
4036 2003-09-15  Matthias Clasen  <maclas@gmx.de>
4037
4038         * gtk/gtkuimanager.c: Doc tweaks.
4039
4040         Smart separators; see 
4041         http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00133.html:
4042         
4043         * gtk/gtkuimanager.c (update_smart_separators): New function which 
4044         implements "smart" separators by iterating once over the entries of a 
4045         menu, hiding and showing separators as necessary.
4046         (update_node): Mark separators used as fences of placeholders as
4047         hidden. Explicitly added separators are marked as smart. Call 
4048         update_smart_separators after updating a menu or toolbar node. 
4049         Connect update_smart_separators to "notify::visible" signal on menu
4050         and tool items.
4051         
4052         * tests/merge-[12].ui: Test smart separators.
4053
4054         Changes to allow setting action state before connecting signal; see
4055         the thread starting at 
4056         http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00140.html:
4057         
4058         * gtk/gtkactiongroup.[hc]: (gtk_action_group_add_radio_actions):
4059         (gtk_action_group_add_radio_actions_full): Add value parameter to allow
4060         setting the currently selected group member before connecting signals.
4061         (GtkToggleActionEntry): Separate struct for constructing toggle actions,
4062         including a boolean to initialize the action state before connecting
4063         signals.
4064         (gtk_action_group_add_toggle_actions):
4065         (gtk_action_group_add_toggle_actions_full): New functions to construct
4066         toggle actions from an array of GtkToggleActionEntries.
4067
4068         * demos/gtk-demo/appwindow.c: 
4069         * tests/testactions.c: 
4070         * tests/testmerge.c: Adjust to new action group API.
4071
4072 Sun Sep 14 16:59:52 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4073
4074         * gtk/gtktoolbar.c (gtk_toolbar_init): Name the arrow 
4075         "gtk-toolbar-arrow" so themes can special-case it.
4076
4077 Sun Sep 14 16:07:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4078
4079         * gtk/Makefile.am (gtk_c_sources): sort the list of files.
4080
4081 Sun Sep 14 15:49:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4082
4083         * gtk/gtktoolbar.c (toolbar_item_is_homogeneous): Unref the
4084         PangoFontMetrics. Patch from Steve Chaplin (#122257).
4085
4086 2003-09-14  Tor Lillqvist  <tml@iki.fi>
4087
4088         * gdk/win32/gdkwindow-win32.c (show_window_internal): Remove
4089         special-case code for WS_EX_TRANSPARENT (GDK_INPUT_ONLY) windows,
4090         the usefulness of which was already in doubt. Removing it fixes
4091         bugs #118575 and #121851.
4092
4093 Fri Sep 12 16:32:53 2003  Jonathan Blandford  <jrb@redhat.com>
4094
4095         Merge from stable.
4096
4097         * gtk/gtktreeview.c (gtk_tree_view_button_press): only save the
4098         pressed button (used to determine if we want to initiate a drag later
4099         on) if the current grab widget is either NULL or tree_view (Reported
4100         by Jeroen Zwartepoorte).
4101
4102 2003-09-12  Matthias Clasen  <maclas@gmx.de>
4103
4104         * gdk/gdkdraw.c (gdk_draw_string, gdk_draw_text) 
4105         (gdk_draw_text_wc): Add deprecation notes.  (#121955, Martin Pool)
4106
4107 2003-09-11  Matthias Clasen  <maclas@gmx.de>
4108
4109         * gdk/gdkpango.c: Doc tweaks.
4110
4111         * tests/testgtk.c: Add table menu tests.
4112
4113         * gtk/gtkmenu.c (gtk_menu_free_private): Don't forget to free the 
4114         GtkMenuPrivate struct itself. Pointed out by valgrind.
4115
4116         * gtk/gtkuimanager.c (gtk_ui_manager_finalize): Clean up 
4117         properly.  (#121998)
4118
4119 Wed Sep 10 22:25:04 2003  Kristian Rietveld  <kris@gtk.org>
4120
4121         The table menu patch! Turns GtkMenu into a table, so you can attach
4122         menu items in numerous new ways! Be creative!
4123
4124         Contains some bug fixes and RTL adaptions from Matthias Clasen.
4125
4126         * gtk/gtkmenu.c [toplevel]: introduce ATTACH_INFO_KEY, extend
4127         GtkMenuPrivate, introduce AttachInfo, add child properties enum,
4128         (gtk_menu_free_private), (gtk_menu_get_private): we have to free
4129         the heights array in the private struct,
4130         (gtk_menu_class_init): reorder code a bit, install child properties,
4131         (get_attach_info), (get_child_attach): new utility functions,
4132         (gtk_menu_set_child_property), (gtk_menu_get_child_property): introduce
4133         child properties, for the attach info,
4134         (gtk_menu_remove): remove AttachInfo from menu item,
4135         (gtk_menu_real_insert): implemented algorithm to automagically place
4136         inserted menu items at the correct place in the table,
4137         (gtk_menu_size_request), (gtk_menu_size_allocate),
4138         (compute_child_offset): reworked/rewritten to support table menus,
4139         (gtk_menu_attach): new function,
4140         (find_child_containing), (gtk_menu_move_current): new functions to
4141         get table menu keynav right.
4142
4143         * gtk/gtkmenu.h: add gtk_menu_attach() prototype.
4144
4145 2003-09-10  Matthias Clasen  <maclas@gmx.de>
4146
4147         * gtk/gtksocket.c (gtk_socket_filter_func): Only remove 
4148         PropertyNotify events from the stream if they have been handled,
4149         in order to enable extending the plug<->socket communication via
4150         properties.
4151
4152 Wed Sep 10 01:06:44 2003  Kristian Rietveld  <kris@gtk.org>
4153
4154         Big TreeView DnD fixage, makes drops on empty models work, makes
4155         TreeStore DnD work and gets rid of gtk-tree-model-drop-append.
4156         Related bugs #95362 and #113314. I don't want to touch this code
4157         ever again.
4158
4159         * gtk/gtktreeprivate.h (GtkTreePrivate): add empty_view_drop field.
4160
4161         * gtk/gtktreednd.c (gtk_tree_get_row_drag_data): add check
4162         for selection_data->length.
4163
4164         * gtk/gtktreeview.c (struct DestRow), (dest_row_free),
4165         (set_dest_row), (get_dest_row): we don't store just the row ref
4166         anymore, but a struct with the row ref and additional info,
4167         (set_destination_row): handle drops on empty space and some
4168         style fixes,
4169         (get_logical_dest_row): also return path_down_mode/drop_append_mode
4170         flags, handle dropping childs on their new parents, rewrite
4171         drop append handling into something saner,
4172         (gtk_tree_view_drag_motion): show a "drop possible arrow" on empty
4173         spaces,
4174         (gtk_tree_view_drag_drop): updates for updated backend,
4175         (gtk_tree_view_drag_data_received): updates for updated backend,
4176         path down mode (treestore DnD) handling,
4177         (gtk_tree_view_set_drag_dest_row): set empty_view_drop flag,
4178         when we are trying to drop a row on an empty model,
4179         (gtk_tree_view_get_drag_dest_row): handle empty_view_drop flag.
4180
4181         * gtk/gtkliststore.c (gtk_list_store_drag_data_received),
4182         (gtk_list_store_row_drop_possible): style and drop-append fixes.
4183
4184         * gtk/gtktreestore.c (gtk_tree_store_drag_data_received): ditto.
4185
4186 2003-09-08  Alexander Larsson  <alexl@redhat.com>
4187
4188         * gtk/gtkeventbox.[hc]:
4189         Implement gtk_event_box_get/set_input_only()
4190         
4191         * tests/testgtk.c:
4192         Tests for the new input only event boxes
4193
4194 Mon Sep  8 21:44:20 2003  Kristian Rietveld  <kris@gtk.org>
4195
4196         Fixes from David Hampton <hampton@employees.org> via gtk-devel-list.
4197
4198         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_elt_get_path): fix
4199         the call to gtk_tree_model_filter_add_root,
4200         (gtk_tree_model_filter_row_changed): bail out if c_path is not above
4201         the virtual root, allow building levels on the second try to convert
4202         the child path to a filter path,
4203         (gtk_tree_model_filter_convert_iter_to_child_iter): pass the virtual
4204         root when calling gtk_tree_model_filter_elt_get_path.
4205
4206 2003-09-07  Matthias Clasen  <maclas@gmx.de>
4207
4208         * gtk/gtkuimanager.c (update_node): Fix a C99ism.  (#121640,
4209         Josh Beam)
4210
4211         Fixes for accelerator handling during (un)merging:
4212         
4213         * gtk/gtkuimanager.c (update_node): Move setting info-action
4214         after the switch, since the old action is needed in some cases.
4215         In cases of proxy type mismatch, disconnect the old proxy from
4216         the old action.
4217
4218         * gtk/gtkaction.c (remove_proxy): Renamed from 
4219         gtk_action_remove_proxy(). Move unsetting of the accelerator
4220         here from disconnect_proxy() in order to catch all cases of 
4221         removing a proxy.
4222         (gtk_action_disconnect_proxy): Fix logic in g_return_if_fail()
4223         to fail if proxy isn't a proxy of action.
4224
4225 2003-09-07  Pablo Saratxaga  <pablo@mandrakesoft.com>
4226
4227         * configure.in: Added Uzbek latin (uz) and cyrillic (uz@Cyrl) to
4228         ALL_LINGUAS
4229
4230 2003-09-07  Matthias Clasen  <maclas@gmx.de>
4231
4232         * gtk/gtkaction.c (disconnect_proxy): Make disconnect work
4233         for toolitems.
4234
4235 2003-09-06  Matthias Clasen  <maclas@gmx.de>
4236
4237         * gtk/gtkaction.c (gtk_action_connect_proxy): Disconnect from 
4238         prev_action, not from action.  (Fix by David Hampton)
4239
4240 Fri Sep  5 14:15:10 2003  Owen Taylor  <otaylor@redhat.com>
4241  
4242         * Back out locale-dependent interpretation of
4243         KP_Decimal, the official XFree86 interpretation
4244         is that KP_Decimal => . KP_Separator => ,
4245         always, independent of locale. 
4246         (#105161, Frederic Crozat, 
4247         http://bugs.xfree86.org/show_bug.cgi?id=534)
4248  
4249 2003-09-04  Matthias Clasen  <maclas@gmx.de>
4250
4251         * tests/testmerge.c: Test buttons and toggle buttons as proxies.
4252
4253         * gtk/gtktoggleaction.c (connect_proxy): 
4254         (gtk_toggle_action_real_toggled): Support toggle buttons as proxies. Note 
4255         that a "draw_as_radio" property is needed for check buttons similar to 
4256         check menu items, in order to fully support button proxies for radio actions.
4257
4258         * gtk/gtkaction.c (connect_proxy): Allow buttons as proxies.
4259
4260         * tests/testmerge.c (toggle_dynamic): Test gtk_ui_manager_add_ui(). 
4261
4262         * gtk/gtkuimanager.h: Add GtkUIManagerItemType enum which is needed for the
4263         'type' argument of gtk_ui_manager_add_ui().
4264
4265         * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui): Add 'type' and 'top' arguments
4266         to make this function as powerful as the XML methods of adding UI.  (#120647)
4267
4268 Thu Sep  4 19:11:23 2003  Kristian Rietveld  <kris@gtk.org>
4269
4270         Merge from stable.
4271
4272         * docs/RELEASE-HOWTO: updates.
4273
4274 2003-09-04  Matthias Clasen  <maclas@gmx.de>
4275
4276         * tests/merge-2.ui: Use "position" instead of "pos".
4277
4278         * gtk/gtkuimanager.c (start_element_handler): No need 
4279         to be terse: Change the name of the "pos" attribute
4280         to "position".
4281
4282 2003-09-04  Matthias Clasen  <maclas@gmx.de>
4283
4284         * gtk/gtkuimanager.c: Un-prefix GtkUIManagerNodeType and 
4285         GtkUIManagerNode to shorten the names and to make the
4286         GTK_UI_MANAGER_<TYPE> names available for a public enum.
4287
4288         * gtk/gtkactiongroup.c:
4289         * gtk/gtkuimanager.c: Various doc tweaks.       
4290
4291         * gtk/gtkuimanager.c (start_element_handler):
4292         (end_element_handler): Improve error reporting. 
4293
4294 Wed Sep  3 23:18:17 2003  Kristian Rietveld  <kris@gtk.org>
4295
4296         Merge from stable.
4297
4298         * gtk/gtkmenu.c (gtk_menu_real_move_scroll): for the END case,
4299         use end_position - page_size instead of G_MAXINT, since
4300         gtk_menu_scroll_to doesn't CLAMP anymore internally. (Fixes #121237,
4301         reported by Havoc Pennington).
4302
4303 Wed Sep  3 21:58:03 2003  Kristian Rietveld  <kris@gtk.org>
4304
4305         Merge from stable.
4306
4307         * gtk/gtkiconfactory.c (cached_icon_free): if icon->style != NULL,
4308         unref it. (Fixes memleak, patch from Kjartan Maraas).
4309
4310 Wed Sep  3 21:38:26 2003  Kristian Rietveld  <kris@gtk.org>
4311
4312         * gdk/Makefile.am, gdk/linux-fb/gdkfbmanager.c, gdk/x11/gdkcolor-x11.c,
4313         gdk-pixbuf/io-gif.c, gtk/Makefile.am, gtk/gtkcalendar.c,
4314         gtk/gtkclist.c, gtk/gtkctree.c, gtk/gtkdnd.c, gtk/gtkentry.c,
4315         gtk/gtkhandlebox.c, gtk/gtkitemfactory.c, gtk/gtkmenu.c,
4316         gtk/gtknotebook.c, gtk/gtkrange.c, gtk/gtkrc.h, gtk/gtktree.c,
4317         gtk/gtktypeutils.h: big patch from Kjartan Maraas
4318         to fix numerous typos.
4319
4320 Wed Sep  3 17:38:01 BST 2003  Tony Gale <gale@gtk.org>
4321
4322         * docs/faq/gtk-faq.sgml: Correct compile line for threads example.
4323
4324 2003-09-02  Tor Lillqvist  <tml@iki.fi>
4325
4326         * gdk/win32/gdkdisplay-win32.c (gdk_display_open): Don't call
4327         CloseHandle() on the HMODULE returned from GetModuleHandle().
4328         Didn't cause any harm, but didn't do anything useful either. When
4329         running a GTK+ program under MS's debugger, the CloseHandle() call
4330         would cause a "first-chance exception" in ntdll.dll to show up.
4331         (The exception is caught appropriately if you let it proceed, but
4332         it confuses the person using the debugger). Thanks to Bruce
4333         Hochstetler for noticing.
4334
4335 Tue Sep  2 21:01:19 2003  Kristian Rietveld  <kris@gtk.org>
4336
4337         Merge from stable.
4338
4339         * gtk/gtktreeview.c (gtk_tree_view_button_press): revert the change
4340         to only select when button 1 is pressed introduced in the fix of
4341         bug #120187.
4342
4343 2003-09-02  Matthias Clasen  <maclas@gmx.de>
4344
4345         * gtk/gtkactiongroup.c (gtk_action_group_new): Doc addition.
4346
4347         * gtk/gtkuimanager.c: Shorten the names of some static 
4348         functions.
4349
4350         Support adding and removing merge nodes dynamically (#120647, 
4351         Anders Carlsson):
4352         
4353         * gtk/gtkuimanager.[ch] (gtk_ui_manager_new_merge_id): Renamed 
4354         gtk_ui_manager_next_merge_id to gtk_ui_manager_new_merge_id 
4355         and made it public.
4356         (gtk_ui_manager_add_ui): New function to add UI elements
4357         without juggling XML fragments, currently restricted to menuitems,
4358         toolitems and separators. Actions still come from registered 
4359         action groups.
4360
4361 Mon Sep  1 19:39:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4362
4363         * gdk/gdkwindow.c (gdk_window_get_bg_gc): Fix bug where the
4364         background pixmap was being offset twice, once by the ts_origin in
4365         gdk_window_get_bg_gc(), and once by gdk_draw_rectangle().
4366
4367 2003-09-01  Matthias Clasen  <maclas@gmx.de>
4368
4369         * gtk/gtkuimanager.[ch] (gtk_ui_manager_ensure_update): Make
4370         this public again, since it's occasionally useful.  (#121128,
4371         Marco Pesenti Gritti)
4372
4373         * gtk/gtkaction.c: Add an "is_important" property and propagate
4374         it to toolitem proxies.  (#121058, Marco Pesenti Gritti)
4375
4376 Mon Sep  1 00:32:30 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4377
4378         * tests/testtoolbar.c (main): connect to "delete_event" so the
4379         application will actually quit when you close the window
4380
4381 2003-09-01  Matthias Clasen  <maclas@gmx.de>
4382
4383         * gtk/gtkuimanager.c (gtk_ui_manager_get_widget) 
4384         (gtk_ui_manager_get_action): g_return_if_fail() if
4385         path is NULL.
4386         (gtk_ui_manager_get_node): Avoid a segfault if path is empty.
4387         (gtk_ui_manager_finalize): Remove the idle on finalize. (#121125, 
4388         Marco Pesenti Gritti)
4389
4390 2003-08-31  Matthias Clasen  <maclas@gmx.de>
4391
4392         * gtk/gtktoolitem.c: Fix some typos in docs.
4393
4394         * gtk/gtkuimanager.[ch] (gtk_ui_manager_get_action): New function,
4395         replaces gtk_ui_manager_activate().  (#120658)
4396
4397         * tests/testmerge.c: Use gtk_ui_manager_get_action() instead of
4398         gtk_ui_manager_activate().
4399
4400         * gtk/gtkaction.c: 
4401         * gtk/gtkactiongroup.c: Some doc tweaks.
4402
4403         * gtk/gtkuimanager.[hc]: Get rid of the remove_widget signal. It
4404         wasn't emitted anyway. Some doc tweaks.
4405
4406 2003-08-30  Matthias Clasen  <maclas@gmx.de>
4407
4408         * tests/testmerge.c (add_widget): Connect to "destroy" on toolbar,
4409         rather than to "remove" on handlebox. 
4410
4411         * gtk/gtkuimanager.[hc] (gtk_ui_manager_activate): New method to
4412         activate an action found by following a path.  (#120658)
4413
4414         * tests/testmerge.c: Add a button to test gtk_ui_manager_activate().
4415
4416         * tests/testmerge.c (add_widget): Put toolbars in handleboxes.
4417
4418         * gtk/gtkuimanager.[hc]: Add a boolean property, "add_tearoffs" with 
4419         setter and getter. If it is set, add tearoff menu items to regular 
4420         menus, but not to popups. Add a signal "changed", which gets emitted
4421         when the merged ui has changed.  (#120649, #120656)
4422
4423         * tests/testmerge.c: Add button to test the generation of tearoff 
4424         menu items.
4425
4426 2003-08-29  Matthias Clasen  <maclas@gmx.de>
4427
4428         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
4429         Actually group the actions together rather than putting each in its 
4430         own group.
4431
4432         * gtk/gtkradioaction.c (create_menu_item): Set "draw_as_radio" on 
4433         proxy menu items for radio actions.
4434
4435         * gtk/gtkgamma.c (gamma_ok_callback): Use g_strtod instead of strtod.
4436
4437 Fri Aug 29 21:40:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4438
4439         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
4440         Fix use of uninitialized variable.
4441
4442         * gtk/gtktextutil.c
4443         (_gtk_text_util_append_special_char_menuitems): add const cast to
4444         get rid of warning
4445
4446 2003-08-29  Matthias Clasen  <maclas@gmx.de>
4447
4448         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Install 
4449         "draw_as_radio" as a separate property, not as an alias of 
4450         "inconsistent".
4451         (gtk_check_menu_item_get_property): 
4452         (gtk_check_menu_item_set_property): Also support "draw_as_radio".
4453
4454 Fri Aug 29 20:32:07 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4455
4456         * gtk/gtktoolbar.c: Only treat buttons as homogeneous when they
4457         are narrower than 13 time the estimated character width of the
4458         font. (#107781, David Bordoley)
4459
4460         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): Check
4461         here if the GtkToggleButton is active. This may be the case if it
4462         is a radio button.
4463
4464         * gtk/gtktoolbar.c: Clarify documentation wrt. GtkSignalFunc
4465         vs. void (*) (GtkWidget, gpointer). (#107495, Mariano
4466         Suarez-Alvarez).
4467
4468         * gtk/gtkcheckmenuitem.[ch]: new "draw_as_radio"
4469         property. (#111207, David Bordoley).
4470
4471         * gtk/gtktoggletoolbutton.c
4472         (gtk_toggle_tool_button_create_menu_proxy): use new
4473         "draw_as_radio" property on the menu item when the item is a radio
4474         tool button
4475
4476         * gtk/gtktoolbutton.c (gtk_tool_button_create_menu_proxy): Fixes
4477         to only pay attention to the "use_underline" property when the
4478         button label comes from the "label" property.
4479
4480 2003-08-29  Laurent Dhima  <laurenti@alblinux.net>
4481
4482         * configure.in: Added "sq" to ALL_LINGUAS.
4483         
4484 2003-08-28  Matthias Clasen  <maclas@gmx.de>
4485
4486         * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Markup
4487         fix in the docs.
4488
4489         * gtk/gtkuimanager.c: Change the XML format:
4490         <Root> element is replaced by <ui>,
4491         <menu> element is replaced by <menubar>,
4492         <submenu> element is replaced by <menu>,
4493         <dockitem> element is replaced by <toolbar>,
4494         <popups> element is gone,
4495         verb attribute is replaced by action,
4496         name defaults to action or the element name. 
4497
4498         * gtk/gtkactiongroup.[hc]: Replace GtkActionGroupEntry by 
4499         GtkActionEntry and GtkRadioActionEntry. GtkActionEntry is simplified 
4500         by removing the user_data, entry_type and extra_data fields, 
4501         GtkRadioActionEntry is further simplified by removing the callback. 
4502         The user_data can now be specified as an argument to 
4503         gtk_action_group_add_actions(). There is a new method 
4504         gtk_action_group_add_radio_actions(), which is similar to 
4505         gtk_action_group_add_actions(), but takes GtkRadioActionEntrys
4506         and a callback parameter in addition to the user_data. The callback
4507         is connected to the ::changed signal of the first group member.
4508         There are _full() variants taking a GDestroyNotify of 
4509         gtk_action_group_add_[radio_]actions().
4510
4511         * gtk/gtkradioaction.[hc]: Add a ::changed signal which gets emitted 
4512         on every member of the radio group when the active member is changed. 
4513         Add an integer property "value", and a getter for the value of "value"
4514         on the currently active group member. 
4515
4516         * tests/testactions.c: 
4517         * tests/testmerge.c: 
4518         * tests/merge-[123].ui:  
4519         * demos/gtk-demo/appwindow.c: Adjust to these changes.
4520
4521         * gtk/gtktoolbar.c (gtk_toolbar_append_element): Trivial doc fix.
4522
4523 2003-08-27  Anders Carlsson  <andersca@gnome.org>
4524
4525         * demos/gtk-demo/appwindow.c (do_appwindow): Focus the
4526         text view, so the tool bar won't have focus.
4527
4528 Tue Aug 26 09:57:38 2003  Owen Taylor  <otaylor@redhat.com>
4529
4530         * gdk/x11/gdkkeys-x11.c (update_keymaps): Fix variable
4531         declaration not at start of block. (#120371, Damien Carbery)
4532
4533 2003-08-26  Matthias Clasen  <maclas@gmx.de>
4534
4535         * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui_from_string): Use gssize 
4536         for length, not gsize.
4537
4538         * gtk/gtkuimanager.c: Refactor the XML format a bit: rename <Root> to 
4539         <ui> and make it optional in strings. Rename verb to action, <dockitem> 
4540         to <toolbar>, <menu> to <menubar>, <submenu> to <menu>.
4541
4542         * demos/gtk-demo/appwindow.c: 
4543         * tests/testactions.c: 
4544         * tests/testmerge.c:
4545         * tests/merge-1.ui:
4546         * tests/merge-2.ui:
4547         * tests/merge-3.ui: Adjust to the new XML format.
4548
4549 Mon Aug 25 19:55:55 2003  Owen Taylor  <otaylor@redhat.com>
4550
4551         * gtk/gtktextview.c (gtk_text_view_update_layout_width): 
4552         Since we add one to the layout's reported width to
4553         account for the cursor, we need to subtract one when
4554         setting the wrap width for the layout. (Fixes infinite
4555         loop (#120325, Frederic Crozat)
4556
4557         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
4558         Be a bit more careful about rounding when converting
4559         wrapped width from Pango units to pixels.
4560
4561 2003-08-26  Matthias Clasen  <maclas@gmx.de>
4562
4563         Rename GtkMenuMerge to GtkUIManager. 
4564         
4565         * gtk/gtkuimanager.[hc]: New files. 
4566         * gtk/gtkmenumerge.[hc]: Removed. 
4567
4568         * gtk/Makefile.am: 
4569         * gtk/gtk.h:
4570         * tests/testmerge.c: 
4571         * tests/testactions.c: 
4572         * demos/gtk-demo/appwindow.c: Replace all uses of GtkMenuMerge by 
4573         GtkUIManager.
4574
4575         * demos/gtk-demo/appwindow.c: Make GtkMenuMerge demo less intimidating: 
4576         add comments to entries array, remove newlines from ui definition. Don't 
4577         use the ::add_widget signal.
4578
4579 Mon Aug 25 17:28:04 2003  Owen Taylor  <otaylor@redhat.com>
4580
4581         * gtk/gtknotebook.c (gtk_notebook_forall): Don't
4582         include page->menu_label - causes various problems,
4583         including #12047.
4584
4585 Mon Aug 25 23:21:43 2003  Kristian Rietveld  <kris@gtk.org>
4586
4587         Merge from stable.
4588
4589         Fixes #115871, reported by Michael Natterer.
4590
4591         * gtk/gtktreeprivate.h: added GtkTreeSelectMode enum,
4592         added ctrl_pressed and shift_pressed bitfields,
4593         (_gtk_tree_selection_internal_select_node): replace GdkModifierType
4594         arg with GtkTreeSelectMode.
4595
4596         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode),
4597         (gtk_tree_selection_select_path), (gtk_tree_selection_unselect_path),
4598         (_gtk_tree_selection_internal_select_node): all updated for
4599         GdkModifierType -> GtkTreeSelectMode move.
4600
4601         * gtk/gtktreeview.c (gtk_tree_view_button_press): set ctrl_pressed
4602         and shift_pressed around selection handling block,
4603         (gtk_tree_view_real_select_cursor_row),
4604         (gtk_tree_view_real_toggle_cursor_row),
4605         (gtk_tree_view_real_selection_cursor_parent),
4606         (gtk_tree_view_real_set_cursor): use ctrl_pressed and shift_pressed,
4607         instead of checking the event state. And also updates for the
4608         GdkModifierType -> GtkTreeSelectMode move.
4609
4610 Wed Aug 20 21:26:49 2003  Owen Taylor  <otaylor@redhat.com>
4611
4612         * gtk/gtkplug.c (gtk_plug_focus): Send the focus on
4613         to the parent when there was no focus widget before
4614         and no focus widget after - that is, when there are
4615         no focusable widgets. (#108678, help tracking it
4616         down from Padraig O'Briain, Federico Mena Quintero, )
4617
4618         * gtk/gtkxembed.[ch]: Move various shared utilities
4619         for the XEMBED protocol eused by GtkPlug and GtkSocket 
4620         here.
4621
4622         * gtk/gtkxembed.[ch] gtkplug.c gtksocket.c: Implement
4623         a flag bit that is sent with focus mesages to indicate
4624         that the focus has wrapped around on the toplevel;
4625         use this bit to catch infinite loops when there is no
4626         focusable widget at ll in the entire toplevel.
4627
4628         * tests/testsocket.c (child_read_watch): Remove an
4629         extraneous unref.
4630
4631         * gtk/gtkplug.c gtk/gtksocket.c gtk/gtkxembed.h: 
4632         Up XEMBED protocol version to 1, add logic for 
4633         sending the right version in XEMBED_EMBEDDED_NOTIFY.
4634
4635         * gtk/gtksocket.c (gtk_socket_add_window): Send
4636         the embedder window in the XEMBED_EMBEDDED_NOTIFY
4637         as the spec requires.
4638
4639 Mon Aug 25 16:15:41 2003  Owen Taylor  <otaylor@redhat.com>
4640
4641         * gdk/x11/gdkkeys-x11.c: Fix up CapsLock and 
4642         NumLock handling for non-XKB. Add a special case
4643         hack for NumLock on Sun servers. (Patch from
4644         Robert Basch, #115819)
4645
4646 2003-08-25  Matthias Clasen  <maclas@gmx.de>
4647
4648         * gtk/gtkactiongroup.c (gtk_action_group_add_actions): Remove C99isms. (Morten 
4649         Welinder)
4650
4651         * gtk/gtkactiongroup.[hc] (gtk_action_group_set_translate_func,
4652         gtk_action_group_set_translation_domain): Hooks for translation of
4653         label and tooltip in GtkActionGroupEntries.  (#120620)
4654
4655 2003-08-25  Matthias Clasen  <maclas@gmx.de>
4656
4657         * gtk/gtkactiongroup.h (GtkActionGroupEntryType): Namespace the enum
4658         values properly. Sorry about the resize grip trouble, Owen.  (#120621)
4659         
4660         * gtk/gtkactiongroup.c: 
4661         * demos/gtk-demo/appwindow.c: 
4662         * tests/testmerge.c: 
4663         * tests/testactions.c: Use new GtkActionGroupEntryType enum.  
4664
4665 Sun Aug 24 17:14:44 2003  Owen Taylor  <otaylor@redhat.com>
4666
4667         * gtk/gtk.h: Remove reference to gtkresizegrip.h.
4668
4669 Sun Aug 24 17:03:44 2003  Owen Taylor  <otaylor@redhat.com>
4670
4671         * gtk/Makefile.am: Fix accidental commit of references
4672         to gtkresizegrip.[ch]
4673
4674 Sun Aug 24 17:00:03 2003  Owen Taylor  <otaylor@redhat.com>
4675
4676         * gtk/gtkrc.c: Fix some missing initializations of
4677         rc_file->directory.
4678
4679 2003-08-24  Matthias Clasen  <maclas@gmx.de>
4680
4681         * gtk/gtkaction.[ch]: 
4682         * gtk/gtktoggleaction.[ch]: 
4683         * gtk/gtktoggleactionprivate.h: 
4684         * gtk/gtkradioaction.[ch]: 
4685         * gtk/gtkactiongroup.[ch]: 
4686         * gtk/gtkmenumerge.[ch]: A model-view separation for menus and
4687         toolbars, using the EggMenu code by James Henstridge.
4688
4689         * gtk/gtk.h: Include new headers.
4690         * gtk/Makefile.am: Add new files.
4691
4692         * tests/testactions.c: Test for actions.
4693         * tests/testmerge.c: Test for menu merging.
4694         * tests/merge-[123].ui: Test data for testmerge. 
4695         * tests/Makefile.am: Add testactions and testmerge.
4696
4697         * demos/gtk-demo/appwindow.c: Use GtkMenuMerge to construct the 
4698         menubar and toolbar.
4699         
4700 Sat Aug 23 21:40:18 2003  Owen Taylor  <otaylor@redhat.com>
4701  
4702         * gtk/gtkrc.c (gtk_rc_context_parse_one_file): Fix 
4703         problem where rc_file->directory wasn't always getting
4704         set. (#120549, Luis Villa)
4705  
4706 2003-08-22  Christian Rose  <menthos@menthos.com>
4707
4708         * configure.in: Added "ne" to ALL_LINGUAS.
4709
4710 Thu Aug 21 16:00:36 2003  Owen Taylor  <otaylor@redhat.com>
4711  
4712         * gtk/gtkrc.c: Keep a list of current GtkRcFiles
4713         being parsed, not just the directories for those
4714         files. Use that to catch recursion. (Part of
4715         #114988)
4716  
4717 Thu Aug 21 21:27:45 2003  Kristian Rietveld  <kris@gtk.org>
4718
4719         Merge from stable.
4720
4721         Fix option menu scrolling (#119821, Owen Taylor).
4722
4723         * gtk/gtkmenu.c (gtk_menu_scroll_to): remove logic introduced
4724         by #80484 and the CLAMP,
4725         (get_menu_height): new function,
4726         (gtk_menu_real_move_scroll): sort of moved the CLAMP here to correct
4727         new_offset to handle page up/down right.
4728
4729 Thu Aug 21 15:17:42 2003  Owen Taylor  <otaylor@redhat.com>
4730
4731         * gdk/x11/gdkkeys-x11.c: Change the interpretation
4732         of consumed_modifiers so that it contains:
4733          - Modifiers combinations actually found in
4734            state.
4735          - Single modifier modifier combinations.
4736         But not multi-modifier combinations that aren't
4737         in event->state. Document. (#100439)
4738
4739 Thu Aug 21 20:53:46 2003  Kristian Rietveld  <kris@gtk.org>
4740
4741         Slightly modified patch from Yann Rouillard to improve selection
4742         behavior with the mouse. Fixes #120187.
4743
4744         * gtk/gtktreeview.c (gtk_tree_view_button_press): only
4745         select/deselect items on the first button press of button 1,
4746         expand checks for row_activated to include triple clicks.
4747
4748 Thu Aug 21 01:33:51 2003  Kristian Rietveld  <kris@gtk.org>
4749
4750         Merge from stable.
4751
4752         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
4753         approximate digit widths up, to avoid truncation, convert to
4754         pango pixels when we have the full string width instead of converting
4755         the approx digit width to pango pixels, take inner border and
4756         interior focus into account correctly. (Fixes #116368, patch from
4757         Morten Welinder).
4758
4759 2003-08-20  Noah Levitt  <nlevitt@columbia.edu>
4760
4761         * gtk/queryimmodules.c: Don't look at the same directory twice (in
4762         simple cases). (#120342)
4763
4764 Wed Aug 20 22:04:47 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4765
4766         * gdk/gdkwindow.c: Make the layers in the paint stack have their
4767         own pixmap instead of sharing one. (#118317)
4768
4769         * tests/testgtk.c (create_get_image): Fixes to make the window fit
4770         on an 800x600 screen
4771
4772 Wed Aug 20 22:03:25 2003  Kristian Rietveld  <kris@gtk.org>
4773
4774         Merged from stable.
4775
4776         * gtk/gtkspinbutton.c (start_spinning): change the type of step
4777         to gdouble, since it gets it's data from a gdouble (Fixes #113547).
4778
4779 Mon Aug 18 17:19:12 2003  Owen Taylor  <otaylor@redhat.com>
4780
4781         * modules/input/gtkimcontextxim.[ch]: Substantially
4782         rework the handling of status windows:
4783         
4784          - Store the current StatusWindow in the 
4785            GtkIMContextXIM structure and vice-versa, so we
4786            don't have to hunt the window hierarchy on
4787            cleanup.
4788          - Use the Gtkidget hierarchy instead of/or as well
4789            as the GdkWindow hierarchy when finding the toplevel;
4790            this helps for things like GtkHandlebox
4791          - Watch GtkWidget::hierarchy_changed to catch 
4792            changes in the toplevel without changes in the
4793            GdkWindow (reparenting)
4794          - Never create the GtkWindow for the status window
4795            unless we have text to display.
4796          - Various cleanups, add lots of comments.
4797
4798         (#115077, much help from Takuro Ashie and Hidetoshi
4799         Tajima in tracking this down and figuring out a fix.)
4800
4801         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_focus_in): 
4802
4803         * modules/input/gtkimcontextxim.c: Track the current
4804         screen for each toplevel so that we show the status
4805         window on the right screen. (#116340, James Su)
4806
4807         * modules/input/gtkimcontextxim.c: If create a new IC
4808         when we currently have the focus, call XSetICFocus()
4809         on it.
4810         
4811         * modules/input/gtkimcontextxim.c (get_im): Fix bug
4812         with multiple open screens.
4813
4814 Tue Aug 19 14:37:46 2003  Owen Taylor  <otaylor@redhat.com>
4815
4816         * gtk/gtkimmulticontext.[ch] (struct _GtkIMMulticontext): 
4817         Replace client_window field with 'priv' pointer,
4818         retaining binary compatibility.
4819
4820         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave): 
4821         save use_preedit/cursor_location/focus status and set
4822         up the new slave appropriately. (#118651, Botond Botyanszki)
4823
4824 Tue Aug 19 13:58:50 2003  Owen Taylor  <otaylor@redhat.com>
4825
4826         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
4827         Don't use impl->position_info.clip_rect for toplevels.
4828         (#107068, reported by Thomas Mirlacher)
4829
4830 Mon Aug 18 11:48:51 2003  Owen Taylor  <otaylor@redhat.com>
4831
4832         * gdk/x11/gdkdrawable-x11.c (convert_to_format): 
4833         Add a fallback for unaligned source data for
4834         FORMAT_ARGB_MASK. (#117217)
4835
4836 Mon Aug 18 10:51:57 2003  Owen Taylor  <otaylor@redhat.com>
4837
4838         * configure.in: Rework handling of REBUILD_PNGS,
4839         so that we also don't try to REBUILD_PNGS when
4840         cross-compiling and there is no gdk-pixbuf-csource.
4841         But give an error if gtk/stock-icons/gtkstockpixbufs.h
4842         is not in the source tree. (Note that REBUILDS_PNG
4843         was set backwards before, which is why you always
4844         had to manually recreate gtkstockpixbufs.h!)
4845
4846 Mon Aug 18 10:19:55 2003  Owen Taylor  <otaylor@redhat.com>
4847
4848         * gtk+-2.0-uninstalled.pc.in: Add a missing gtk/ in the
4849         path to libgtk.la. (#120080, Benedikt Spranger)
4850
4851 Sat Aug 16 10:34:49 2003  Owen Taylor  <otaylor@redhat.com>
4852
4853         * modules/input/imcedilla.c: Make the list of default
4854         languages more comprehensive. (Suggestion of
4855         Fco. Javier F. Serrador)
4856
4857 Sat Aug  9 12:47:11 2003  Owen Taylor  <otaylor@redhat.com>
4858
4859         * gdk/gdk.c (gdk_arg_context_parse): Fix broken 
4860         parentheses when skipping args.
4861
4862 Sat Aug 16 16:22:23 2003  Kristian Rietveld  <kris@gtk.org>
4863
4864         Fix major bug in row ref handling, so the new combo box
4865         will actually work right (:. Bug #107748. Patch written
4866         with help from Tim Janik.
4867
4868         The basic idea is to update the row refs in a closure,
4869         before the actual signal is emitted (rather than having
4870         the model connect signal handlers).
4871
4872         * gtk/gtktreemodel.c (gtk_tree_model_base_init): change
4873         g_signal_new calls for row_inserted, row_deleted and
4874         rows_reordered to use the new marshallers,
4875         (row_inserted_marshall), (row_deleted_marshall),
4876         (rows_reordered_marshall): the new marshallers,
4877         (gtk_tree_row_ref_inserted_callback): renamed to
4878         gtk_tree_row_ref_inserted since it isn't a callback
4879         anymore and gets called by the marshaller now,
4880         (gtk_tree_row_ref_deleted_callback): likewise,
4881         (gtk_tree_row_ref_reordered_callback): likewise,
4882         (connect_ref_callbacks), (disconnect_ref_callbacks):
4883         removed,
4884         (gtk_tree_row_reference_new_proxy),
4885         (gtk_tree_row_reference_free),
4886         (gtk_tree_row_reference_inserted),
4887         (gtk_tree_row_reference_deleted),
4888         (gtk_tree_row_reference_reordered): updated.
4889
4890 Fri Aug 15 16:54:39 2003  Owen Taylor  <otaylor@redhat.com>
4891
4892         Improve Cedilla handling - based on a patch from Gustavo 
4893         De Nardin, #111334
4894
4895         * modules/input/imcedilla.c po/POTFILES.in: Input method that 
4896         produces C_WITH_CEDILLA rather than C_WITH_ACUTE for 
4897         dead_acute+c combinations. Make this the default for
4898         fr and pt.
4899
4900         * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave): 
4901         Use LC_CTYPE instead of LC_MESSAGES to pick the default
4902         input method.
4903
4904 Fri Aug 15 17:00:19 2003  Owen Taylor  <otaylor@redhat.com>
4905
4906         * gtk/gtkimcontextsimple.c: Fix missing compose sequence
4907         for Multi_key+c+apostrophe.
4908
4909 Fri Aug 15 21:57:34 2003  Kristian Rietveld  <kris@gtk.org>
4910
4911         Merged from stable.
4912
4913         * gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): stop editing
4914         on vertical scrolling. (#108035, reported by Tim Janik).
4915
4916 Fri Aug 15 20:06:42 2003  Kristian Rietveld  <kris@gtk.org>
4917
4918         Merged from stable.
4919
4920         * gtk/gtktreeview.c (gtk_tree_model_sort_row_changed),
4921         (gtk_tree_model_sort_level_find_insert),
4922         (gtk_tree_model_sort_insert_value): fix off-by-one error.
4923         (#109292 continued, patch from Yann Rouillard).
4924
4925 Fri Aug 15 19:43:14 2003  Kristian Rietveld  <kris@gtk.org>
4926
4927         (Note: This is not exactly the same as the patch which went in
4928          gtk-2-2).
4929
4930         * gtk/gtktreeview.c (gtk_tree_view_class_init),
4931         (gtk_tree_view_key_press), (gtk_tree_view_search_key_press_event):
4932         Also support the up, down, left, right, home, end, page up and
4933         page down keys on the numpad. (#119419, reported by Alex Larsson).
4934
4935 Fri Aug 15 12:34:04 2003  Owen Taylor  <otaylor@redhat.com>
4936
4937         Fixes for X/Cygwin builds of GTK+ (#107623, Masahiro Sakai):
4938
4939         * configure.in (GDK_DEP_LIBS_FOR_X): Make sure that
4940         we link libgtk against X explicitely, since we
4941         make GTK+ calls for plug/socket.
4942
4943         * gtk/queryimmodules.c: Use USE_LA_MODULES and 
4944         G_MODULE_SUFFIX here. 
4945
4946         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_image): Protect
4947         XShmPutImage with #ifdef USE_SHM.
4948
4949 Thu Aug 14 18:25:39 2003  Owen Taylor  <otaylor@redhat.com>
4950
4951         * gtk/gtkfilesel.c (gtk_file_selection_populate):
4952         Don't reposition the cursor when we aren't trying
4953         to complete. (Fixes problems with selection on
4954         startup, #108433, reported by Mark Finlay.)
4955
4956         * gtk/gtkfilesel.c (gtk_file_selection_populate): Remove
4957         code that tried to position the cursor after the common
4958         prefix when there was one, it wasn't working, and
4959         would be hard to fix. Just always put the cursor
4960         at the end when completing.
4961
4962 Thu Aug 14 17:58:23 2003  Owen Taylor  <otaylor@redhat.com>
4963
4964         * gtk/gtkfilesel.c (get_current_dir_utf8): If getting
4965         the current directory fails because of encoding
4966         conversion problems, walk up textually to parent
4967         directories until we can convert. (#113627)
4968
4969 Wed Aug 13 17:01:49 2003  Owen Taylor  <otaylor@redhat.com>
4970
4971         * gtk/gtkmenushell.[ch] (gtk_menu_shell_enter_notify):
4972         Remove usage of menu_shell->ignore leave which was
4973         to deal with stray events we no longer get because
4974         we do grabbing differently. Comment it as unused in
4975         the header. (#115837, Keith Bissett)
4976
4977 Wed Aug 13 16:32:43 2003  Owen Taylor  <otaylor@redhat.com>
4978
4979         * gtk/gtkmenu.c (gtk_menu_position, gtk_menu_window_size_request): 
4980         Fix some places that weren't properly Xinerama-ified.
4981
4982         * gtk/gtkmenu.c: Fix problem with windows that scroll
4983         at the top of the screen.
4984
4985 Wed Aug 13 11:34:53 2003  Owen Taylor  <otaylor@redhat.com>
4986
4987         * gtk/gtkcombo.c (gtk_combo_init): connect_after() to 
4988         key-press-event on the entry, so input methods get access to 
4989         key presses before GtkCombo customization.
4990         (#115451, Botond Botyanszki)
4991
4992 2003-08-13  Anders Carlsson  <andersca@gnome.org>
4993
4994         * tests/testtoolbar.c: (set_important_func), (important_toggled),
4995         (create_items_list):
4996         Add an important column.
4997         
4998 Tue Aug 12 15:00:15 2003  Owen Taylor  <otaylor@redhat.com>
4999
5000         * gtk/gtkwindow.c (gtk_window_real_set_focus): Protect
5001         against reentrancy from ::focus-out handlers. 
5002         (#118129, Felipe Heidrich)
5003
5004 Tue Aug 12 14:27:42 2003  Owen Taylor  <otaylor@redhat.com>
5005
5006         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Remove
5007         GDK_LOCK_MASK before calling
5008         gdk_keymap_translate_keyboard_state so bindings 
5009         and accelerators are independent of the Caps-lock
5010         key. (#115384, reported by Toni Willberg)
5011
5012 Mon Aug 11 12:07:14 2003  Owen Taylor  <otaylor@redhat.com>
5013
5014         * gdk/x11/gdkevents-x11.c (get_real_window): Add missing
5015         break statements (#119494, Soeren Sandmann)
5016
5017 Mon Aug 11 11:10:07 2003  Owen Taylor  <otaylor@redhat.com>
5018
5019         * gtk/gtkwidget.h: Mark parent public as well; it's
5020         extensively accessed in existing code, so there is
5021         no advantage in making people use get_parent().
5022         (Tweak to #119463 fix)
5023
5024 2003-08-11  Matthias Clasen  <maclas@gmx.de>
5025
5026         Add support for EWMH "Above" and "Below" window states.  (105100,
5027         Manuel Clos)
5028         
5029         * tests/testgtk.c: Add "Above" and "Below" to the the "Window
5030         State" demo.
5031
5032         * gtk/gtkwindow.h: Add gtk_window_set_keep_above and
5033         gtk_window_set_keep_below.
5034
5035         * gtk/gtk.def: Add gtk_window_set_keep_above and
5036         gtk_window_set_keep_below.
5037
5038         * gtk/gtkwindow.c (gtk_window_set_keep_below):
5039         (gtk_window_set_keep_above): New functions, call the corresponding
5040         gdk functions.
5041
5042         * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_below): New
5043         function, sets _NET_WM_STATE_BELOW.
5044         (gdk_window_set_keep_above): New function, sets
5045         _NET_WM_STATE_ABOVE.
5046
5047         * gdk/gdkwindow.h: Add gdk_window_set_keep_above and
5048         gdk_window_set_keep_below.
5049
5050         * gdk/gdkevents.h (GdkWindowState): Add GDK_WINDOW_STATE_ABOVE and
5051         GDK_WINDOW_STATE_BELOW.
5052
5053         * gdk/gdk.def: Add gdk_window_set_keep_above and
5054         gdk_window_set_keep_below.
5055
5056         * acinclude.m4: Copy newer versions of JH_CHECK_XML_CATALOG and
5057         JH_PATH_XML_CATALOG from gtk-doc to enable configuring without
5058         xmlcatalog in PATH.  (#119115)
5059
5060 2003-08-10  Matthias Clasen  <maclas@gmx.de>
5061
5062         * gtk/gtkwidget.h (struct _GtkWidget): Mark some members as
5063         public.  (#119463)
5064
5065 2003-08-09  Noah Levitt  <nlevitt@columbia.edu>
5066
5067         * gdk/gdkevents.h:
5068         * docs/reference/gdk/tmpl/windows.sgml: Elaborate a bit more in the
5069         docs on GdkFilterFunc and GdkFilterReturn.
5070
5071 2003-08-09  Matthias Clasen  <maclas@gmx.de>
5072
5073         * gtk/gtkcalendar.c:  Add and hook in gtk_calendar_scroll,
5074         to let the mouse wheels select the month. Scrolling down
5075         moves forward in time. (#53134, Abigail Brady) 
5076
5077         * gtk/gtkcalendar.c: Complete the RTL flipping support for
5078         GtkCalendar, make it possible to flip the headings using the
5079         "magic translated string" technique.  Translators, note the
5080         comment in gtk_calendar_init() explaining this.  (#102416)
5081
5082         * gtk/gtkcalendar.c: Get the information about the first day of
5083         the week from the locale using another instance of the "magic
5084         translated string" technique.  Ignore the display option
5085         GTK_CALENDAR_WEEK_START_MONDAY with a warning.  (#87977)
5086
5087         * gtk/gtkcalendar.c: Add DND support to GtkCalendar. The selected
5088         date is dragged as text, formatted via strftime %x. Text drops are
5089         accepted if g_date_set_parse() can make sense of the text. A
5090         dedicated data format for date DND has not been introduced yet,
5091         since there didn't seem to be sufficient consensus on such a
5092         format on xdg-list.  (#117297)
5093         
5094 2003-08-08  Matthias Clasen  <maclas@gmx.de>
5095
5096         * gdk/gdkregion-generic.c (gdk_region_spans_intersect_foreach):
5097         Fix a segfault.  (#115284, Jan Kratochvil)
5098
5099 2003-08-08  Tor Lillqvist  <tml@iki.fi>
5100
5101         * gdk/win32/gdkevents-win32.c (print_event): Print also the root
5102         coordinates for events that have such. Print coordinates for enter
5103         and leave events.
5104
5105         (gdk_event_translate): Don't use event uninitialixed in the
5106         return_exposes branch of the WM_PAINT handler.
5107
5108         * gdk/win32/gdkwindow-win32.c (gdk_window_new,
5109         _gdk_windowing_window_get_pointer, _gdk_windowing_window_at_pointer): 
5110         Must offset top-level window coordinates here, too.
5111
5112 2003-08-08  Matthias Clasen  <maclas@gmx.de>
5113
5114         * demos/gtk-demo/appwindow.c (do_appwindow): Hide the resize grip
5115         when maximized or fullscreen.
5116
5117 2003-08-07  Tor Lillqvist  <tml@iki.fi>
5118
5119         * gdk/win32/gdkinput-win32.h
5120         * gdk/win32/gdkinput-win32.c (_gdk_input_configure_event,
5121         _gdk_input_enter_event): Drop the GdkEvent* parameter, it wasn't
5122         used.
5123
5124         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Adapt caller
5125         accordingly, in fact an uninitialised variable was dereferenced.
5126         
5127
5128         [Win32] Add support for multiple monitors. 
5129         
5130         * gdk/win32/gdkprivate-win32.h
5131         * gdk/win32/gdkglobals-win32.c: New global variables for
5132         multiple-monitor info: _gdk_num_monitors, _gdk_monitors, and
5133         _gdk_offset_x and _gdk_offset_y.
5134         
5135         * gdk/win32/gdkdisplay-win32.c (count_monitor, enum_monitor): New
5136         functions, enumeration functions passed to EnumDisplayMonitors().
5137
5138         (gdk_display_open): If the EnumDisplayMonitors() and
5139         GetMonitorInfo() API is present (on Win98, Win2000 and newer), use
5140         if to find out monitor info.
5141
5142         Calculate the offset between Win32 coordinates (relative to the
5143         primary monitor's origin (and thus negative on monitors to the
5144         left of or above it), and GDK's (visible coordinates should be
5145         non-negative).
5146         
5147         * gdk/win32/gdkscreen-win32 (gdk_screen_get_n_monitors,
5148         gdk_screen_get_monitor_geometry): Use information collected above.
5149
5150         (gdk_window_move, gdk_window_move_resize_window_get_geometry):
5151         Subtract _gdk_offset_{x,y} from GDK root window coordinates.
5152
5153         (gdk_window_get_geometry, gdk_window_get_origin,
5154         gdk_window_get_frame_extents): For top-level windows, add
5155         _gdk_offset_{x,y} to GDK root window coordinates
5156
5157         Still need to handle multiple monitors in
5158         gdk_window_fullscreen(). Probably should make the window
5159         fullscreen on the monitor where the cursor is?
5160
5161         * gdk/win32/gdkevents-win32.c: Add _gdk_offset_{x,y} to all GDK
5162         root window coordinates in GdkEvents.
5163
5164         
5165         [Win32] Fix geometry hint handling. Add support for resize
5166         increment and base size, and aspect ratio geometry hints. The
5167         "gridded geometry" test in testgtk now works beautifully.
5168
5169         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
5170         Turns out this function shouldn't actually ever modify the
5171         window's size, just store the hints. (Old code kept for a while
5172         inside #if 0.)
5173
5174         (gdk_window_set_hints): Remove presumably broken code that handles
5175         the position hints, this function is obsolete anyway.
5176
5177         * gdk/win32/gdkevents-win32.c: Drop the current_{x,y}_root
5178         variables, not used.
5179
5180         (adjust_drag): New function, used to implement resize increment
5181         hints.
5182
5183         (gdk_event_translate): Handle WM_SIZING, implement resize
5184         increment and base size, and aspect ratio geometry hints here. The
5185         WM_GETMINMAXINFO handler takes care of the minimum and maximum
5186         size hints as before. Fix the WM_GETMINMAXINFO handler to take
5187         into account window decorations. No need to modify the
5188         ptMaxPosition and ptMaxSize fields in the MINMAXINFO struct,
5189         the defaults are fine.
5190         
5191         * gdk/win32/gdkprivate-win32.h 
5192         * gdk/win32/gdkwindow-win32.c (_gdk_win32_adjust_client_rect,
5193         _gdk_win32_get_adjusted_client_rect): New helper functions.
5194
5195 2003-08-07  Matthias Clasen  <maclas@gmx.de>
5196
5197         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): Reset the
5198         toplevel->have_* flags before iterating over the _NET_WM_STATE 
5199         atoms.  (#119217) 
5200
5201 Thu Aug  7 16:49:29 2003  Owen Taylor  <otaylor@redhat.com>
5202  
5203         * gtk/gtkwidget.c (gtk_widget_set_style_internal): 
5204         Fix a bug where on theme change, resize/redraw wasn't
5205         properly getting queued on toplevel windows. (#116346,
5206         Rajkumar Siva)
5207  
5208         * gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows): 
5209         Fix bug where wrong coordinates were used for toplevel
5210         window.
5211  
5212 Thu Aug  7 16:40:21 2003  Owen Taylor  <otaylor@redhat.com>
5213
5214         * gtk/gtknotebook.c (gtk_notebook_remove): Remove leftover
5215         page_num variable (Archit Baweja)
5216
5217 2003-08-07  Matthias Clasen  <maclas@gmx.de>
5218
5219         * gtk/gtkspinbutton.c (gtk_spin_button_default_input): Use g_strtod() to
5220         cope with C libraries with crippled locale support.  (#115293)
5221
5222 2003-08-07  Hans Breuer  <hans@breuer.org>
5223
5224         * gdk/win32/gdkevents-win32.c : finally use TrackMouseEvent
5225         (only if the new window not known to Gdk) to get proper
5226         leave notification, and get rid of the wrong placed 
5227         tooltips, bug #102283
5228  
5229         (gdk_event_translate) : small code reordering to not get
5230         GDK_MOTION_NOTIFY for still mouse and get back tooltips on 
5231         menus, bug #117367
5232
5233 2003-08-07  Tor Lillqvist  <tml@iki.fi>
5234
5235         * gdk/gdk.def
5236         * gdk/win32/gdkfont-win32.c (gdk_fontset_load_for_display): Add
5237         missing function, trivially implement.
5238
5239 2003-08-07  Matthias Clasen  <maclas@gmx.de>
5240
5241         * gtk/gtkctree.c (draw_row): Don't cut descenders when 
5242         rendering.  (#118646, Charles Kerr) 
5243
5244 2003-08-06  Hans Breuer  <hans@breuer.org>
5245
5246         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) :
5247         initialize bits to 0 (probably default on NT)
5248
5249         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
5250         now it works as intended ;-)
5251
5252 2003-08-04  Hans Breuer  <hans@breuer.org>
5253
5254         * gdk/win32/gdkwindow-win32.c(gdk_window_set_modal_hint) :
5255         set HWND_NOTOPMOST for modal==FALSE, fixes bug #118435
5256
5257         * gdk/win32/gdkwindow-win32.c : implement gdk_window_[un]fullscreen
5258         (gdk_window_{move,resize,move_rezize})) : noop if FULLSCREEN
5259
5260         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
5261         against all expectations it is basically ony a call with WM_SETICON
5262         needed (the visual effect is there, though colors or mask are
5263         still somewhat wrong).
5264         * gdk/win32/gdkwindow-win32.h : place to store the HICON
5265
5266         * gdk/win32/gdkdrawabke.win32.c : readded the conditional end
5267         pixel drawing as it was fixed at 1999-08-23
5268
5269         gtk/gtk.def : updated
5270
5271 Tue Aug  5 10:07:08 2003  Owen Taylor  <otaylor@redhat.com>
5272
5273         * gtk/gtkmessagedialog.c (gtk_message_dialog_get_property): 
5274         Add a missing break. (#119156, Callum McKenzie)
5275
5276 Tue Aug  5 00:24:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5277
5278         * gtk/gtkmenu.c (gtk_menu_position): New positioning
5279         algorithm.(#116649)
5280
5281 Fri Aug  1 15:26:46 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5282
5283         * gtk/gtktoolbar.c, gtk/toolitem.c: add new "is_important"
5284         property
5285         
5286         * gtk/gtkradiotoolbutton.c
5287         (gtk_radio_tool_button_new_from_widget): Don't take a stock id
5288
5289         * gtk/gtkradiotoolbutton.c
5290         (gtk_radio_tool_button_new_with_stock_from_widget): make this
5291         function take a stock_id.
5292
5293         * gtk/toolbar: documentation
5294
5295 Mon Aug  4 14:53:46 2003  Owen Taylor  <otaylor@redhat.com>
5296
5297         * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init): 
5298         Fix problem where use_xshm was getting set wrong if
5299         MIT_SHM wasn't found. (George Lebel)
5300
5301 2003-08-04  Tor Lillqvist  <tml@iki.fi
5302
5303         * gdk/win32/gdkevents-win32.c (apply_filters): Fix braino:
5304         actually use the passed-in filter list. The function also needs a
5305         GdkWindow parameter, as filter functions expect
5306         GdkEvent::any.window to be valid. (#119034, Hans Breuer)
5307
5308 2003-08-03  Matthias Clasen  <maclas@gmx.de>
5309
5310         * gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors): 
5311         (gdk_screen_get_monitor_geometry): Improve wording of the docs, avoid
5312         the term "virtual screen".  (#119030, Tor Lillqvist)
5313
5314 2003-08-02  Matthias Clasen  <maclas@gmx.de>
5315
5316         * tests/testtext.c (test_init): 
5317         * tests/testgtk.c (test_init): 
5318         * tests/testdnd.c (test_init): 
5319         * demos/pixbuf-init.c (pixbuf_init): 
5320         * demos/gtk-demo/main.c (main): Use g_setenv().
5321
5322         * gdk/x11/gdkdisplay-x11.c (_gdk_windowing_set_default_display): Use
5323         g_unsetenv(). 
5324
5325 Sat Aug  2 12:53:16 2003  Owen Taylor  <otaylor@redhat.com>
5326
5327         * configure.in: Requires glib-2.3.0, pango-1.2.0.
5328
5329         * configure.in: Require Xft version 2,
5330         remove code for handling older versions of pango and Xft.
5331         Many miscellaneous improvements to X checks
5332
5333         * acinclude.m4: Add GTK_ADD_LIB() macro for adding 
5334         a library to a variable, avoiding dups.
5335
5336         * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display): 
5337         Always load "fixed"
5338
5339         * gdk/x11/gdk*-x11.[ch]: Remove support for Xft1 and
5340         for pangox.
5341
5342 2003-08-02  Matthias Clasen  <maclas@gmx.de>
5343
5344         * gtk/gtkcolorsel.c (color_sample_drop_handle) 
5345         (palette_drop_handle): 
5346         * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):  Accept
5347         drops with the wrong format, since the KDE color chooser incorrectly
5348         drops application/x-color with format 8.  (#118810)
5349
5350         * gtk/gtkcolorsel.c (color_sample_drop_handle) (palette_drop_handle): 
5351         * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):  
5352         Accept drops with the wrong format, since the KDE color chooser 
5353         incorrectly drops application/x-color with format 8.  (#118810)
5354
5355 2003-08-02  Tor Lillqvist  <tml@iki.fi>
5356
5357         Fix gdk/win32 window geometry handling again. The window position
5358         in a GDK_CONFIGURE event should be that of the client area, not of
5359         the window decorations. (I was confused by the term "window
5360         border" in X11. It does *not* mean the window manager
5361         decorations. There are no X11-style window borders in Win32.)
5362         Also, this time do take the geometry hints into account
5363         appropriately when moving windows. Now testgtk's gravity test's
5364         move buttons work OK. There are stil problems with taking gravity
5365         into account when showing a hidden window.
5366
5367         * gdk/win32/gdkwindow-win32.h: Keep a whole GdkGeometry as hints
5368         instead of separate fields.
5369         
5370         * gdk/win32/gdkevents-win32.c (handle_configure_event): Don't
5371         adjust for decorations.
5372
5373         * gdk/win32/gdkwindow-win32.c (get_outer_rect,
5374         adjust_for_gravity_hints): New functions.
5375         (gdk_window_move, gdk_window_resize, gdk_window_move_resize): Use
5376         above functions, take geometry hints into account.
5377         (gdk_window_set_geometry_hints): Size hints specicy client area,
5378         not including decorations.
5379
5380 Fri Aug  1 17:10:22 2003  Owen Taylor  <otaylor@redhat.com>
5381
5382         * gtk/gtkfilesel.c (cmpl_completion_fullname): Always
5383         return an absolute path (#115590), fix a problem where
5384         you could crash the file selector with a looong name
5385         by returning a newly allocated buffer.
5386
5387 Fri Aug  1 16:44:51 2003  Owen Taylor  <otaylor@redhat.com>
5388
5389         * gtk/gtkfilesel.c (update_cmpl): Fix obvious reallocation
5390         bug in rarely or never hit code path (#118071,
5391         Tor Lillqvist)
5392
5393 Fri Aug  1 16:30:13 2003  Owen Taylor  <otaylor@redhat.com>
5394
5395         * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render): 
5396         If the check for missing depths, try actually creating pixmaps
5397         of the depths to deal with Xinerama not reporting
5398         all the depths it should. (#115822)
5399
5400 Fri Aug  1 15:33:59 2003  Owen Taylor  <otaylor@redhat.com>
5401
5402         * gtk/gtksocket.c: Patch from Denis Mikhalkin to
5403         forward KeyRelease events as well as KeyPress events.
5404         (#115597)
5405
5406 Fri Aug  1 15:06:25 2003  Owen Taylor  <otaylor@redhat.com>
5407  
5408         * gdk/gdk.c (gdk_parse_args): g_set_prgname("<unknown>")
5409         if argc is 0 as well, instead of leaving it unset.
5410         (#116023, Michael Meeks)
5411  
5412 Thu Jul 31 23:09:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5413
5414         * gtk/gtktoolbar.c (gtk_toolbar_class_init): make show_arrow
5415         default to TRUE; ignore the property when api_mode != NEW_API
5416
5417 2003-07-31  Matthias Clasen  <maclas@gmx.de>
5418
5419         * gtk/gtkwindow.c (gtk_window_set_default_icon): Rename parameter pixbuf
5420         to icon, to pacify gtk-doc.
5421
5422         * gtk/gtkwidget.c (gtk_widget_class_init): Fix formatting of drag-motion 
5423         example. 
5424
5425 Thu Jul 31 15:33:33 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5426
5427         * gtk/gtk*tool*.h: add padding to subclasses of GtkToolItem
5428
5429 Thu Jul 31 15:29:28 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5430
5431         * gtk/gtktoolitem.c (struct _GtkToolItemPrivate): remove unused
5432         overflow_item field.
5433
5434 Wed Jul 30 21:11:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5435
5436         * gtk/gtktoolitem.h: make _gtk_tool_item_toolbar_reconfigured()
5437         an internal function
5438
5439         * gtk/gtktoolitem.h: remove unused declaration of
5440         _gtk_tool_item_get_drag_window().
5441
5442 Wed Jul 30 17:03:58 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5443
5444         * gtk/gtktoolbutton.[ch]:
5445         (gtk_tool_button_new): swap icon_widget and label arguments to
5446         match BonoboUIToolbarButton.
5447
5448         * gtk/gtktoolbar.h: un-deprecate gtk_toolbar_{set|unset}_style().
5449
5450 2003-07-30  Matthias Clasen  <maclas@gmx.de>
5451
5452         * gtk/gtkwidget.c (gtk_widget_class_init): Some updates to the DND
5453         signal docs. 
5454
5455 2003-07-29  Tor Lillqvist  <tml@iki.fi>
5456
5457         Fix for #108007, #112402, #117042: There was confusion in
5458         gdk/win32 at various places whether a window position refers to
5459         the decoration position or the client area position. Also whether
5460         window size includes decorations or not.
5461         
5462         The correct interpretation apparently is that in GDK (like in
5463         X11), a top-level window position means the decoration's position,
5464         but size means the window's inner size (client area size). In the
5465         Win32 API, the window size usually includes the decorations,
5466         though.
5467         
5468         * gdk/win32/gdkevents-win32.c (decode_key_lparam): Move inside
5469         #ifdef G_ENABLE_DEBUG.
5470         (handle_configure_event): New function, generates GDK_CONFIGURE
5471         events from WM_SIZE and WM_MOVE messages. Even if no event is
5472         generated because of the event mask, still set the private
5473         position and size fields. Calculate position and size correctly.
5474         (gdk_event_translate): Call handle_configure_event().
5475
5476         * gdk/win32/gdkgeometry-win32.c: Cosmetics.
5477
5478         * gdk/win32/gdkwindow-win32.c: Use GDI_CALL() and API_CALL()
5479         macros. Cosmetic debugging output changes.
5480         (SafeAdjustWindowRectEx): Remove. If an application wants to
5481         locate a window outside of the screen, it's not GDK's business to
5482         prevent it. And anyway, with multiple monitors, negative
5483         coordinates are perfectly normal.
5484         (gdk_window_new): Adjust the window size for decorations after
5485         _gdk_window_init_position() has done its job. (But the big window
5486         code currently is presumably broken on Win32 anyway.)
5487         (gdk_window_move): The position passed in is supposed to be that
5488         of the window border, so don't need to adjust for decorations.
5489         (gdk_window_resize, gdk_window_move_resize): Simplify somewhat.
5490
5491 Tue Jul 29 13:55:44 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5492
5493         * gtk/gtktoolbar.c (gtk_toolbar_set_style,
5494         gtk_toolbar_prepend_element, gtk_toolbar_append_element,
5495         gtk_toolbar_insert_space, gtk_toolbar_prepend_space,
5496         gtk_toolbar_append_space, gtk_toolbar_insert_item,
5497         gtk_toolbar_prepend_item, gtk_toolbar_append_item,
5498         gtk_toolbar_set_tooltips, gtk_toolbar_set_orientation,
5499         gtk_toolbar_new, gtk_toolbar_prepend_item):
5500
5501         Move documentation inline from template files.
5502
5503         * gtk/gtktoolbar.c (gtk_toolbar_insert_element,
5504         gtk_toolbar_insert_widget, gtk_toolbar_prepend_widget,
5505         gtk_toolbar_append_widget, gtk_toolbar_remove_space,
5506         gtk_toolbar_insert_stock, gtk_toolbar_unset_icon_size,
5507         gtk_toolbar_get_icon_size, gtk_toolbar_set_icon_size,
5508         gtk_toolbar_get_tooltips, gtk_toolbar_unset_style,
5509         gtk_toolbar_get_style, gtk_toolbar_get_orientation)
5510
5511         Copy documentation from stable that was added after the EggToolbar
5512         branched.
5513
5514         * gtk/gtktoolbar.h: deprecate gtk_toolbar_unset_icon_size()
5515
5516 Mon Jul 28 18:21:34 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5517
5518         * gtk+/docs/: Commit autogenerated changes, so patches will make
5519         sense.
5520
5521 2003-07-27  Tor Lillqvist  <tml@iki.fi>
5522
5523         * gdk/win32/gdkevents-win32.c (build_key_event_state): On Win9x,
5524         the keyboard state returned by GetKeyboardState() doesn't
5525         distinguish between the left and right Control and Alt keys. Thus
5526         we cannot detect AltGr (which is supposed to be left Control +
5527         right Alt) the same way as on NT-based systems, but have to accept
5528         either Control + either Alt as AltGr.
5529
5530 2003-07-27  Matthias Clasen  <maclas@gmx.de>
5531
5532         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
5533         Fix function name in warning message.  (#118156, Tim-Philipp
5534         Mller)
5535
5536         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property):
5537         is-expander and is-expanded are boolean properties, not ints.
5538         (#118359, Josh Parsons)
5539
5540 Sat Jul 26 15:21:27 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5541
5542         * gtk/gtkimagemenuitem.c
5543         (gtk_image_menu_item_toggle_size_request): don't request
5544         toggle_space when the image width is 0.
5545
5546 2003-07-25  Tor Lillqvist  <tml@iki.fi>
5547
5548         * gdk/win32/gdkprivate-win32.h
5549         * gdk/win32/gdkglobals-win32.c: New flags _gdk_input_locale_is_ime
5550         and _gdk_keyboard_has_altgr.
5551         
5552         * gdk/win32/gdkevents-win32.c: Lots of changes. Most important
5553         ones detailled here.
5554
5555         Code that has been ifdeffed out for a long time removed. Remove
5556         some really old doc comments that were left behind for some public
5557         functions, the official ones are in the X11 backend anyway. Change
5558         GDK_WINDOW_OBJECT() calls to GdkWindowObject casts. Reformat
5559         multi-line boolean expressions to have the operators at ends of
5560         lines.
5561
5562         As mouse capture with SetCapture() indeed seems to work OK, no
5563         need to have the correspoinding macro USE_SETCAPTURE and ifdefs.
5564
5565         Ifdef out the gdk-ping-msg stuff. I don't remember why it was
5566         needed at some time, and things seem to work fine now without
5567         (knock on wood).
5568
5569         Ifdef out the search for some Latin locale keyboard layout being
5570         loaded. Not used currently, but might be needed after all, if we
5571         decide that we want to be able to generate ASCII control character
5572         events with a non-Latin keyboard.
5573
5574         (assign_object): New helper function, handles the g_object_ref()
5575         and unref() calls when assigning GObject pointers.
5576                 
5577         (generate_crossing_events): Also generate the GDK_NOTIFY_INTERIOR
5578         enter event when the pointer has moved to an ancestor window. Was
5579         left out by mistake.
5580
5581         (gdk_window_is_ancestor): Renamed from gdk_window_is_child().
5582
5583         (gdk_pointer_grab, gdk_pointer_ungrab): Implement the confine_to
5584         functionality, using ClipCursor().
5585                 
5586         (find_window_for_mouse_event): Splice part of code into new
5587         function find_real_window_for_grabbed_mouse_event().
5588
5589         (fixup_event, append_event, apply_filters): New functions, code
5590         refactored out from elsewhere.
5591
5592         (synthesize_enter_or_leave_event, synthesize_leave_event,
5593         synthesize_enter_event,
5594         synthesize_leave_events,synthesize_enter_events): Also take a
5595         GdkCrossingMode parameter, in preparation to generating
5596         GDK_CROSSING_GRAB and GDK_CROSSING_UNGRAB events.
5597
5598         (fixup_event, append_event, fill_key_event_string): New functions,
5599         code refactoring.
5600
5601         (vk_from_char, build_keypress_event, build_keyrelease_event):
5602         Removed as part of dropping WM_CHAR handling.
5603
5604         (build_key_event_state,gdk_event_translate): Call
5605         GetKeyboardState(), once, for each keyboard message, instead of
5606         several calls to GetKeyState() here and there.
5607
5608         (gdk_event_translate): Fix bugs #104516, #104662, #115902. While
5609         at it, do some major refactoring, and some fixes for potential
5610         problems noticed while going through the code.
5611
5612         Don't handle WM_CHAR at all. Only handle WM_KEYDOWN and
5613         WM_KEYUP. Don't need the state variables related to whether to
5614         wait for WM_CHAR or not, and whether the current key is
5615         AltGr. Remove lots of complexity. Thus don't need the
5616         use_ime_composition flag.
5617
5618         Not handling WM_CHAR means dead key handling will have to be taken
5619         care of by GTK, but that seems to work fine, so no worry.
5620
5621         Another side-effect is that Alt+keypad digits don't work any
5622         longer, but it's better to learn to use GTK's ISO14755 support is
5623         anyway.
5624
5625         Be more careful in checking whether AltGr is involved. Only
5626         attempt to handle it if the keyboard actually has it. And
5627         explicitly check for *left* Control plus *right* Alt being
5628         pressed. Still, allow (left) Alt and/or (right) Control with AltGr
5629         chars.
5630
5631         Handle keys using similar code as in the X11 backend. As we have
5632         built a keymap in gdkkeys-win32.c anyway, use it by calling
5633         gdk_keymap_translate_keyboard_state() to look up the keysym from
5634         the virtual key code and keyboard state. Build the key event
5635         string in exactly the same way as the X11 backend.
5636
5637         If an IME is being used, don't generate GDK events for keys
5638         between receiving WM_IME_STARTCOMPOSITION and
5639         WM_IME_ENDCOMPOSITION, as those keys are for the IME.
5640         
5641         For WM_IME_COMPOSITION, handle all the Unicode chars returned from
5642         the IME, not just the first one.
5643
5644         gdk_event_translate() is still quite complex, could split the
5645         message handler cases out into separate functions.
5646
5647         On mouse events, when the mouse is grabbed, use
5648         find_real_window_for_grabbed_mouse_event() in order to be able to
5649         generate correct crossing events.
5650         
5651         No longer take a pre-allocated GdkEvent as parameter. Instead,
5652         allocate events as needed and append them to the queue. (This is
5653         different from how gdk_event_translate() in the X11 backend
5654         works.) This change made the code much clearer, especially in the
5655         cases where we have to generate several GDK events for one Windows
5656         message.  Return FALSE if DefWindowProc() should be called, TRUE
5657         if not. If DefWindowProc() should not be called, also return the
5658         value to be returned from the window procedure.
5659
5660         (Previously, the interaction with gdk_event_translate()'s caller
5661         was much more complex, when we had to indicate whether the
5662         already-queued event should be left in the queue or removed, and
5663         in addition also had to indicate whether to call DefWindowProc()
5664         or not, and what value to return from the window procedure if
5665         not.)
5666
5667         Don't use a separate "private" variable required to be pointing to
5668         the GdkWindowObject of the "window" variable at all times. Just
5669         use casts, even if looks a bit uglier.
5670
5671         Notice destroyed windows as early as possible, and break out of
5672         the messsage switch.
5673
5674         Use _gdk_pointer_root as current_window when the pointer is
5675         outside GDK's top-level windows.
5676         
5677         On WM_INPUTLANGCHANGE, set _gdk_input_locale_is_ime as
5678         appropriate, based on ImmIsIME().
5679         
5680         (gdk_event_translate, gdk_event_send_client_message_for_display,
5681         gdk_screen_broadcast_client_message): Implement client messages.
5682         Use a registered Windows message to pass GDK client messages. Note
5683         that the amount of user data is restricted to four bytes, as it is
5684         carried in the LPARAM. (The WPARAM is used for the message type
5685         "atom".)
5686         
5687         (real_window_procedure): Adapt for new gdk_event_translate()
5688         interface.
5689
5690         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Set
5691         _gdk_input_locale_is_ime initially.
5692
5693         * gdk/win32/gdkwindow-win32.c: Use g_object_ref()/unref() instead
5694         of g_colormap_ref()/unref().
5695
5696         (gdk_window_new): Made code a bit more like the X11 one, pretend
5697         to handle screens (although we just have one for now).
5698
5699         * gdk/x11/gdkevents-x11.c
5700         (gdk_event_send_client_message_for_display,
5701         gdk_screen_broadcast_client_message): Document the user data
5702         limitation on Win32.
5703
5704         * gdk/win32/gdkevents-win32.c (print_event): More complete enter
5705         and leave notify detail output.
5706
5707         * gdk/win32/gdkkeys-win32.c (update_keymap): Make dead keys
5708         visible to GDK and GTK. Store the corresponding GDK_dead_* keysym
5709         for those, so that the GtkIMContextCimple compose tables will
5710         work. Deduce if the keyboard layout has the AltGr key, and set the
5711         above flag accordingly.
5712
5713 2003-07-26  Matthias Clasen  <maclas@gmx.de>
5714
5715         * gtk/gtkwidget.c: Document DND signals.
5716
5717 2003-07-24  Matthias Clasen  <maclas@gmx.de>
5718
5719         * gtk/gtktextview.c (popup_targets_received): Make the "Input Methods"
5720         insensitive when editing isn't possible.  (#118150)
5721
5722 2003-07-23  Matthias Clasen  <maclas@gmx.de>
5723
5724         * gtk/gtkcolorsel.c (gtk_color_selection_init): Make the hue 
5725         spinbutton wrap.  (#118097, John Darrington)
5726
5727         * docs/faq/gtk-faq.sgml: Mention Xnest as a way to debug GTK+ apps. 
5728
5729 2003-07-20  Hans Breuer  <hans@breuer.org>
5730
5731         * makefile.msc : new file to build it all
5732         * Makefile.am : ... added to EXTRA_DIST
5733
5734         * gdk/makefile.msc gtk/stock-icons/makefile.msc 
5735           gtk/makefile.msc.in tests/makefile.msc : updated
5736
5737         * gdk/gdk.def gtk/gtk.def : export a bunch of new 
5738         functions
5739
5740         * gtk/gtkbbox.c : use g_return_val_if_fail() if
5741         there is a value to return
5742
5743         * gtk/gtkfontsel.c gtk/gtkiconfactory.c :
5744         static correctness
5745
5746         * gtk/gtkicontheme.c : ported to use GTimeVal instead of
5747         struct timeval and GTK_DATA_PREFIX instead of GTK_DATADIR
5748
5749         * gtk/gtkicontheme.c : use HAVE_LC_MESSAGES
5750
5751         * gtk/gtkimmulticontext.c : use gtkprivate.h
5752
5753         * gtk/stock-icons/stock_color_picker_25.png
5754           gtk/stock-icons/stock_jump_to_rtl_16.png
5755           gtk/stock-icons/stock_jump_to_rtl_24.png
5756           gtk/stock-icons/stock_redo_rtl_16.png
5757           gtk/stock-icons/stock_redo_rtl_24.png
5758           gtk/stock-icons/stock_undelete_rtl_16.png
5759           gtk/stock-icons/stock_undelete_rtl_24.png
5760           gtk/stock-icons/stock_undo_rtl_16.png :
5761           gtk/stock-icons/stock_undo_rtl_24.png :
5762         readded as binary
5763
5764 Sat Jul 19 22:39:24 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5765
5766         * gtk/gtktoolitem.c (gtk_tool_item_size_request): remove
5767         leftover request of {xy}thickness
5768
5769 Sat Jul 19 16:26:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5770
5771         * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): don't
5772         attempt to add a NULL icon to the box.
5773
5774 Sat Jul 19 12:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5775
5776         * gtk/gtknotebook.c (gtk_notebook_focus_in|out): only redraw tabs
5777         on focus in/out.
5778
5779 2003-07-19  Matthias Clasen  <maclas@gmx.de>
5780
5781         * gtk/gtkstock.h (GTK_STOCK_DIALOG_AUTHENTICATION): New stock id. 
5782         * gtk/gtkiconfactory.c (get_default_icons): Add
5783         stock_dialog_authentication_48.  (#65765) 
5784         * gtk/stock-icons/Makefile.am (VARIABLES2, IMAGES): Here too.
5785         * gtk/stock-icons/stock_dialog_authentication_48.png: New image.
5786
5787         * gtk/gtkbbox.h: 
5788         * gtk/gtkbbox.c (gtk_button_box_get_child_secondary): New
5789         function. (#64562) 
5790
5791 Sat Jul 19 00:18:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5792
5793         * gtk/gtkwindow.c (gtk_window_set_default_icon): Fix C99
5794         declaration
5795
5796         * gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): new function
5797         (gtk_widget_real_focus_{in|out}_event): queue shallow draws
5798         instead of full draws.
5799
5800 2003-07-18  Matthias Clasen  <maclas@gmx.de>
5801
5802         * gtk/gtkwindow.c: Add properties decorated and gravity.  (#80234) 
5803
5804         * gtk/gtktextview.c (gtk_text_view_class_init): Add a new keybinding
5805         signal, move_viewport. 
5806         (gtk_text_view_move_viewport): New function which implements the
5807         move_viewport functionality. 
5808         (gtk_text_view_move_cursor_internal): If the cursor is not visible, move
5809         the viewport. (#78669) 
5810
5811         * gtk/gtkenums.h (GtkScrollStep): New enumeration, used for
5812         move_viewport argument. 
5813
5814         * gtk/gtkstatusbar.c (gtk_statusbar_class_init): Add a has_resize_grip
5815         property.  (#111779) 
5816
5817         * gtk/gtkwindow.h: 
5818         * gtk/gtkwindow.c (gtk_window_set_default_icon): New method.  (#95816)
5819
5820         * gtk/gtkmessagedialog.h:
5821         * gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): New method.  
5822         (#65501, Sebastian Rittau)
5823
5824 Fri Jul 18 20:06:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5825
5826         * gtk/gtktextview.c (changed_handler): use
5827         gtk_widget_queue_resize_noredraw().
5828
5829 2003-07-16  Jody Goldberg <jody@gnome.org>
5830
5831         * gdk/x11/gdkwindow-x11.c (gdk_window_focus) : fix cut-n-paste-o
5832
5833 Fri Jul 18 19:55:50 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5834
5835         * gtk/gtkwidget.c (gtk_widget_queue_resize_no_redraw): Add this
5836         API. 
5837
5838 Fri Jul 18 18:43:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5839
5840         By popular request give toolbuttons a border.
5841         
5842         * gtk/gtktoolitem.c
5843         (gtk_tool_item_size_allocate):
5844         (gtk_tool_item_size_request): don't request and allocate a border
5845         around the child
5846
5847         * gtk/gtktoolbutton.c 
5848         (gtk_tool_button_size_allocate):
5849         (gtk_tool_button_size_request): remove these functions
5850
5851         * gtk/gtktoolbar.c 
5852         (gtk_toolbar_size_request):
5853         (gtk_toolbar_size_allocate): request and allocate a border if we
5854         have a shadow.
5855
5856 Thu Jul 17 19:24:51 2003  Kristian Rietveld  <kris@gtk.org>
5857
5858         Merged from stable.
5859
5860         Fixes issues pointed out by Morten Welinder in #115140.
5861
5862         * gtk/gtktreeview.c (gtk_tree_view_size_request): fix comment,
5863         (do_validate_rows): update validated_area with a logic OR instead
5864         of a bitwise OR,
5865         (validate_rows_handler): make the if statement match the one in
5866         validate_rows(), so we don't leak the timeout.
5867
5868 Thu Jul 17 19:12:02 2003  Kristian Rietveld  <kris@gtk.org>
5869
5870         Merged from stable.
5871
5872         * gtk/gtktreeview.c (gtk_tree_view_remove_widget): the treeview
5873         should only grab focus back if the "cell_editable" widget still
5874         has focus. (Fixes #110104, testcase provided by Marco Pesenti
5875         Gritti).
5876
5877 Thu Jul 17 19:06:34 2003  Kristian Rietveld  <kris@gtk.org>
5878
5879         Merged from stable.
5880
5881         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
5882         Don't set attr.event_mask twice, those things were meant to be
5883         ORred. (#115139, pointed out by Morten Welinder).
5884
5885 Thu Jul 17 16:11:21 2003  Kristian Rietveld  <kris@gtk.org>
5886
5887         Merged from stable.
5888
5889         * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): stop editing
5890         if needed. (Fixes #115869, reported by Michael Natterer).
5891
5892 2003-07-15  Matthias Clasen  <maclas@gmx.de>
5893
5894         * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
5895         Fight against gtk-doc stupidity.
5896
5897 2003-07-13  Matthias Clasen  <maclas@gmx.de>
5898
5899         * gtk/gtkdnd.c (gtk_drag_begin): Rename parameter target_list back to 
5900         targets, to pacify gtk-doc.
5901
5902 Sun Jul 13 15:57:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5903
5904         * gtk/gtktoolbutton.c (gtk_tool_button_finalize): Fix leaks of
5905         label_text, label_widget and icon_widget. (#117312, 
5906         Christian Persch)
5907         
5908 Sun Jul 13 01:37:51 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5909
5910         * gtk/gtkmenu.c (gtk_menu_class_init): new properties
5911         "horizontal-offset" and "vertical-offset" that determines the
5912         position of the menu when it is a submenu. 
5913
5914         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): position
5915         submenus according to new vertical- and horizontal-offset
5916         properties.
5917
5918 Sat Jul 12 16:16:04 2003  Kristian Rietveld  <kris@gtk.org>
5919
5920         Merged from stable.
5921
5922         * gtk/gtktreeview.c (gtk_tree_view_drag_data_received): special
5923         case drags to "0", scroll to the top after dropping. (Fixes #94968,
5924         reported by Alp Toker).
5925
5926 Sat Jul 12 16:08:32 2003  Kristian Rietveld  <kris@gtk.org>
5927
5928         Merged from stable.
5929
5930         * demos/gtk-demo/editable_cells.c (cell_edited): fixup bad
5931         code (#115784, Owen Taylor).
5932
5933 Sat Jul 12 16:01:03 2003  Kristian Rietveld  <kris@gtk.org>
5934
5935         Merged from stable.
5936
5937         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
5938         free the old text and extra_attrs *after* we parsed the new
5939         markup string. (Fixes #114485, reported by Owen Taylor).
5940
5941 Sat Jul 12 15:51:33 2003  Kristian Rietveld  <kris@gtk.org>
5942
5943         Merged from stable.
5944
5945         Fixes #113904, testcase provided by Rene Seindal.
5946
5947         * gtk/gtktreeview.c (gtk_tree_view_button_press): set
5948         pressed_button to -1 when a row has been activated,
5949         (gtk_tree_view_motion_bin_window): only start a drag if there's
5950         a button being pressed.
5951
5952 Sat Jul 12 15:51:18 2003  Kristian Rietveld  <kris@gtk.org>
5953
5954         Merged from stable.
5955
5956         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): use
5957         gdk_window_get_pointer instead of gdk_display_get_window_at_pointer
5958         to avoid a roundtrip (#110272, Owen Taylor).
5959
5960 Sat Jul 12 15:28:26 2003  Kristian Rietveld  <kris@gtk.org>
5961
5962         Merged from stable.
5963
5964         This patch really really fixes scrolling. Related bugs: #81627,
5965         testcase provided by Timo Sirainen, #111500, testcase provided by
5966         manu, #113241, reported by Pedro Gimeno/Michael Natterer.
5967
5968         * gtk/gtktreeview.c (validate_visible_area): scrolling to a dy
5969         which is equal to the lower border of the window means scrolling
5970         to an invisible row, always update the dy when scrolling to an
5971         invisible row, corrected area_above/below calculations for
5972         invisible rows, when walking the tree correct the size
5973         subtracted for invalidated rows, fix wrong logic in comment.
5974
5975 2003-07-11  Matthias Clasen  <maclas@gmx.de>
5976
5977         * gtk/gtkicontheme.c (pixbuf_supports_svg): Use g_strfreev() to free
5978         mime_types.  (#117219, Steve Chaplin)
5979
5980 Tue Jul  8 20:11:04 2003  Owen Taylor  <otaylor@redhat.com>
5981
5982         * gdk/x11/gdkevents-x11.c (get_real_window)
5983         gdk/x11/gdkinput-x11.c (_gdk_input_common_init)
5984         gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init)
5985         gdk/x11/gdkprivate-x11.h (_gdk_windowing_image_init)
5986         Don't assume that all events start with XEventAny - Xkb events
5987         don't! (#105745). So, only do that for core events, and for
5988         non-core events, add a system for registering event types
5989         that start with XEventAny.
5990
5991         * gdk/x11/gdkevents-x11.c (gdk_event_translate):
5992         Check to see if the result of gdk_window_lookup_for_display()
5993         is actually a window.
5994
5995 Fri Jul 11 20:48:14 2003  Kristian Rietveld  <kris@gtk.org>
5996
5997         * gtk/gtktreemodel.c (gtk_tree_path_free): make the path != NULL
5998         check a silent assert, so it follows the g_free() behaviour.
5999
6000 2003-07-11  Matthias Clasen  <maclas@gmx.de>
6001
6002         * gtk/gtkstatusbar.c (gtk_statusbar_init): Center statusbar contents 
6003         vertically.  (#109823, Joe Shaw)
6004
6005 2003-07-11  Morten Welinder  <terra@gnome.org>
6006
6007         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixbuf): Fix memory
6008         access error.  (#69436)
6009
6010 Fri Jul 11 14:32:43 2003  Kristian Rietveld  <kris@gtk.org>
6011
6012         Landing GtkTreeModelFilter and the completion code. (Test program
6013         and documentation will follow next week).
6014
6015         * gtk/gtkcellayout.[ch], gtk/gtkentrycompletion.[ch],
6016         gtk/gtktreemodelfilter.[ch], gtk/gtkentryprivate.h: new files.
6017
6018         * gtkentry.[ch]: added gtk_entry_{get,set}_completion, wrote
6019         necessary code to hook up completion.
6020
6021         * gtktreeviewcolumn.c: made GtkTreeViewColumn implement the new
6022         GtkCellLayout interface.
6023
6024         * gtkmarshalers.list: added BOOLEAN:OBJECT,BOXED.
6025
6026         * gtk/gtk.h, gtk/Makefile.am, po/POTFILES.in: all updated for the new
6027         source files.
6028
6029 Wed Jul  9 19:48:26 2003  Kristian Rietveld  <kris@gtk.org>
6030
6031         Merge from stable.
6032
6033         * gdk/gdkdisplay.c (gdk_display_get_window_at_pointer): don't
6034         directly return from ->window_at_pointer, but set win_x and win_y
6035         first if needed. (Fixes #110166, reported by Arno Charlet).
6036
6037         * gdk/gdkwindow.c (gdk_window_get_composite_drawable): change
6038         function to accept GdkDrawables and not just GdkWindows. This was
6039         already done in some other functions a while back, but this patch
6040         got lost for some reason.
6041
6042 2003-07-09  Matthias Clasen  <maclas@gmx.de>
6043
6044         * gtk/gtkcontainer.c (gtk_container_focus_sort_tab): Consider the text
6045         direction when sorting children.  (#116540, Soeren Sandmann)
6046
6047 Tue Jul  8 17:36:21 2003  Owen Taylor  <otaylor@redhat.com>
6048
6049         * gdk/x11/gdkasync.[ch] gdk/gdkdnd-x11.c: 
6050         Change _gdk_x11_send_xevent_async() to 
6051         _gdk_x11_send_client_message_async() avoid using Xlib
6052         internals that are different on Solaris. 
6053         (#116917, Morten Welinder)
6054
6055 2003-07-08  Matthias Clasen  <maclas@gmx.de>
6056
6057         * gtk/gtkcontainer.c (gtk_container_remove): Doc addition.
6058         (#116501, Doug Quale)
6059
6060 Tue Jul  8 21:35:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6061
6062         * gtk/gtktoggletoolbutton.h: remove strange #define
6063         * gtk/gtktoolbutton.h: fix cut'n'paste error
6064         * gtk/gtktoolbutton.c (gtk_tool_button_init): use instance
6065         private data
6066         * gtk/gtktoolitem.c (gtk_tool_item_class_init): use instance
6067         private data instead of g_new0()
6068         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): use
6069         instance private data
6070
6071 Tue Jul  8 21:10:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6072
6073         * gtk/gtkbutton.c (gtk_button_realize): remove GDK_EXPOSURE_MASK
6074         for INPUT_ONLY window
6075         * gtk/gtkmenuitem.c (gtk_menu_item_realize): same
6076         * gtk/gtknotebook.c (gtk_notebook_realize): same
6077         * gtk/gtkexpander.c (gtk_expander_realize): same
6078         * gtk/gtkrange.c (gtk_range_realize): same
6079
6080         Fix #116303
6081
6082 Tue Jul  8 19:57:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6083
6084         * gtk/gtkstyle.c (gtk_default_draw_arrow): remove correction on x
6085         when detail is "menuitem". With the new menu look is isn't needed
6086         anymore.
6087
6088         * gtk/gtktoolitem.c (gtk_tool_item_toolbar_reconfigured): queue a
6089         resize here, so that tool items will get a chance to relayout
6090         themselves based on the toolbar configuration.
6091
6092         change DEFAULT_SPACE_SIZE to 4 instead of 5
6093
6094         * gtk/gtktoolbar.c 
6095         Get rid of "!GTK_BIN (item)->child means separator". Separators
6096         are widgets in their own right
6097
6098         change DEFAULT_SPACE_SIZE to 4 instead of 5
6099         
6100         (get_space_size): remove this function
6101         (toolbar_item_is_homogeneous): new function
6102
6103         * gtk/gtkseparatortoolitem.c
6104         (gtk_separator_tool_item_size_request): new function.
6105
6106 Tue Jul  8 14:10:35 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6107
6108         * gtk/gtktoggletoolbutton.h: use private data, add new
6109         internal function _gtk_toggle_tool_button_get_button()
6110
6111         * gtk/gtktoolbutton.h: move to private data
6112
6113         * gtk/gtkradiotoolbutton.c, gtk/gtktoolbutton.c: updates for new
6114         private data.
6115
6116 Tue Jul  8 12:50:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6117
6118         * gtk/gtktoolbutton.c (gtk_tool_button_get_icon_widget): fix a
6119         type check, (#116947, Krasimir Angelov)
6120
6121         * gtk/gtktoolbar.c: Use new GtkToolItem accessors.
6122         
6123         * gtk/gtktoolitem.[ch]: Use a private struct to hold the instance
6124         data. Not instance private data yet, because of bug 116921.
6125
6126         * gtk/gtktoolitem.h: new accessors:
6127                 gtk_tool_item_get_homogeneous ()
6128                 gtk_tool_item_get_expand ()
6129                 gtk_tool_item_get_pack_end ()
6130                 gtk_tool_item_get_use_drag_window ()
6131
6132 Mon Jul  7 16:50:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6133
6134         * gtk/gtkcellrenderertext.c
6135         (gtk_cell_renderer_text_class_init): remove accidentally committed
6136         debugging spew
6137
6138         * gtk/gtktoolbar.c
6139         (gtk_toolbar_paint_space_line): remove this function
6140         (gtk_toolbar_expose): always propagate expose, even if the item is
6141         a separator item
6142
6143         * gtk/gtkseparatortoolitem.c
6144         (gtk_separator_tool_item_expose): moved here from gtktoolbar.c
6145         (get_space_size): new function.
6146         (get_space_style): new function
6147
6148 Sun Jul  6 13:00:20 2003  Owen Taylor  <otaylor@redhat.com>
6149
6150         * gtk/gtkdnd.c (_gtk_drag_source_handle_event)
6151         * gtk/gtkdnd.c (gtk_drag_begin_internal):  Remove use
6152         of GDK_POINTER_MOTION_HINT_MASK.
6153
6154         * gtk/gtkdnd.c (gtk_drag_update_idle): Move updating
6155         of the drag into an idle as a superior form of 
6156         expose compression.
6157
6158         * gtk/gtkdnd.c (gtk_drag_begin_internal): Move default icon
6159         creation here, so that we have an icon at the start
6160         of the drag (e.g., when retrieving the window cache
6161         information.)
6162
6163 Sun Jul  6 17:21:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6164
6165         * docs/widget_geometry.txt: better drawing of GtkMenuItem
6166         * docs/widget_geometry.txt: add notes about GtkMenu
6167         * gtk/gtkstyle.c: remove leftover "#include "gtkhandlebox.h""
6168
6169 Sat Jul  5 10:34:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6170
6171         * gtk/gtkmenu.c: add vertical_padding style property.
6172         
6173         * gtk/gtkmenuitem.c: add style properties toggle_spacing,
6174         arrow_spacing and horizontal_padding. Also center separators and
6175         make them a bit taller.
6176
6177         * gtk/*menuitem.c: use new style properties.
6178         
6179         * docs/widget_geometry.txt: Add note about GtkMenuItem
6180
6181         * gtk/gtkstyle.c 
6182         (gtk_default_draw_vline, gtk_default_draw_hline):
6183         fix +/-1 errors. 
6184
6185         (gtk_default_draw_shadow): draw a black border around menus.
6186
6187         * gtk/gtkvseparator, gtk/gtkhseparator.c, gtk/gtkmenuitem.c: fix
6188         calls to gtk_paint_hline() and gtk_paint_vline() (they take x1,
6189         x2 and y1, y2 respectively, not x, width and y, height).
6190
6191 Sat Jul  5 09:55:38 2003  Owen Taylor  <otaylor@redhat.com>
6192
6193         * gdk/x11/gdkdnd-x11.c (precache_target_list): Lookup
6194         all the atoms in the target list at once.
6195
6196         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
6197         Local drag short-circuit.
6198
6199         * gdk/x11/gdkdnd-x11.c (gdk_drag_motion): For the
6200         local case, poke the actions in directly instead of
6201         going through xdnd_set_actions.
6202
6203         * gdk/x11/gdkdnd-x11.c (xdnd_read_actions): Short-circuit
6204         the local case.
6205
6206         * gdk/x11/gdkdnd-x11.c (xdnd_manage_source_filter): Don't
6207         XSelectInput()/add a filter if the drag is local.
6208
6209         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_selection): 
6210         Simplify handling of "XdndSelection".
6211
6212         * gdk/x11/gdkevents-x11.c
6213         (gdk_event_send_client_message_to_all_recurse): Somehow,  
6214         a WM_STATE => _NET_WM_STATE change hand been made here.
6215
6216         * gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Free
6217         xatom_names, not atom_names.
6218
6219         * tests/testdnd.c (target_drag_motion): Make the trashcan
6220         open again. (Got lost in deprecation cleanup.)
6221
6222 Sat Jul  5 00:49:32 2003  Owen Taylor  <otaylor@redhat.com>
6223
6224         * gtk/gtkdnd.c (gtk_drag_begin): Move the grabs up
6225         earlier, so we don't get a big pile of uncompressed
6226         motion events before the grab takes effect.
6227
6228         * gtk/gtkdnd.c (gtk_drag_update_icon): Call 
6229         gdk_window_process_all_updates() so that the area
6230         we are dragging over gets a change to redraw.
6231
6232         * gtk/gtkdnd.c (_gtk_drag_dest_handle_event): Use 
6233         gdk_window_get_position(), not gdk_window_get_origin().
6234
6235         * gdk/x11/gdkwindow-x11.[ch] (gdk_window_have_shape_ext)
6236         gdkdisplay-x11.h: use XShapeQueryExtension to 
6237         avoid duplicate XQueryExtension when we actually
6238         use it. Remove unnecessary caching in GdkDisplayX11.
6239
6240 Fri Jul  4 23:49:22 2003  Owen Taylor  <otaylor@redhat.com>
6241
6242         * gdk/x11/gdkasync.[ch] (_gdk_x11_get_window_child_info): 
6243         Function to get a range of information about all the
6244         children of a window in a single pass.
6245
6246         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse)
6247         gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Use
6248         _gdk_x11_get_window_child_info() to greatly reduce
6249         the number of roundtrips.
6250
6251 Fri Jul  4 22:57:18 2003  Owen Taylor  <otaylor@redhat.com>
6252
6253         * gdk/x11/gdkasync.[ch] (_gdk_send_xevent_async): Add
6254         a function to XSendEvent() and call a calback on
6255         failure/success.
6256
6257         * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Short-circuit
6258         messages to the same process, use _gdk_send_xevent_async().
6259
6260 Fri Jul  4 22:26:27 2003  Owen Taylor  <otaylor@redhat.com>
6261
6262         * gdk/x11/gdkwindow-x11.[ch] gdkevents-x11.c: Split
6263         toplevel-specific pieces of GdkWindowImplX11 into
6264         a separate GdkToplevelX11 structure.
6265
6266 Fri Jul  4 22:05:09 2003  Owen Taylor  <otaylor@redhat.com>
6267
6268         * gdk/x11/gdkasync.c (struct _SetInputFocusState): Fix
6269         some leftover fields.
6270
6271 Fri Jul  4 15:57:52 2003  Owen Taylor  <otaylor@redhat.com>
6272
6273         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
6274         Use asynchronously _gdk_x11_set_input_focus_safe
6275         to avoid having to trap errors and XSync().
6276
6277         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): Use
6278         _gdk_x11_set_input_focus_safe() here as well.
6279
6280         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed):
6281         Rework handling of property notifies on _NET_WM_STATE
6282         so that we ignore _NET_WM_DESKTOP notifies unless we
6283         really care.
6284
6285         * gdk/x11/gdkimage-x11.c (gdk_image_check_xshm): Use
6286         XShmQueryExtension() rather than XQueryExtension() to
6287         avoid extra rountrip.
6288
6289         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init):
6290         Remove unused call to XGetWindowAttributes()
6291         
6292         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Remove
6293         unused call to XGetKeyboardControl().
6294
6295         * gdk/x11/gdkdisplay-x11.c gdk/gdk.def (gdk_display_flush):
6296         Add (#99571)
6297
6298         * gdk/win32/gdkevents-win32.c gdk/linux-fb/gdkevents-fb.c 
6299         No-op implementations of gdk_display_flush().
6300
6301         * gdk/gdkwindow.c (gdk_window_process_all_updates): Use
6302         gdk_display_flush() rather than gdk_flush() to avoid
6303         XSync().
6304         
6305         * gdk/x11/gdkwindow-x11.c (update_wm_hints)
6306         gdk/x11/gdkwindow-x11.h: Centralize all handling of WM_HINTS here
6307         so that we don't have to get the property back from the server.
6308
6309         * gdk/x11/gdkwindow-x11.c (show_window_internal): Store
6310         the serial of when we map a toplevel to allow optimizing
6311         out notifies on _NET_WM_STATE/_NET_WM_DESKTOP.
6312
6313         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Don't
6314         XTranslateCoordinates() for override-redirect windows.
6315
6316 Fri Jul  4 15:59:27 2003  Owen Taylor  <otaylor@redhat.com>
6317
6318         * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Remove comment
6319         about setting window group after the window is mapped from docs
6320         - nothing the ICCCM forbids that.
6321
6322         * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
6323         Fix g_return_val_if_fail() in void return function.
6324
6325         * configure.in: Fix misplaced comma that was resulting
6326         in XShm always being disabled.
6327
6328 Fri Jul  4 19:55:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6329
6330         * tests/stresstest-toolbar: remove this accidentally committed
6331         file.
6332         
6333         * tests/stresstest-toolbar.c: really add this new test
6334
6335 Fri Jul  4 19:06:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6336
6337         * tests/stresstest-toolbar.c: new test for removing items
6338         
6339         * tests/testtoolbar.c: add a popup menu
6340
6341         * gtk/gtkcontainer.c (gtk_container_remove): add hack to avoid
6342           assert widget->parent == container when the container is a
6343           toolbar.
6344
6345         * gtk/gtktoolbar.c (gtk_toolbar_remove_tool_item): Make much
6346         simpler. Also make correct.
6347
6348         * gtk/gtktoolbar.c (gtk_toolbar_button_press): make
6349         popup_context_menu a boolean handled signal.
6350
6351 2003-07-04  Tor Lillqvist  <tml@iki.fi>
6352
6353         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_polygon,
6354         gdk_win32_draw_segments, gdk_win32_draw_lines): We can calculate
6355         the width and height of the bounding rectangle only after the
6356         minumum x and y have been found, and need a separate loop for
6357         it. Thanks to Bruce Hochstetler for providing a sample program
6358         exhibiting the bug.
6359
6360 2003-07-03  Tor Lillqvist  <tml@iki.fi>
6361
6362         * gdk/gdk.def: Add gdk_string_to_compound_text_for_display.
6363         (#116537, Peter Zelezny)
6364
6365 Thu Jul  3 03:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6366
6367         * gtk/gtkpaned.c (gtk_paned_set_child_property): Insert cast to
6368         fix warning. Assign something to old_value to quiet gcc
6369
6370         * gtk/gtkcalendar.c 
6371         (start_spinning): gtk_timeout_add->g_timeout_add
6372
6373         * gtk/gtkicontheme.c 
6374         (theme_lookup_icon): Make it compile (remove double semicolon)
6375
6376         * gtk/gtktoolbutton.c
6377         (gtk_tool_button_class_init): Long comment about properties.
6378         (gtk_tool_button_class_init): Improve text for "use_underline"
6379         property
6380         (gtk_tool_button_create_menu_proxy): Fix up to use_mnemonic based
6381         on whether the passed-in label has use_mnemonic set
6382         (gtk_tool_button_create_menu_proxy): Split image cloning out in
6383         new function. Make that function also handle image with pixbuf
6384         storage.
6385         (gtk_tool_button_construct_contents): Use gtk_widget_destroy()
6386         instead of gtk_container_remove().
6387         (gtk_tool_button_construct_contents): Fix eliding bug
6388
6389         * gtk/gtktoolbar.c
6390         (gtk_toolbar_finalize): New function. Unref tooltips, pointed out
6391         by Morten Welinder
6392         (gtk_toolbar_button_press): Make popup_context_menu signal provide
6393         coordinates and button number
6394
6395         * tests/testtoolbar.c (main): Add new pixbuf toolbutton
6396
6397         * tests/apple-red.png: new file
6398
6399 Wed Jul  2 18:00:56 2003  Owen Taylor  <otaylor@redhat.com>
6400          
6401         * gtk/gtkicontheme.[ch]: Implement a loader for
6402         named themed icon based on from gnome-desktop library
6403         by Alex Larsson.
6404
6405         * gtk/gtkiconthemeparser.[ch]: .ini file parsing code
6406         from gnome-desktop.
6407
6408         * gtk/gtkiconfactory.[ch]: Add
6409         gtk_icon_source_set/get_icon_name() to allow stock icons
6410         to be based off of named theme icons.
6411
6412         * gtk/gtkiconfactory.c: Rework sources so that the source
6413         is *either* a pixbuf, or a filename, or an icon name,
6414         instead of the pixbuf/filename mix it was before. Put a
6415         workaround for get_pixbuf() so that it can return the
6416         filename pixbuf, e.g, for render_icon().
6417
6418         * gtk/gtkiconfactory.c: Make the default setup use
6419         themed icons, and add builtin icons to the default
6420         icon theme for all the standard pixbufs, so we
6421         don't rely on actually having an icon theme on disk.
6422
6423         * gtk/gtkrc.c: Add support for @"icon-name" to specify
6424         a themed icon for a stock icon source.
6425
6426         * tests/Makefile.am test/testicontheme.c: Add a test
6427         program from gnome-desktop.
6428
6429         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c: Add
6430         Net/IconThemeName / gtk-icon-theme-name setting.
6431
6432         * gtk/gtkiconfactory.c (ensure_cache_up_to_date): Actually
6433         update the icon cache serial so we don't continually
6434         think we are out-of-date.
6435
6436         * gtk/gtkwidget.c: Fix a couple of references in doc comments 
6437         to ::direction_set that should have been to ::direction-changed
6438
6439 Wed Jul  2 14:45:41 2003  Owen Taylor  <otaylor@redhat.com>
6440
6441         * gtk/gtktoolbar.c (gtk_toolbar_realize): Attach the
6442         style to the widget.
6443
6444 Wed Jul  2 15:42:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6445
6446         * gtk/gtk.h: Add new toolbar headers
6447
6448         * tests/testtoolbar.c: new file
6449
6450         * tests/Makefile.am (noinst_PROGRAMS): Add testtoolbar.c
6451
6452         * gtk/gtkexpander.c (gtk_expander_class_init): Make it compile
6453
6454 Tue Jul  1 22:49:25 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6455
6456         * gtk/gtktoolbar.c:
6457         (gtk_toolbar_remove_tool_item): Fix bug where list is changed
6458         inside a for loop (pointed out by Morten Welinder).
6459         (gtk_toolbar_focus_home_or_end): Minor formatting change
6460
6461         Comments from Owen:
6462
6463         * gtk/gtktoolbutton.c: remove copy of elide_underscores(). Use
6464         gtk_toolbar_elide_underscores instead.
6465
6466         * gtk/gtktoolbar.c: rename signal from focus_ends to
6467         focus_home_or_end.
6468         (_gtk_toolbar_elide_underscores): export this as an internal
6469         function.
6470         (gtk_toolbar_move_focus): add comment explaining difference to
6471         gtk_toolbar_focus();
6472         (gtk_toolbar_list_children_in_focus_order): Make TAB_FORWARD and
6473         TAB_BACKWARD focus the right widgets in RTL mode
6474
6475         * gtk/gtktoolbutton.c (gtk_tool_button_new): Change to take
6476         "label" and "icon" parameters
6477
6478         * gtk/gtktoolbutton.[ch]: remove icon_set property.
6479
6480 2003-07-01  Matthias Clasen  <maclas@gmx.de>
6481
6482         * gtk/gtkspinbutton.c (gtk_spin_button_set_digits): Improve docs.
6483         (116364, Morten Welinder) 
6484
6485         * tests/testgtk.c: Use GtkFontButton and GtkColorButton to bring up the
6486         corresponding dialogs.
6487
6488         * gtk/Makefile.am (gtk_public_h_sources): Add gtkfontbutton.h,
6489         gtkcolorbutton.h.  
6490         (gtk_c_sources): Add gtkfontbutton.c, gtkcolorbutton.c. 
6491
6492         * gtk/gtkfontbutton.[hc]: New files containing a font picker widget. 
6493
6494         * gtk/gtkcolorbutton.[hc]: New files containing a color picker widget. 
6495
6496         * gtk/gtk.h: Include gtkexpander.h, gtkfontbutton.h, gtkcolorbutton.h.
6497
6498         * gtk/gtkexpander.c: Small additions to the docs. 
6499
6500 2003-07-01  Tor Lillqvist  <tml@iki.fi>
6501
6502         * gdk/win32/gdkwindow-win32.c (_gdk_windowing_window_get_pointer):
6503         WindowFromPoint() wants screen coordinates (#115422, Tim Evans).
6504
6505 2003-07-01  Matthias Clasen  <maclas@gmx.de>
6506
6507         * configure.in: Check for Xcursor.
6508         
6509         * gdk/x11/gdkcursor-x11.c:
6510         * gdk/gdkdisplay.h: 
6511         * gdk/gdkcursor.h: RGBA cursor support based on Xcursor. New functions:
6512         gdk_cursor_new_from_pixbuf(), gdk_display_supports_cursor_alpha(), 
6513         gdk_display_supports_cursor_color(),
6514         gdk_display_get_default_cursor_size() and 
6515         gdk_display_get_maximal_cursor_size().  (#69436)
6516
6517 2003-06-30  Tor Lillqvist  <tml@iki.fi>
6518
6519         * gdk/win32/gdkdnd-win32.c (find_window_enum_proc): New function,
6520         callback proc for EnumWindows().
6521         (gdk_drag_find_window_for_screen): Actually take the drag_window
6522         argument into account: Instead of using WindowFromPoint(), use
6523         EnumWindows(), to be able to skip the drag_window. (#116320, Tony
6524         M Brown, Herman Bloggs)
6525
6526         * gdk/win32/*.c: Replace gdk_drawable_ref()/unref() and
6527         gdk_window_ref()/unref() calls with g_object_ref()/unref().
6528         Consistently use %p format in debugging output of pointers and
6529         HANDLEs.
6530
6531 2003-06-30  Mark McLoughlin  <mark@skynet.ie>
6532
6533         * gtk/gtkexpander.h: kill some stray characters
6534         breaking the build.
6535
6536 2003-06-30  Mark McLoughlin  <mark@skynet.ie>
6537
6538         Add GtkExpander. See discussion in bug #60553.
6539
6540         * gtk/gtkexpander.[ch]: add.
6541         
6542         * gtk/Makefile.am: build gtk-expander.[ch].
6543         
6544         * docs/widget_geometry.txt: add info on the layout
6545         of GtkExpander.
6546
6547 Mon Jun 30 01:20:19 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6548
6549         * gtkradiotoolbutton.c:         new file
6550         * gtkradiotoolbutton.h:            "
6551         * gtktoggletoolbutton.c:           "
6552         * gtktoggletoolbutton.h:           "
6553         * gtktoolbutton.c:                 "
6554         * gtktoolbutton.h:                 "
6555         * gtktoolitem.c:                   "
6556         * gtktoolitem.h:                   "
6557         * gtktoolbar.c: many changes
6558         * gtktoolbar.h: many changes
6559         * gtkseparatortoolitem.c:       new file
6560         * gtkseparatortoolitem.h           "
6561
6562         New toolbar.
6563         
6564         - Items on a toolbar are now separate widgets, instances of a
6565           subclass of GtkToolItem.
6566
6567         - Items there aren't room for on the toolbar are unmapped, and an
6568           overflow menu with a proxy menu item is added instead.
6569
6570         - The toolbar is keyboard navigatable. Press TAB to focus the
6571           first item, then use arrow keys and Ctrl TAB to move around the
6572           toolbar. TAB moves focus out of the toolbar.
6573
6574         - Bascially all of the old toolbar API is deprecated in favor of
6575           new API in gtktoolbar.h, gtktoolitem.h, gtktoolbutton.h
6576
6577         - The toolbar is backwards compatible with the old toolbar.
6578
6579 2003-06-29  Matthias Clasen  <maclas@gmx.de>
6580
6581         * gtk/gtkwidget.c (gtk_widget_class_init): Remove a duplicate parameter
6582         from docs, some more formatting fixes. 
6583
6584 2003-06-28  Tor Lillqvist  <tml@iki.fi>
6585
6586         Fix for #111028, thanks to J. Ali Harlow, who writes:
6587         I found that the GdkPixmap->GdkImage reference really isn't
6588         important. It's only really there to have somewhere convenient to
6589         store the location of the pixel data in the pixmap and as an easy
6590         way of accessing the dimensions of that data. I have therefore put
6591         together a fix which removes this reference entirely which seems
6592         to solve the problem.
6593
6594         * gdk/win32/gdkpixmap-win32.h (struct _GdkPixmapImplWin32):
6595         Instead of a pointer to a GdkImage, keep a pointer to the pixels
6596         directly.
6597
6598         * gdk/win32/gdkimage-win32.c (_gdk_win32_setup_pixmap_image): Remove.
6599         (_gdk_win32_new_image): New function, replacing the above. Creates
6600         a GdkImage without any associated GdkPixmap.
6601         (gdk_image_new_bitmap, _gdk_image_new_for_depth): Use it instead.
6602
6603         * gdk/win32/gdkprivate-win32.h: Remove from here, too.
6604
6605         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap)
6606         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap)
6607         * gdk/win32/gdkgc-win32.c (_gdk_win32_bitmap_to_hrgn)
6608         * gdk/win32/gdkmain-win32.c (_gdk_win32_drawable_description):
6609         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize,
6610         gdk_pixmap_new, gdk_bitmap_create_from_data, gdk_pixmap_foreign_new)
6611         Corresponding changes.
6612
6613 Thu Jun 26 21:41:16 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6614
6615         * gtk/gtktreeviewcolumn.c
6616         (gtk_tree_view_column_cell_set_cell_data): only set "is_expander"
6617         and "is_expanded" if the new value is different fromt he old one.
6618
6619 Wed Jun 25 18:59:15 BST 2003  Tony Gale <gale@gtk.org>
6620
6621         * docs/faq/gtk-faq.sgml: Fix typos. Update
6622         thread example I missed yesterday.
6623
6624 2003-06-24  Matthias Clasen  <maclas@gmx.de>
6625
6626         * gtk/gtkspinbutton.c (gtk_spin_button_class_init): Add a blurb for
6627         shadow_type. 
6628
6629         * gtk/gtkwidget.c (gtk_widget_class_install_style_property_parser): 
6630         (gtk_widget_class_list_style_properties): Use same parameter names as in  
6631         header (to silence gtk-doc).
6632
6633         * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Fix doc comments.
6634
6635 Tue Jun 24 20:00:45 BST 2003  Tony Gale <gale@gtk.org>
6636
6637         * docs/faq/gtk-faq.sgml: Thread support updates
6638         from Owen. Various suggestions from Steve Chaplin.
6639
6640 2003-03-24  Mohammad DAMT  <mdamt@bisnisweb.com>
6641
6642         * po/id.po: Updated Indonesian translation
6643
6644 2003-06-21  Tor Lillqvist  <tml@iki.fi>
6645
6646         * gdk/win32/gdkevents-win32.c (gdk_event_translate): When
6647         emulating X11's automatic grab on button down, pass owner_events
6648         as FALSE. According to the XLib spec, automatic grabs use True for
6649         owner_events when OwnerGrabButtonMask is selected, and I don't see
6650         the X11 backend doing that. (#82497, #91619, #92835, #107322, #110271)
6651         (find_window_for_pointer_event): Improve debugging output.
6652
6653 2003-06-17  Tor Lillqvist  <tml@iki.fi>
6654
6655         * gtk-zip.sh.in (DLLDIR): Look for DLLs also in the bin
6656         subdirectory, where libtool 1.5 installs them.
6657
6658         * README.win32: Point to FSF's binary Win32 distribution of
6659         gettext-runtime.
6660
6661 2003-06-17  Matthias Clasen  <maclas@gmx.de>
6662
6663         * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
6664         macros to check for XML catalog contents and path, borrowed from
6665         gtk-doc. 
6666         * configure.in: New option --enable-man to enable regeneration of
6667         man pages from Docbook, if the necessary tools are found.
6668
6669 2003-06-15  Matthias Clasen  <maclas@gmx.de>
6670
6671         * gtk/gtkcalendar.c (gtk_calendar_class_init): 
6672         * gtk/gtknotebook.c (gtk_notebook_class_init): 
6673         * gtk/gtkalignment.c (gtk_alignment_class_init): 
6674         * gtk/gtkpaned.c (gtk_paned_class_init): Document new properties
6675         as 2.4 additions.
6676
6677         * gtk/gtkwidget.c (gtk_widget_class_init): Move inline signal docs 
6678         to the proper place, immediately before the g_signal_new() call.
6679
6680         * gtk/gtktextiter.h: Make the flags-nature of GtkTextSearchFlags 
6681         more obvious.  (#115122, Jeff Franks)
6682
6683 2003-06-12  Anders Carlsson  <andersca@codefactory.se>
6684
6685         * gtk/gtkwidget.c: (event_window_is_still_viewable):
6686         Special case pixmaps. (#114880)
6687         
6688 2003-06-12  Matthias Clasen  <maclas@gmx.de>
6689
6690         * gtk/gtkwidget.c: Document child-notify and drag-data-received
6691         signals. Owen, we need to figure out where the best place for
6692         these comments in the source is. I currently put them in front of
6693         the signals enum.
6694
6695 2003-06-11  Matthias Clasen  <maclas@gmx.de>
6696
6697         * gtk/gtkdnd.c (gtk_drag_check_threshold): s/threshhold/threshold/.
6698
6699 Thu Jan 12 01:01:19 2003  Kristian Rietveld  <kris@gtk.org>
6700
6701         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
6702         silly typo fix. s/seperator/separator/. This gets rid of the
6703         assert spam when using TreeView.
6704
6705 Tue Jun 10 11:23:48 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
6706
6707         * modules/input/gtkimcontextxim.c (xim_instantiate_callback): New
6708         function for XIM instantiate callback.
6709         * modules/input/gtkimcontextxim.c (xim_info_try_im): New function
6710         where call to XOpenIM() or XRegisterIMInstantiateCallback() is
6711         actually made.
6712         * modules/input/gtkimcontextxim.c (xim_destroy_callback): New function
6713         for XIM's destroy callback.
6714         * modules/input/gtkimcontextxim.c (get_im): add a check if info->im 
6715         is set or not - if it's not set, call xim_info_try_im() to try to
6716         initiaize it.
6717         * modules/input/gtkimcontextxim.c (reinitialize_ic): reset
6718         filter_key_release flag of the context.
6719         * modules/input/gtkimcontextxim.c (get_ic_real): removed
6720         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): move
6721         code from the removed get_ic_real().
6722
6723         For XIM instantiation, destruction and re-instantiation. With
6724         this, Gtk+ apps will be able to connect or reconnect to the XIM,
6725         when it starts after the apps, or when the XIM gets lost and recover.
6726         (#113099, #107782).
6727
6728 Mon Jun 10 01:12:31 2003  Kristian Rietveld  <kris@gtk.org>
6729
6730         Merged from stable.
6731
6732         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_get_size):
6733         check if width is !null, not *width. Doh.
6734
6735 Tue Jun 10 01:09:33 2003  Kristian Rietveld  <kris@gtk.org>
6736
6737         Merged from stable.
6738
6739         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
6740         Remove the weird dx logic, get all cell_area and background_area
6741         calculations right. Not sure what was up with it before. (Fixes
6742         #110989, testcase from Vasco Alexandre da Silva Costa).
6743
6744 Tue Jun 10 00:58:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6745
6746         * tests/testgtk.c: Make it compile with C89 compilers
6747
6748 2003-06-10  Matthias Clasen  <maclas@gmx.de>
6749
6750         * gtk/gtktextview.c (gtk_text_view_class_init): Install boolean
6751         property "overwrite".
6752         (gtk_text_view_[gs]et_property): Handle "overwrite".
6753         * gtk/gtktextview.[hc] (gtk_text_view_[gs]et_overwrite): Getter
6754         and setter for "overwrite" property.  (#110241, Jeroen Zwartepoorte)
6755
6756 2003-06-09  Matthias Clasen  <maclas@gmx.de>
6757
6758         * gtk/gtkpaned.c (gtk_paned_class_init): Install boolean child
6759         properties "resize" and "shrink".
6760         (gtk_paned_[gs]et_child_property): Implementations of 
6761         GtkContainer::[gs]et_child_property.  
6762         * tests/testgtk.c (toggle_resize, toggle_shrink): Use the new
6763         paned child properties instead of remove/add hacks.  (#114667, 
6764         Soeren Sandmann) 
6765
6766 Mon Jun  9 16:18:11 2003  Owen Taylor  <otaylor@redhat.com>
6767
6768         * gtk/gtknotebook.c (gtk_notebook_button_press): Back
6769         out event->window test - it wasn't needed because
6770         of the call to get_widget_coordinates().
6771
6772         * gtk/gtknotebook.c (gtk_notebook_button_press): Remove
6773         call to gtk_widget_grab_focus() when not clicking on
6774         any tabs. (Real fix for #114534)
6775
6776 Sun Jun  8 22:03:09 2003  Owen Taylor  <otaylor@redhat.com>
6777
6778         * tests/testdnd.c: Use application/x-rootwindow-drop for
6779         root window drops. (#108670, Alex Larsson)
6780
6781         * gdk/x11/gdkdnd-x11.c (gdk_drag_motion) gtk/gtkdnd.c (gtk_drag_drop): 
6782         Accept either application/x-rootwin-drop (what GTK+ has always used)
6783         or application/x-rootwindow-drop (what the XDND standard specifies).
6784
6785 Fri Jun  6 11:07:33 2003  Owen Taylor  <otaylor@redhat.com>
6786
6787         * gtk/gtkwidget.c (event_window_still_viewable): 
6788         Before delivering an event to a widget, check that
6789         (if relevant), the event's window is still viewable.
6790         (#105642, Dennis Björklund)
6791
6792         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): 
6793         NULL out private->parent, since after destruction
6794         it might not be valid any more.
6795
6796         * gdk/gdkwindow.c (gdk_window_is_viewable): Fix some
6797         accesses before g_return_val_if_fail(). Treat 
6798         DESTROYED windows as unmapped.
6799
6800 Thu Jun  5 09:28:03 2003  Owen Taylor  <otaylor@redhat.com>
6801
6802         * gtk/gtkentry.c: Recompute unconditionally in
6803         gtk_entry_style_set, and in a new gtk_label_screen_changed().
6804         Protect the guts of recompute_idle_func() with
6805         gtk_widget_has_screen(). (#114040, Morten Welinder) 
6806         Fix FALSE/0 confusion.
6807         
6808 Sun Jun  8 18:27:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6809
6810         * gdk/gdkpixbuf-drawable.c (G8fromRGB565): swap G and B.
6811         Fixes (#114669)
6812
6813 Sun Jun  8 11:27:29 2003  Owen Taylor  <otaylor@redhat.com>
6814
6815         * gtk/gtkviewport.c (viewport_set_adjustment): Fix bug with 
6816         set_adjustment (viewport, NULL);
6817
6818 2003-06-07  Matthias Clasen  <maclas@gmx.de>
6819
6820         * gtk/gtkiconfactory.c (get_default_icons): 
6821         * gtk/stock-icons/stock_{undo,redo,undelete,revert}_rtl_{16,24}.png:
6822         * gtk/stock-icons/Makefile.am: Add rtl variants of undo, redo,
6823         undelete and revert.  (#96633)
6824         
6825 Fri Jun  6 16:25:44 2003  Owen Taylor  <otaylor@redhat.com>
6826
6827         * gtk/gtkviewport.c: Many fixes, along with extensive cleanups and 
6828         refactoring of code to reduce duplication; fixes include:
6829
6830         - gtk_viewport_realize(): Position the window correct from adjustment 
6831         values. (#110737, Michael Natterer)
6832
6833         - Remove some division-by-zero checks in places where there is no 
6834         longer division. (#110737)
6835
6836         - gtk_viewport_class_init: Make the hadjustment/vadjustment properties 
6837         G_PARAM_CONSTRUCT, so that there will always be adjustments, even 
6838         if gtk_viewport_new isn't used (#101135, Thomas Leonard).
6839
6840         - Switch over to encapsulated lazy-creation for hadjustment/
6841         vadjustment; even with the CONSTRUCT property, we need this after
6842         destroy.
6843
6844         - When updating the adjustment, immediate set their values to
6845         match the the current range of the viewport, and update the 
6846         viewport position to match the value of the new adjustments. 
6847         (Part of #1165)
6848
6849 2003-06-06  Tor Lillqvist  <tml@iki.fi>
6850
6851         * gdk/win32/gdkprivate-win32.h: Fix typo.
6852
6853         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Set
6854         graphics_exposures and subwindow_mode, too, even if they aren't
6855         currently used.
6856
6857 Fri Jun  6 23:38:23 2003  Kristian Rietveld  <kris@gtk.org>
6858
6859         Merged from stable.
6860
6861         * gtk/gtktreeview.c (do_expand_collapse),
6862         (expand_collapse_timeout), (cancel_arrow_animation): made
6863         expand_collapse_timeout a wrapper with locks around     
6864         do_expand_collapse, made cancel_arrow_animation use
6865         do_expand_collapse. Fixes threadlock. (Fixes #111286, patch from
6866         Peter Bloomfield).
6867
6868 Fri Jun  6 11:05:45 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
6869
6870         * modules/input/gtkimcontextxim.h (struct _GtkIMContextXIM):
6871         * modules/input/gtkimcontextxim.c (preedit_start_callback,
6872         preedit_draw_callback, preedit_done_callback): Add a 'finalizing' flag 
6873         to keep preedit-[start,changed,end] signals from being called during
6874         finalization (#111861).
6875
6876 2003-06-05  Noah Levitt  <nlevitt@columbia.edu>
6877
6878         * gtk/gtknotebook.c (gtk_notebook_button_press): Ignore button
6879         presses that are not on the tab (#114534).
6880
6881 Thu Jun  5 20:35:40 2003  Owen Taylor  <otaylor@redhat.com>
6882
6883         * demos/Makefile.am: Conditionalize dependencies for
6884         gdk-pixbuf-csource on cross-compilation (#112391, J. Ali Harlowe). 
6885         Buildtest-inline-pixbufs.h in srcdir. Don't try to build 
6886         test-inline-pixbufs.h if we don't have libpng.
6887
6888         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): 
6889         Add a dependency on gdk-pixbuf.loaders when not 
6890         cross-compiling, remove the dependency on gdk-pixbuf-csource
6891         when not cross compiling.
6892
6893 Thu Jun  5 20:12:51 2003  Owen Taylor  <otaylor@redhat.com>
6894
6895         * gtk/gtkwindow.c (gtk_window_get_default_size): Handle
6896         gtk_window_get_geometry_info() returning NULL.
6897         (#107311, John Finlay)
6898
6899 Thu Jun  5 19:24:33 2003  Owen Taylor  <otaylor@redhat.com>
6900
6901         * gtk/gtktoolbar.c (gtk_toolbar_expose): Subtract off
6902         twice the border width from the width/height, not
6903         1x the border width. (#106336, Rodney Dawes)
6904
6905 Thu Jun  5 15:33:38 2003  Owen Taylor  <otaylor@redhat.com>
6906  
6907         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
6908         If at the end of the buffer, move to the end iter -
6909         parallels behavior of move_iter_to_previous_line.
6910         (#81960, Padraig O'Briain)
6911  
6912 Thu Jun  5 16:12:54 2003  Owen Taylor  <otaylor@redhat.com>
6913
6914         #80023, Yao Zhang, TOKUNAGA Hiroyuki
6915
6916         * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations):
6917         Account for the preedit cursor offset if the iter passed
6918         in is at the same place as the insertion cursor.
6919
6920         * gtk/gtktextview.c (gtk_text_view_get_cursor_location):
6921         Encapsulate getting the insertion cursor location.
6922
6923         * gtk/gtktextview.c (gtk_text_view_update_im_spot_location):
6924         Pass the real y/height to the IM context. Take 
6925         text_view->x/yoffset into account.
6926
6927 Thu Jun  5 16:52:54 2003  Owen Taylor  <otaylor@redhat.com>
6928
6929         * gtk/gtktextview.[ch]: Never scroll on focus in
6930         (#81893, Patch from Paolo Maggi)
6931
6932         * gtk/gtktextview.c (gtk_text_view_scroll_[h]pages): 
6933         Scroll to the current cursor location before handling
6934         the action, in case the user just tabbed in
6935         and the cursor is offscreen.
6936
6937 Thu Jun  5 17:20:40 2003  Owen Taylor  <otaylor@redhat.com>
6938          
6939          #107883, Gustavo Giráldez
6940
6941         * gtk/gtktextlayout.c (gtk_text_layout_emit_changed):
6942         Split out the case where we know we changed, and 
6943         already dealt with our cached line being invalidated
6944         from external calls to gtk_text_layout_changed.
6945
6946         * gtk/gtktextlayout.c (gtk_text_layout_changed):
6947         Check if the invalidate yrange intersects our
6948         cached line, and clear it if necessary.
6949
6950 2003-06-05  Tor Lillqvist  <tml@iki.fi>
6951
6952         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle global
6953         filters.
6954
6955 2003-06-05  Matthias Clasen  <maclas@gmx.de>
6956
6957         * gtk/gtktextview.c: Fix for #84668, reported by Torbjrn Andersson:
6958         (gtk_text_view_grab_notify): 
6959         (gtk_text_view_state_changed): Implement these
6960         to unobscure cursor when grab shadowed or insensitised.
6961         (gtk_text_view_unobscure_mouse_cursor): New function to undo the
6962         effect of gtk_text_view_obscure_mouse_cursor(). Code lifted from
6963         gtk_text_view_motion_event().
6964         (gtk_text_view_motion_event): Use gtk_text_view_obscure_mouse_cursor().
6965
6966         * gtk/gtktextview.c (select_all): New keybinding signal for
6967         (un)selecting the whole buffer. Bound to C-a/C-\.  (see #107889)
6968
6969         * gtk/gtkcalendar.c (calendar_timer): 
6970         (stop_spinning): Replace deprecated gtk_timeout_* functions by
6971         their GLib counterparts.  (#114429)
6972
6973         * gtk/gtktreestore.c (gtk_tree_store_new): 
6974         * gtk/gtkliststore.c (gtk_list_store_new): Document restriction on 
6975         types.
6976
6977 Wed Jun  4 19:42:17 2003  Owen Taylor  <otaylor@redhat.com>
6978
6979         * gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
6980         When drawing underlines, join up adjacent runs
6981         where possible, so we don't get changes in 
6982         shaper/font/etc. breaking underlines. (#103662,
6983         Kang Jeong-Hee)
6984
6985 Wed Jun  4 19:22:58 2003  Jonathan Blandford  <jrb@redhat.com>
6986
6987         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_level_find_insert):
6988         Slightly modified patch from Owen Taylor <otaylor@redhat.com> to
6989         improve the speed of inserting rows into an already sorted list,
6990         #109292
6991
6992 Wed Jun  4 19:24:28 2003  Owen Taylor  <otaylor@redhat.com>
6993
6994         * gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Keep
6995         track of when we have a clip mask set for the GC,
6996         and when we unset it, or switch to a clip region,
6997         immediately call XSetClipMask (..., None) to avoid
6998         Xlib caching stale data. (#111806)
6999
7000         * gtk/gtktextdisplay.c: Don't set a clip mask
7001         when drawing alpha pixmaps; it isn't necessary any more.
7002         (#111806)
7003
7004 Wed Jun  4 18:27:44 2003  Owen Taylor  <otaylor@redhat.com>
7005
7006         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator): 
7007         gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): 
7008         Use GTK_WIDGET_IS_SENSITIVE(), not GTK_WIDGET_SENSITIVE
7009         (#92548, Tim Evans)
7010
7011         * gtk/gtkcheckmenuitem.c (gtk_real_check_menu_item_draw_indicator)
7012         gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator): If
7013         Use state_type = STATE_INSENSITIVE for insensitive menu items.
7014
7015 Wed Jun  4 21:25:35 2003  Kristian Rietveld  <kris@gtk.org>
7016
7017         Merged from stable.
7018
7019         * gtk/gtktreeview.c (gtk_tree_view_drag_begin): use a silent
7020         assert for get_info. (reported by Michael Natterer),
7021         (gtk_tree_view_expand_all_emission_helper),
7022         (gtk_tree_view_expand_all_helper): emit row_expanded for all
7023         expanded rows during an _expand_all operation. (Fixes #111280,
7024         reported by Benjamin Bayart).
7025
7026 Tue Jun  3 18:32:30 2003  Owen Taylor  <otaylor@redhat.com>
7027
7028         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't
7029         respond to pings on a root window; prevents infinite
7030         loops if we are selecting for SubstructureNotify on the
7031         root window. (#111945, Sergey V. Udaltsov)
7032
7033 Tue Jun  3 17:39:16 2003  Owen Taylor  <otaylor@redhat.com>
7034
7035         #71597, reported by Morten Welinder
7036
7037         * gdk/gdkpixbuf-drawable.c (rgb888amsb): Fix and simplify
7038         (Patch from Christian Petig)
7039
7040         * gdk/gdkpixbuf-drawable.c (rgb{555,565}{a,}{msb,lsb}):
7041         Major rewrite of 555 and 565 conversion routines:
7042
7043         - Move all the bit shifting into a small block of macros,
7044           eliminating much duplication of complicated arithmetic.
7045         - Get rid of 2-pixels at a time code, which was buggy,
7046           hard to maintain, caused unaligned accesses, and
7047           probably didn't actually perform any better.
7048         - Simplify cases where different data types were
7049           used for the little and big endian cases, use
7050           GUINT16_SWAP_LE_BE() where appropriate.
7051                 
7052 Tue Jun  3 15:05:47 2003  Owen Taylor  <otaylor@redhat.com>
7053
7054         * gdk/x11/gdkdrawable-x11.c (convert_to_format): Remove
7055         bad optimization for src_rowstride == dest_stride.
7056         (Didn't consider the case where we were copying only
7057         partial widths of a wider source buffer)
7058         (#113034, reported by Hans Petter Jansson)
7059
7060 2003-06-03  Michael Natterer  <mitch@gimp.org>
7061
7062         * gdk/x11/gdkinput-x11.c (_gdk_input_common_find_events):
7063         reenabled button_release events for xinput devices. (#113948)
7064
7065 2003-06-03  Christian Rose  <menthos@menthos.com>
7066
7067         * configure.in: Added "li" to ALL_LINGUAS.
7068
7069 Mon Jun  2 18:58:54 2003  Owen Taylor  <otaylor@redhat.com>
7070
7071         * gtk/gtknotebook.c (gtk_notebook_size_allocate): Don't
7072         map the event window if the notebook isn't mapped. (#113980,
7073         Richard Reich)
7074
7075 2003-06-02  Sven Neumann  <sven@gimp.org>
7076
7077         * gtk/gtkprogress.c (gtk_progress_changed): added a missing cast.
7078
7079         * gdk/gdkrgb.c (gdk_rgb_try_colormap): removed an unused variable.
7080
7081 2003-06-01  Matthias Clasen  <maclas@gmx.de>
7082
7083         * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Add 
7084         Since: 2.4 to the docs.
7085
7086         * gtk/gtkwindow.c (gtk_window_parse_geometry): Add some hints and
7087         an example to the docs.  (#98427)
7088
7089 2003-05-30  Murray Cumming  <murrayc@usa.net>
7090
7091         * gtk/gtkalignment.[h|c]: Added 4-sided padding as properties with
7092         gtk_alignment_get_padding() and gtk_aligment_set_padding(). This
7093         uses the new private data system - see g_type_class_add_private() in
7094         gtk_alignment_class_init() and the use of GTK_ALIGNMENT_GET_PRIVATE().
7095
7096 2003-05-30  Matthias Clasen  <maclas@gmx.de>
7097         
7098         * gtk/gtknotebook.c: Changed guint to GtkNotebookArrow in the
7099         signature of gtk_notebook_draw_arrow() for Solaris builds to go
7100         through.  (#114043, Anand Subramanian)
7101
7102 Thu May 29 18:30:35 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
7103
7104         * modules/input/imipa.c: 
7105         use GETTEXT_PACKAGE to get a translation for "ipa"(#113850).
7106
7107 Thu May 29 18:08:01 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
7108
7109         * gtk/gtkimmodule.c (_gtk_im_module_list):
7110         use GETTEXT_PACKAGE to get a translation for "Default"(#113850).
7111
7112 Thu May 29 09:34:05 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
7113
7114         * gtk/gtkimmodule.c (_gtk_im_module_list): make "Default"
7115         label of default input method localizable.
7116         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems): 
7117         use translations of input method context names
7118         * modules/input/imam-et.c, modules/input/imcyrillic-translit.c,
7119           modules/input/iminuktitut.c, modules/input/imthai-broken.c,
7120           modules/input/imti-er.c, modules/input/imti-et.c
7121           modules/input/imviqr.c, modules/input/imxim.c
7122         use GETTEXT_PACKAGE instead of "gtk+" for domain name.
7123         (#113850).
7124
7125 Thu May 29 18:23:01 2003  Kristian Rietveld  <kris@gtk.org>
7126
7127         Merged from stable.
7128
7129         * gtk/gtktreeview.c (gtk_tree_view_button_press): put the focus
7130         grab separate, the user might clear the tree in the focus-in
7131         callback. (Fixes #113086, testcase from Felipe Heidrich).
7132
7133 Thu May 29 18:06:26 2003  Kristian Rietveld  <kris@gtk.org>
7134
7135         Merged from stable.
7136
7137         * gtk/gtktreeview.c (gtk_tree_model_set_model): reset a bunch
7138         of row reference when we unset the model. Also reset
7139         dy and top_row_dy. (Fixes #109289, patch from Owen Taylor).
7140
7141 Thu May 29 17:12:19 2003  Kristian Rietveld  <kris@gtk.org>
7142
7143         Merged from stable.
7144
7145         * gtk/gtktreeview.c (gtk_tree_view_set_cursor_on_cell): cancel
7146         the current editing, if it exists. (Fixes #108956, reported by
7147         Michael Natterer).
7148
7149 Thu May 29 17:06:09 2003  Kristian Rietveld  <kris@gtk.org>
7150
7151         Merged from stable.
7152
7153         * gtk/gtktreeview.c (check_selection_helper): new function,
7154         (gtk_tree_view_row_deleted): traverse the tree from the
7155         deleted node to see whether the selection changed, instead of
7156         just checking this node. (Fixes #107400, reported by 'Duncan').
7157
7158 Thu May 29 16:31:34 2003  Kristian Rietveld  <kris@gtk.org>
7159
7160         Merged from stable.
7161
7162         * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
7163         (gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
7164         instead of _maybe_begin_dragging_row, so the icon can be
7165         overridden by apps. (Fixes #104374, patch from Daniel Elstner).
7166
7167 Thu May 29 16:14:04 2003  Kristian Rietveld  <kris@gtk.org>
7168
7169         Merged from stable.
7170
7171         * gtk/gtktreeview.c (gtk_tree_view_start_editing): correct
7172         cell_area x/width for the expander if needed. (Fixes #101748,
7173         reported by Dave Cook and Mariano Suarez-Alvarez).
7174
7175 Thu May 29 16:01:38 2003  Kristian Rietveld  <kris@gtk.org>
7176
7177         Merged from stable.
7178
7179         * gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): check
7180         if tree/node are still the same after _internal_select_node.
7181         (Fixes #92256, reported by edscott).
7182
7183 Thu May 29 15:38:30 2003  Kristian Rietveld  <kris@gtk.org>
7184
7185         Fixes #75745, reported by Richard Hult. Merged from stable.
7186
7187         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): set/unset
7188         GTK_CELL_RENDERER_FOCUSED flag whether the current node is the
7189         cursor or not.
7190
7191         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
7192         if we are rendering a cursor row, and the cell the be
7193         processed has focus, then set the GTK_CELL_RENDERER_FOCUSED
7194         flag (else we unset it).
7195
7196 2003-05-27  Matthias Clasen  <maclas@gmx.de>
7197
7198         * gtk/gtkwindow-decorate.c: 
7199         * gtk/gtktreeprivate.h: 
7200         * gtk/gtkdnd.c: 
7201         * gdk/win32/gdkwindow-win32.h: 
7202         * gdk/linux-fb/gdkprivate-fb.h: 
7203         * gdk/linux-fb/gdkkeyboard-fb.c: Remove dubious bitfields of
7204         unspecified signedness.  (#112919, Morten Welinder)
7205
7206         * gtk/queryimmodules.c (escape_string): 
7207         * gtk/gtktextbtree.c (_gtk_text_btree_get_text): 
7208         * gtk/gtksettings.c (_gtk_settings_parse_convert): 
7209         * gtk/gtkrc.c (gtk_rc_parse_assignment): 
7210         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key): 
7211         * gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Replace all 
7212         occurances of g_string_new ("") by g_string_new (NULL). (#106975,
7213         Morten Welinder) 
7214
7215 2003-05-27  Tor Lillqvist  <tml@iki.fi>
7216
7217         * gtk-zip.sh.in: Only include the Default and Emacs themes' gtkrc
7218         files. Include share/gtk-doc/{gdk-pixbuf,gdk,gtk}.
7219
7220         * gdk/Makefile.am: libgdk-win32-2.0.la depends on
7221         win32/libgdk-win32.la.
7222
7223         * gtk/gtk.def: Add gtk_tree_view_column_cell_get_position.
7224
7225 Sat May 24 22:19:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7226
7227         * gtk/gtkscrollbar.c (gtk_scrollbar_class_init): Make the minimum
7228         scrollbar slider length 21 instead of 7.
7229
7230 2003-05-23  Matthias Clasen  <maclas@gmx.de>
7231
7232         * gtk/gtknotebook.c: Add support for up to four scroll
7233         arrows. Control their display by new style properties
7234         "has_forward_stepper", "has_backward_stepper",
7235         "has_secondary_forward_stepper" and
7236         has_secondary_backward_stepper". (#110540)
7237
7238         * gtk/gtknotebook.h (struct _GtkNotebook): Make in_child and
7239         click_child three bits wide, add
7240         has_{before,after}_{previous,next} fields.
7241
7242         * gtk/gtkcolorsel.c (gtk_color_selection_init): Update color on
7243         focus out of hex_entry.  (#112665)
7244         (hex_focus_out): New signal handler for focus out of hex entry.
7245
7246 Wed May 21 19:01:06 2003  Owen Taylor  <otaylor@redhat.com>
7247
7248         * gtk/gtkwidget.c (gtk_widget_realize): 
7249         g_return_if_fail() if
7250         GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget).
7251         (#107872, Christian Reis)
7252
7253 2003-05-22  Matthias Clasen  <maclas@gmx.de>
7254
7255         * gtk/gtkfilesel.c (gtk_file_selection_create_dir): 
7256         (gtk_file_selection_rename_file): Some keynav improvements for the
7257         "Rename File" and "Create Directory" subdialogs: Enter in entry
7258         activates default, default is "Create"/"Rename", Escape cancels
7259         dialog.  (#113110)
7260         (gtk_file_selection_set_filename): Add a hint about opening 
7261         directories.  (#113175)
7262
7263 2003-05-22  Matthias Clasen  <maclas@gmx.de>
7264
7265         * gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_update_xft_clip):
7266         Use XftDrawSetClipRectangles(), since we're inside HAVE_XFT2
7267         anyway.  (#113476)
7268
7269 Wed May 21 15:53:14 2003  Owen Taylor  <otaylor@redhat.com>
7270
7271         * gtk/gtkprogress.c (gtk_progress_set_format_string,
7272         gtk_progress_set_show_text): Always queue a resize ... 
7273         we rely on the size-allocate to do the update, plus a 
7274         different format can actually change our size requisition.
7275         (#111052, Vasco Alexandre da Silva Costa)
7276
7277         * gtk/gtkprogress.c (gtk_progress_changed): Track
7278         ::changed as well as ::value_changed, and queue a
7279         resize on ::changed when necessary.
7280
7281         * gtk/gtkprogress.c (gtk_progress_set_adjustment): 
7282         Call gtk_progress_changed() here to update or 
7283         queue a resize as necessary.
7284
7285 Wed May 21 14:06:13 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
7286
7287         * gtk/gtkimcontextsimple.c: added composing rules of
7288         Greek accented letters, patch by Vasilis Vasaitis (#107507)
7289
7290 Wed May 21 13:19:05 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
7291
7292         * gtk/gtkenums.h (enum GtkIMPreeditStyle, GtkIMStatusStyle): 
7293         * modules/input/gtkimcontextxim.c (preedit_style_change, status_style_change):
7294         gtk settings for XIMPreeditNone and XIMStatusNone. (#105909)
7295
7296 Wed May 21 12:10:25 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
7297
7298         * gtk/gtkimcontextsimple.c: 
7299         code that can check the compose table for ascending order,
7300         by Vasilis Vasaitis (#104862).
7301
7302 Wed May 21 12:52:01 2003  Owen Taylor  <otaylor@redhat.com>
7303
7304         * gtk/gtkkeyhash.[ch] (_gtk_key_hash_looku): We need 
7305         to pass the unmasked state to gdk_keymap_translate_keyboard_state() 
7306         to handle the case where a modifier not in the mask
7307         (like Num_Lock) changes the key value, so replace
7308         the masked state with a state/mask pair. (#106913,
7309         Olivier Ripoll)
7310
7311         * gtk/gtkwindow.c gtk/gtkbinding.c: Update to pass
7312         in state/mask pair to _gtk_key_hash_lookup()
7313
7314 Tue May 20 21:58:00 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
7315
7316         * modules/input/gtkimcontextxim.c (xim_info_display_closed):
7317         fix a memory leak, free input context list (#113259).
7318
7319 2003-05-21  Matthias Clasen  <maclas@gmx.de>
7320
7321         * configure.in (all_loaders): Add pcx.
7322
7323         * gtk/gtkcalendar.c: Make calendar controls spin.  (#112540)
7324
7325 Tue May 20 17:27:24 2003  Owen Taylor  <otaylor@redhat.com>
7326
7327         * gtk/gtkimmodule.c (gtk_im_module_init): Silently
7328         accept a missing gtk.immodules file, some people
7329         want to run without one. (#112406, patch from
7330         Arnaud Charlet)
7331
7332 Tue May 20 17:05:31 2003  Owen Taylor  <otaylor@redhat.com>
7333
7334         * gtk/gtkwindow.c (gtk_window_compute_hints): Fix 
7335         height/width confusion (#113370, Xan Lopez)
7336
7337 Tue May 20 15:48:45 2003  Owen Taylor  <otaylor@redhat.com>
7338
7339         * gdk/x11/gdkdnd-x11.c gdk/x11/gdkwindow-x11.c: Comprehensively
7340         zero all unused parts of client messages (Mainly Motif DND
7341         and EWMH). Also, fix a couple places where we were putting
7342         contents into Motif DND messages that didn't belong.
7343         (#113361, EWMH problem reported by Lubos Lunak)
7344
7345         * gtk/gtkselection.c (_gtk_selection_request): Handle the
7346         case where the property type for the multiple atoms is
7347         ATOM_PAIR by doing the conversions ourselve. This is
7348         needed for Xt inter-operation.
7349
7350 2003-05-19 Arafat Medini <lumina@silverpen.de>
7351
7352         * configure.in: Added ar to ALL_LINGUAS
7353
7354 2003-05-19  Matthias Clasen  <maclas@gmx.de>
7355
7356         * gtk/gtksettings.c (gtk_rc_property_parse_border,
7357         gtk_rc_property_parse_color, gtk_rc_property_parse_enum,
7358         gtk_rc_property_parse_flags, gtk_rc_property_parse_requisition):
7359         Add docs.
7360
7361         * gtk/gtkwidget.c (gtk_widget_class_install_style_property, 
7362         gtk_widget_class_install_style_property_parser): Add docs. 
7363
7364 2003-05-17  Matthias Clasen  <maclas@gmx.de>
7365
7366         * tests/prop-editor.c: Add navigation for object properties, so
7367         that you can easily edit the properties of the parent of a widget.
7368         (#113152)
7369
7370 Wed May 14 17:45:32 2003  Owen Taylor  <otaylor@redhat.com>
7371
7372         * gdk/gdkkeysyms.h gdk/gdkkeynames.c gdk/gdkkeyuni.c:
7373         Patch from Vasilis Vasaitis to fix Greek_IOTAdi[a]eresis 
7374         inconsistency and leave the old name as an aliass (#104873)
7375
7376 Wed May 14 16:40:09 2003  Owen Taylor  <otaylor@redhat.com>
7377
7378         * gtk/gtkframe.c (gtk_frame_set_label_widget): Patch
7379         from Charles Schmidt to add missing notify (#108305)
7380
7381 Wed May 14 16:00:51 2003  Owen Taylor  <otaylor@redhat.com>
7382  
7383         * gdk/x11/gdkgc-x11.c: Remove unecessary g_return_if_fail().
7384         (#105500, Morten Welinder.)
7385  
7386 Wed May 14 09:05:11 2003   Hidetoshi Tajima <hidetoshi.tajima@sun.com>
7387
7388         * modules/input/gtkimcontextxim.c (get_ic_real): use type of guint32
7389         instead of gumake for XNFilterEvents event mask(#110493).
7390
7391 2003-05-11  Anders Carlsson  <andersca@codefactory.se>
7392
7393         * gtk/gtkdnd.c (gtk_drag_source_unset_icon): Don't cast a gchar to
7394         a GObject. (#112762)
7395
7396 2003-05-08  Sven Neumann  <sven@gimp.org>
7397
7398         * configure.in: set the HAVE_X11R6 automake conditional to false
7399         if not compiling for X11.
7400
7401 2003-05-08  Matthias Clasen  <maclas@gmx.de>
7402
7403         * gtk/gtkcalendar.[ch] (gtk_calendar_set_display_options): 
7404         (gtk_calendar_get_display_options): New functions.
7405         (gtk_calendar_display_options): Depreate.  (#64567)
7406         (gtk_calendar_class_init): Add boolean properties for the display
7407         options.  (#50949)
7408
7409 Tue May  6 16:50:52 2003  Owen Taylor  <otaylor@redhat.com>
7410
7411         Patch from James Henstridge to update to automake-1.7
7412         (#109542)
7413  
7414         * autogen.sh: update to call newer tools.
7415  
7416         * configure.in: various updates, to use M4 macros to put
7417         variables that change each release at the top.
7418         Use AC_HELP_STRING to format help strings.
7419         Use AC_CONFIG_COMMANDS to generate gdkconfig.h.
7420  
7421         * Makefile.am: require Automake 1.7.  Remove gdk-2.0.pc and
7422         gtk+-2.0.pc on uninstall.  Pass --enable-gtk-doc to configure
7423         during distcheck.
7424  
7425         * docs/reference/*/Makefile.am: simplify to use the gtk-doc.make
7426         makefile fragment.
7427  
7428         * */Makefile.am: don't use STRIP_BEGIN/STRIP_END.
7429         Use BUILT_SOURCES where appropriate.
7430         Build generated files in builddir rather than srcdir.
7431         Fix uninstall and distclean targets to satisfy distcheck.
7432
7433         ===
7434
7435         * gdk/*/Makefile.am: Remove the hacks to get gdkenumtypes.h
7436         built first, since we are now using BUILT_SOURCES.
7437
7438         * gdk/Makefile.am: Remove an outdated comment about gdk_headers.
7439
7440         * demos/gtk-demo/Makefile.am: Fix srcdir != buildd problem
7441         with geninclude.pl.
7442
7443         * configure.in: Update versions to 2.3.0.
7444  
7445 2003-05-06  Tor Lillqvist  <tml@iki.fi>
7446
7447         Fix for #110165 (thanks to Arnaud Charlet):
7448         
7449         * gdk/win32/gdkevents-win32.c (build_keypress_event,
7450         build_keyrelease_event): For unshifted control char, use
7451         lowercase ASCII keyval.
7452         (gdk_event_translate): Similarily, when handling WM_SYSKEYDOWN and
7453         UP (i.e. Alt-something), if it's an unshifted ASCII letter, use
7454         lowercase keyval. Use build_key_event_state() here, too, instead
7455         of minor code duplication.
7456
7457 2003-05-06  Matthias Clasen  <maclas@gmx.de>
7458
7459         * tests/testmultidisplay.c: Don't include strings.h, it's not
7460         needed anymore.  (#112388)
7461
7462         * examples/menu/itemfactory.c: 
7463         * docs/tutorial/gtk-tut.sgml: Remove an unneeded include from the
7464         itemfactory example.
7465
7466 2003-05-05  Matthias Clasen  <maclas@gmx.de>
7467
7468         * gtk/gtkdnd.c (gtk_drag_source_set_icon_stock):  Actually set the
7469         icon type to the stock icon type.  (#111735, Dave Bordoley)
7470
7471 2003-05-05  Christian Rose  <menthos@menthos.com>
7472
7473         * configure.in: Added sr and sr@Latn to ALL_LINGUAS.
7474         Removed sp, it's replaced by sr@Latn.
7475
7476 Wed Apr 30 22:09:11 BST 2003  Tony Gale <gale@gtk.org>
7477
7478         * docs/faq/gtk-faq.sgml: GTK+ 2.x updates, mainly from
7479         Gonzalo Odiard
7480
7481 Mon Apr 28 17:54:39 2003  Jonathan Blandford  <jrb@redhat.com>
7482
7483         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy the search
7484         data iff the destroy func isn't NULL.
7485
7486 Thu Apr 24 19:12:05 2003  Owen Taylor  <otaylor@redhat.com>
7487
7488         * autogen.sh (have_libtool): Accept libtool-1.5. (#111480)
7489
7490 2003-04-23  Abel Cheung  <maddog@linux.org.hk>
7491
7492         * configure.in: Added "am" "mk" "ta" to ALL_LINGUAS.
7493
7494 Tue Apr 22 15:33:51 2003  Owen Taylor  <otaylor@redhat.com>
7495
7496         * gtk/gtkfilesel.c (open_new_dir): Fix capitalization
7497         of UTF-8. (#106419, Roozbeh Pournader)
7498
7499 Tue Apr 22 15:17:25 2003  Owen Taylor  <otaylor@redhat.com>
7500
7501         * configure.in: Only check for XFT2 if we found pango-xft
7502         (#105692, Jon Nall)
7503
7504 Tue Apr 22 15:12:19 2003  Owen Taylor  <otaylor@redhat.com>
7505
7506         * gtk/gtkwidget.c (gtk_widget_class_init): Fix PROP_HAS_FOCUS/
7507         PROP_IS_FOCUS confusion. (#111333, Jody Goldberg)
7508
7509 Tue Apr 22 19:43:01 BST 2003  Tony Gale <gale@gtk.org>
7510
7511         * docs/faq/gtk-faq.sgml: add note about version converage.
7512
7513 Mon Apr 21 19:02:16 2003  Owen Taylor  <otaylor@redhat.com>
7514
7515         * gtk/gtksocket.c (activate_key): Fix prototype for
7516         activate_key. (#108927, Jason D. Hildebrand)
7517
7518 Mon Apr 21 18:42:51 2003  Owen Taylor  <otaylor@redhat.com>
7519
7520         * demos/gtk-demo/Makefile.am demos/gtk-demo/geninclude.pl:
7521         Remove geninclude.pl from CVS and don't dist it either,
7522         it is generated. (#108970, Rich Kinder)
7523
7524 Mon Apr 21 18:35:48 2003  Owen Taylor  <otaylor@redhat.com>
7525
7526         * gtk/gtkobject.h: Remove a couple of obsolete comments,
7527         fix another comment. (#109737, Britton Kerin)
7528
7529 Mon Apr 21 18:29:03 2003  Owen Taylor  <otaylor@redhat.com>
7530
7531         * gtk/gtkiconfactory.c (gtk_icon_set_unref): Free
7532         the source list, not just it's contents (Patch
7533         from Charles Kerr, #108243)
7534
7535 Mon Apr 21 18:13:46 2003  Owen Taylor  <otaylor@redhat.com>
7536
7537         * gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Patch
7538         from Alex Larsson fixing problem with restacking during
7539         DND. (#108671)
7540
7541 Mon Apr 21 15:07:29 2003  Owen Taylor  <otaylor@redhat.com>
7542
7543         * gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard/pointer_ungrab):
7544         Calling XFlush() after ungrabbing, to avoid problems if
7545         the app subsequently blocks on a long-running operation.
7546         (#106520, reported by Rajkumar Siva)
7547
7548 Fri Apr 18 17:42:45 2003  Owen Taylor  <otaylor@redhat.com>
7549
7550         * gdk/x11/gdkwindow-x11.c (set_initial_hints): Add
7551         SKIP_TASKBAR/SKIP_PAGER to set of properties we
7552         might set on map. (#110019, problem reported
7553         by Loban Rahman)
7554
7555 Fri Apr 18 17:14:33 2003  Owen Taylor  <otaylor@redhat.com>
7556
7557         * gdk/gdkevents.c (gdk_event_copy): Fix for the
7558         case when gdk_event_copy() is called on a non-allocated
7559         event. (#109716, reported by Rich Burridge)
7560
7561 Fri Apr 18 16:57:44 2003  Owen Taylor  <otaylor@redhat.com>
7562
7563         * gdk/x11/gdkdrawable-x11.c (draw_with_images/pixmaps):
7564         Fix pointer arithmetic on 'void *'. (#108322)
7565
7566 Fri Apr 18 16:31:49 2003  Owen Taylor  <otaylor@redhat.com>
7567
7568         * configure.in gdk/x11/gdkdisplay-x11.c modules/input/Makefile.am:
7569         Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and
7570         use of XAddConnectionWatch. Remove --enable-xim config option.
7571         Should fix building on X11R6 (#110523, Albert Chin)
7572
7573 Fri Apr 18 15:56:46 2003  Owen Taylor  <otaylor@redhat.com>
7574
7575         * gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkdrawable-x11.[ch]:
7576         Patch from Morten Welinder to catch Sun servers with a 
7577         broken implementation of the RENDER extension. (#108309)
7578
7579 Fri Apr 18 15:30:38 2003  Owen Taylor  <otaylor@redhat.com>
7580
7581         * gdk/x11/gdkwindow-x11.c (set_text_property): Use
7582         gdk_free_compound_text(), not g_free(). (#107643,
7583         Michael Zucchi)
7584
7585 Fri Apr 18 15:11:50 2003  Owen Taylor  <otaylor@redhat.com>
7586
7587         * gdk/x11/gdkdisplay-x11.c (_gdk_display_x11_get_type)
7588         gdk/x11/gdkscreen-x11.c (_gdk_screen_x11_get_type): Fix
7589         wrong use of base_finalize. (#105126, Sven Neumann)
7590
7591 Fri Apr 18 15:06:00 2003  Owen Taylor  <otaylor@redhat.com>
7592
7593         * gdk/gdkwindow.c (gdk_window_constrain_size): Fix
7594         '/' vs. '*' problem in aspect ration computations. (#108237)
7595
7596 Fri Apr 18 14:15:09 2003  Owen Taylor  <otaylor@redhat.com>
7597
7598         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): 
7599         * gdk/x11/gdkevents-x11.c (gdk_event_translate): You
7600         don't get a XkbMapNotify event if you get a XkbNewKeyboardNotify 
7601         event, so select for both. (#108406, Egmont Koblinger)
7602
7603 Thu Apr 17 09:57:44 2003  Jonathan Blandford  <jrb@gnome.org>
7604
7605         * gtk/gtktreeview.c (validate_visible_area): remove infinite loop
7606         caused by not clearing the scroll_to_path.
7607
7608 2003-04-16  Matthias Clasen  <maclas@gmx.de>
7609
7610         * gtk/gtkstyle.c: Doc additions and fixes.
7611
7612         * gtk/gtktreeviewcolumn.c
7613         (_gtk_tree_view_column_get_neighbor_sizes): Doc fixes.
7614
7615 2003-04-14  Michael Natterer  <mitch@gimp.org>
7616
7617         * gtk/gtkliststore.c (gtk_list_store_move): added checks to ensure
7618         that the iter is not reordered to its own position. Prevents model
7619         corruption for the case that the store contains only a single item
7620         (fixes bug #108387).
7621
7622         Unrelated:
7623
7624         * gtk/gtkliststore.c (gtk_list_store_insert): g_list_alloc() the
7625         new list element later so we don't leak it if we decide to return
7626         early.
7627
7628         * gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node):
7629         set selection->tree_view->priv->anchor to NULL after freeing it.
7630
7631 2003-04-13  Matthias Clasen  <maclas@gmx.de>
7632
7633         * gtk/gtktreeviewcolumn.c
7634         (gtk_tree_view_column_cell_get_position): Document. 
7635
7636         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): 
7637         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_[sg]et_expand): 
7638         * gtk/gtkbutton.c (gtk_button_[sg]et_focus_on_click): Document
7639         these as 2.4 additions.
7640
7641 2003-04-09  Matthias Clasen  <maclas@gmx.de>
7642
7643         * INSTALL.in: Fix the real thing.
7644
7645         * INSTALL: Typo fix.
7646
7647 Mon Apr  7 19:43:15 2003  Owen Taylor  <otaylor@redhat.com>
7648
7649         * gdk/x11/gdkdisplay-x11.c (gdk_x11_display_ungrab): Flush
7650         after ungrabbing the server.
7651  
7652         * gdk/x11/gdkimage-x11.c: Remove some no-longer-needed
7653         calls to XFlush().
7654
7655         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_at_pointer):
7656         Use gdk_x11_display_grab/ungrab.
7657
7658         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize
7659         use_xshm to TRUE so SHM gets used when present.
7660  
7661 2003-04-07  Matthias Clasen  <maclas@gmx.de>
7662
7663         * gtk/gtktextlayout.c (set_para_values): 
7664         * gtk/gtkenums.h (GtkWrapMode): Add GTK_WRAP_WORD_CHAR.  (#110086,
7665         David Brigada)
7666
7667         * gtk/gtkcelleditable.c, gtk/gtkfixed.c, gtk/gtktreemodel.c,
7668         gtk/gtktreeselection.c, gtk/gtktreeview.c: Fix numerous
7669         misspellings of possessive "its".  (#110027, Doug Quale)
7670
7671 2003-04-03  Matthias Clasen  <maclas@gmx.de>
7672
7673         * demos/gtk-demo/main.c (demo_find_file): Only use files from the
7674         current directory if it looks like the srcdir.  (#109357)
7675
7676 Wed Apr  2 23:02:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7677
7678         * gtk/gtkbutton.[ch] (gtk_button_class_init): add property
7679         focus_on_click
7680
7681         * gtk/gtkwindow.c (gtk_window_focus): make arrow keyboard
7682         navigation not wrap around.
7683
7684 2003-04-02  Matthias Clasen  <maclas@gmx.de>
7685
7686         * gtk/gtkprogress.c (gtk_progress_get_percentage_from_value):
7687         Return 0 if lower == upper.  (#109155)
7688         (gtk_progress_get_current_percentage): Use
7689         gtk_progress_get_percentage_from_value().
7690
7691 2003-04-01  Matthias Clasen  <maclas@gmx.de>
7692
7693         * gtk/gtkimcontext.c (gtk_im_context_focus_in): Fix docs.
7694         (#109510, Noah Levitt)
7695
7696 Mon Mar 31 13:52:13 2003  Jonathan Blandford  <jrb@redhat.com>
7697
7698         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): null initialize reorder's
7699         members so Purify won't complain.
7700
7701         * gtk/gtkliststore.c (gtk_list_store_sort): ditto.
7702
7703 2003-03-31  Matthias Clasen  <maclas@gmx.de>
7704
7705         * gtk/gtkwindow.c: Add a new property, role, corresponding to 
7706         gtk_window_[gs]et_role().  (#93904)
7707
7708 Sun Mar 30 03:57:42 2003  Jonathan Blandford  <jrb@gnome.org>
7709
7710         * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows):
7711         fix crash.  Patch from Markus Lausser <sgop@users.sourceforge.net>
7712
7713 2003-03-29  Matthias Clasen  <maclas@gmx.de>
7714
7715         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Set state
7716         of labels back to normal before reparenting back.  (#102387)
7717
7718         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): Set
7719         a default window title to match the GtkFontSelectionDialog behavior.
7720  
7721         (gtk_color_selection_dialog_new): Don't call
7722         gtk_window_set_title() if title is NULL.  (bug #101975, Daniel Elstner)
7723
7724 2003-03-29  Matthias Clasen  <maclas@gmx.de>
7725
7726         Fix for bug #78499:
7727         
7728         * gtk/gtkentry.h (struct _GtkEntry): Add flags select_words and
7729         select_lines. 
7730
7731         * gtk/gtkentry.c (gtk_entry_button_press): Set select_words and
7732         select_lines on double/triple click.
7733
7734         * gtk/gtkentry.c (gtk_entry_motion_notify): Implement
7735         select-by-words and select-by-lines behaviour.
7736
7737         Fixes for bug #56248:
7738         
7739         * gtk/gtknotebook.c (stop_scrolling): New function to remove the
7740         timer and queue a redraw. 
7741         (gtk_notebook_grab_notify): 
7742         (gtk_notebook_state_changed): New functions to call stop_scrolling() 
7743         if necessary.   
7744         (gtk_notebook_button_release): Use stop_scrolling().
7745         (gtk_notebook_draw_arrow): Fix drawing of insensitive arrows.
7746
7747         * gtk/gtkrange.c (stop_scrolling): New function to remove the
7748         grab, remove the timer and queue a redraw.
7749         (gtk_range_grab_notify): 
7750         (gtk_range_state_changed): New functions to call stop_scrolling() 
7751         if necessary.   
7752         (gtk_range_button_release): Use stop_scrolling().
7753
7754         * gtk/gtkspinbutton.c (gtk_spin_button_grab_notify): 
7755         (gtk_spin_button_state_changed): Redraw after stop_spinning.
7756         (gtk_spin_button_stop_spinning): Reset click_child to correct the
7757         drawing of the arrows.
7758         (gtk_spin_button_button_release): Use a local copy of click_child,
7759         since stop_spinning() resets it.
7760
7761         * gtk/gtknotebook.c (gtk_notebook_class_init): Add C-A-PgUp and
7762         C-A-PgDown as alternatives to the A-less variants. (This slipped
7763         in accidentally some time ago).  (#97860)
7764
7765 2003-03-26  Sven Neumann  <sven@gimp.org>
7766
7767         * gtk/gtktreeview.c: rewrote the function that does node and arrow
7768         prelighting, queue all redraws from here (Fixes bug #108792).
7769
7770 2003-03-20  Richard Kinder <r_kinder@yahoo.com>
7771
7772         * demos/testpixbuf.c (update_timeout): set error to NULL, not FALSE.
7773         Fixes bug #108778.
7774
7775 2003-03-20  Guntupalli Karunakar <karunakar@freedomink.org>
7776
7777         * configure.in: Added "ml" in ALL_LINGUAS
7778
7779 Sat Mar 15 18:49:27 2003  Manish Singh  <yosh@gimp.org>
7780
7781         * gtk/gtkradiomenuitem.h: use GTK_DISABLE_DEPRECATED instead of
7782         G_DISABLE_DEPRECATED.
7783
7784 2003-03-14  Tor Lillqvist  <tml@iki.fi>
7785
7786         * gdk/win32/gdkevents-win32.c: Use the signed GET_X_LPARAM() and
7787         GET_Y_LPARAM() to extract x and y coordinates from an LPARAM or
7788         DWORD, and not the unsigned HIWORD() and LOWORD(). Systems with
7789         multiple monitors can have negative coordinates on some of the
7790         monitors. (partial fix for #99496, Arnaud Charlet)
7791
7792 2003-03-15  Matthias Clasen  <maclas@gmx.de>
7793
7794         * gtk/gtktextview.c: Add a "buffer" property.  (#108353) 
7795
7796 2003-03-13  Sven Neumann  <sven@gimp.org>
7797
7798         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
7799         removed redundant calls to g_object_notify().
7800         (gtk_cell_renderer_pixbuf_get_size): removed redundant casts, see
7801         bug #108236.
7802
7803         * gtk/gtktextiter.c (_gtk_text_iter_get_segment_char)
7804         (_gtk_text_iter_get_segment_byte): return 0, not NULL (these
7805         functions return an integer value).
7806
7807 2003-03-13  Tor Lillqvist  <tml@iki.fi>
7808
7809         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
7810         WM_MOUSEMOVE, the test whether we have actually moved (and thus
7811         shouldn't generate an GDK event) moved after the call to
7812         propagate() and translate_mouse_coords(). Otherwise we were
7813         testing wrong values. (#108115, Allin Cottrell)
7814         (gdk_event_translate): On WM_?BUTTONUP, set current_{x,y} the same
7815         way as in WM_?BUTTONDOWN and WM_MOUSEMOVE.
7816
7817         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
7818         is used, must copy the HCURSOR with CopyCursor(), as it is OK to
7819         destroy the GdkCursor after calling gdk_pointer_grab(). Set the
7820         cursor right away with SetCursor(), as we won't get any
7821         WM_SETCURSOR messages while the mouse is captured. 
7822         (gdk_display_pointer_ungrab): Correspondingly, destroy the copy
7823         with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
7824
7825         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
7826         WM_SYSCHAR, return FALSE from the window procedure to prevent the
7827         DefWindowProc from being called. Otherwise Windows would beep,
7828         thinking you are tring to access a (nonexistent) menu when you
7829         press Alt-something. Don't do this for Alt-Space,
7830         though. (#107454, Martyn Russell)
7831
7832         * gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
7833
7834 Tue Mar 11 12:01:07 2003  Jonathan Blandford  <jrb@gnome.org>
7835
7836         * gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
7837         [left/right] expands/collapses the tree, #108092
7838
7839 2003-03-09  Tor Lillqvist  <tml@iki.fi>
7840
7841         * gdk/win32/gdkdrawable-win32.c (draw_segments): Don't try to
7842         compensate for LineTo() not drawing the end pixel. It causes more
7843         harm than benefits, see bug #81895.
7844
7845 2003-03-08  Matthias Clasen  <maclas@gmx.de>
7846
7847         Bug #107664 continued:
7848
7849         * gdk/x11/gdkinputprivate.h: 
7850         * gdk/x11/gdkinput-none.c (_gdk_input_window_none_event): Remove. 
7851         (_gdk_input_other_event): Return gboolean.
7852         * gdk/x11/gdkinput-xfree.c (_gdk_input_window_none_event): Remove. 
7853         (_gdk_input_other_event): Return gboolean.
7854         * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): Return gboolean.
7855
7856         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Make return_val
7857         gboolean, remove pointless call to _gdk_input_window_none_event.
7858
7859         * gdk/win32/gdkinput-win32.[hc] (_gdk_input_other_event): Return gboolean.
7860         (_gdk_input_window_none_event): Remove.
7861
7862         * gtk/gtktextiter.c (_gtk_text_iter_get_indexable_segment): 
7863         (_gtk_text_iter_get_any_segment): 
7864         (_gtk_text_iter_get_segment_byte): 
7865         (_gtk_text_iter_get_segment_char): 
7866         (_gtk_text_iter_get_text_line): 
7867         (_gtk_text_iter_get_btree): Fix 0/NULL confusion.
7868         * gdk/x11/gdkdnd-x11.c (motif_target_table_check): Return gint.
7869         * gdk/win32/gdkfont-win32.c (gdk_font_equal): 
7870         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_get_deskrelative_origin): 
7871         (gdk_window_get_origin): 
7872         * gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Fix 0/FALSE confusion. 
7873
7874 2003-03-06  Matthias Clasen  <maclas@gmx.de>
7875
7876         * gdk/gdkrgb.c (gdk_rgb_try_colormap): Return gboolean, not gint.
7877         (#107664, Morten Welinder)
7878
7879         * gdk/x11/gdkwindow-x11.c (gdk_window_get_deskrelative_origin): 
7880         * gdk/x11/gdkfont-x11.c (gdk_font_equal): 
7881         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display): 
7882         Fix TRUE/1 and FALSE/0 confusion.  (#107664, Morten Welinder)
7883
7884         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): 
7885         * gtk/gtkeditable.c (gtk_editable_get_chars): 
7886         * gtk/gtkctree.c (gtk_ctree_find_node_ptr): 
7887         * demos/gtk-demo/main.c (demo_find_file): Fix NULL/FALSE confusion
7888         (#107648, Morten Welinder)Fix NULL/FALSE confusion
7889         (#107648, Morten Welinder)
7890
7891 2003-03-04  Matthias Clasen  <maclas@gmx.de>
7892
7893         * gtk/gtkobject.h: Add deprecation guards for gtk_object_new ().
7894
7895 Sun Mar  2 23:35:57 2003  Jonathan Blandford  <jrb@gnome.org>
7896
7897         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
7898         handle rtl code.  Thanks to Matthias Clasen for an initial patch
7899         to handle the RTL code.
7900
7901         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_get_size): ditto
7902
7903         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): ditto
7904
7905         * gtk/gtktreeview.c: (invalidate_column),
7906         (invalidate_last_column),
7907         (gtk_tree_view_get_real_requested_width_from_column),
7908         (gtk_tree_view_size_allocate_columns),
7909         (gtk_tree_view_size_allocate), (gtk_tree_view_button_press),
7910         (gtk_tree_view_button_release_drag_column),
7911         (gtk_tree_view_update_current_reorder),
7912         (gtk_tree_view_motion_drag_column), (gtk_tree_view_bin_expose),
7913         (gtk_tree_view_key_press), (gtk_tree_view_header_focus),
7914         (gtk_tree_view_get_background_xrange),
7915         (gtk_tree_view_get_arrow_xrange),
7916         (gtk_tree_view_is_expander_column),
7917         (gtk_tree_view_set_column_drag_info),
7918         (gtk_tree_view_move_cursor_left_right):
7919         Add RTL support.
7920
7921         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): add an
7922         expand flag.
7923
7924         * gtk/gtktreeviewcolumn.c:
7925         (gtk_tree_view_column_class_init),
7926         (gtk_tree_view_column_set_property),
7927         (gtk_tree_view_column_get_property),
7928         (gtk_tree_view_column_set_expand),
7929         (gtk_tree_view_column_get_expand),
7930         (gtk_tree_view_column_cell_process_action):
7931         Add support for expand flag.  Thanks to Kristian Rietveld for an
7932         initial patch for this.
7933
7934 Fri Feb 28 02:06:17 2003  Jonathan Blandford  <jrb@gnome.org>
7935
7936
7937 2003-03-02  Tor Lillqvist  <tml@iki.fi>
7938
7939         * gdk/gdk.def
7940         * gtk/gtk.def: Add a bunch of missing entries. Noticed by Cedric
7941         Gustin.
7942
7943 2003-03-01  Matthias Clasen  <maclas@gmx.de>
7944
7945         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment): 
7946         (gtk_scrolled_window_set_hadjustment): Replace uses of
7947         gtk_object_new by g_object_new.
7948
7949 Thu Feb 27 17:44:24 2003  Manish Singh  <yosh@gimp.org>
7950
7951         * demos/gtk-demo/main.c
7952         * demos/gtk-demo/tree_store.c
7953         * gdk/x11/gdkscreen-x11.c
7954         * gtk/gtkcellrenderertoggle.c
7955         * gtk/gtkcolorsel.c
7956         * gtk/gtkdnd.c
7957         * gtk/gtkeditable.c
7958         * gtk/gtkentry.c
7959         * gtk/gtkmenu.c
7960         * gtk/gtkmenubar.c
7961         * gtk/gtkmenuitem.c
7962         * gtk/gtkmenushell.c
7963         * gtk/gtkrc.c
7964         * gtk/gtksettings.c
7965         * gtk/gtkstyle.c
7966         * gtk/gtktextbuffer.c
7967         * gtk/gtktextview.c
7968         * gtk/gtktreeviewcolumn.c
7969         * tests/testgtk.c
7970         * tests/testtext.c
7971         * tests/testtreeedit.c
7972         * tests/testtreefocus.c
7973         * tests/testtreeview.c: remove unnecessary G_OBJECT() casts.
7974
7975 Tue Feb 25 21:55:17 2003  Jonathan Blandford  <jrb@redhat.com>
7976
7977         * gtk/gtkoptionmenu.c (gtk_option_menu_position): account for RTL
7978         code.
7979
7980 2003-02-24  Sven Neumann  <sven@gimp.org>
7981
7982         * gtk/gtkmain.c (gtk_get_default_language): fixed documentation.
7983
7984 2003-02-21  Tomas Ogren  <stric@ing.umu.se>
7985
7986         * docs/reference/gtk/tmpl/gtktreemodel.sgml: Fix typos in an example
7987
7988 2003-02-20  Matthias Clasen  <maclas@gmx.de>
7989
7990         * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag): 
7991         Check if line_ancestor_parent is NULL.  (#102711, Manuel Clos)
7992
7993         * gtk/gtktextview.c (gtk_text_view_scroll_to_iter): 
7994         (gtk_text_view_update_adjustments): Make sure cursor stays visible
7995         during horizontal scrolling.  (#75270)
7996
7997 2003-02-19  Matthias Clasen  <maclas@gmx.de>
7998
7999         * tests/testdnd.c: Replace gtk_timeout_* by their GLib
8000         counterparts. (#106532)
8001
8002         * gdk/gdkkeys.c (gdk_keymap_class_init): Associate the
8003         keys_changed virtual function with the keys_changed signal.
8004         (#106512, Jeff Franks)
8005
8006 2003-02-15  Larry Ewing  <lewing@ximian.com>
8007
8008         * gdk/gdkevents.c (gdk_event_copy): copy the event axes as well.
8009
8010 2003-02-17  Mohammad DAMT  <mdamt@bisnisweb.com>
8011
8012         * po/id.po: Added Indonesian translation
8013         * configure.in: Added "id" to ALL_LINGUAS
8014
8015 2003-02-14  Matthias Clasen  <maclas@gmx.de>
8016
8017         * gtk/gtktextview.c (popup_targets_received): Remove bogus casts.
8018
8019 2003-02-12  Christian Rose  <menthos@menthos.com>
8020
8021         * configure.in: Added "yi" to ALL_LINGUAS.
8022
8023 2003-02-12  Matthias Clasen  <maclas@gmx.de>
8024
8025         Fix for #82734 and #78216:
8026         
8027         * gtk/gtktextview.c (delete_cb): 
8028         (select_all_cb): New callbacks for context menu items.
8029         (popup_targets_received): Add "Delete" and "Select All" to context
8030         menu, mnemonics and title caps for all items.
8031
8032         * gtk/gtkentry.c (gtk_entry_delete_cb): New callback for "Delete"
8033         context menu item.
8034         (popup_targets_received): Add "Delete" to context menu, mnemonics
8035         and title caps for all items.
8036
8037 2003-02-09  Tor Lillqvist  <tml@iki.fi>
8038
8039         * gtk/gtkfilesel.c (win32_gtk_add_drives_to_dir_list): Use
8040         GetDriveType() to recognize removable drives (in order to avoid
8041         hanging if trying to access an empty floppy drive), instead of
8042         hardcoding A: and B: (#105654).
8043
8044 2003-02-09  Matthias Clasen  <maclas@gmx.de>
8045
8046         * gtk/gtkwidget.c (gtk_widget_set_name): Add note about periods in 
8047         names.  (#57680)
8048
8049 2003-02-09  Christian Rose  <menthos@menthos.com>
8050
8051         * configure.in: Removed "en@IPA.po" from ALL_LINGUAS.
8052
8053 Fri Feb  7 04:49:46 2003  Tim Janik  <timj@gtk.org>
8054
8055         * gtk/gtkobject.c: remove quark_user_data usage in
8056         gtk_object_{g|s}et_user_data(). fixes get_user_data()
8057         returning NULL for user_data set through property interface.
8058
8059         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): don't put out
8060         warnings if a pixbuf couldn't be retrieved, since (a) this doesn't
8061         need to be a programming error (in case of loaded data), (b) it breaks
8062         with 2.0 behaviour where extra magic could be used to create empty
8063         images. don't attempt to retrieve pixbufs from NULL extra_data.
8064
8065 2003-02-06  Matthias Clasen  <maclas@gmx.de>
8066
8067         * gdk/x11/gdkvisual-x11.c (gdk_visual_get_best_with_depth): Return
8068         a GdkVisual *, not a GdkVisual **.  (#105243)
8069
8070         * gtk/gtkclist.c: 
8071         * gtk/gtkctree.c: 
8072         * gtk/gtkcontainer.c: 
8073         * gtk/gtkdnd.c: 
8074         * gtk/gtkentry.c: 
8075         * gtk/gtklist.c:
8076         * gtk/gtkmenu.c:
8077         * gtk/gtkmenuitem.c:
8078         * gtk/gtknotebook.c:
8079         * gtk/gtkselection.c:
8080         * gtk/gtkspinbutton.c:
8081         * gtk/gtktext.c:
8082         * gtk/gtktextview.c:
8083         * gtk/gtktooltips.c:
8084         * gtk/gtktreeview.c:
8085         * gtk/gtkwindow.c: Replace uses of gtk_timeout_* and gtk_idle_* by
8086         their non-deprecated GLib counterparts.
8087         
8088         * gtk/gtkmain.h: Fully deprecate gtk_timeout_* and gtk_idle_*.
8089         
8090 Sun Feb  2 16:45:57 GMT 2003  Tony Gale <gale@gtk.org>
8091
8092         * docs/tutorial/gtk-tut.sgml: cleanups from
8093         Sebastian Rittau (#104832)
8094
8095 2003-02-01  Tor Lillqvist  <tml@iki.fi>
8096
8097         Merge from stable:
8098
8099         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_foreign_new_for_display,
8100         gdk_pixmap_lookup, gdk_pixmap_lookup_for_display): Implement.
8101         (#104108, Naofumi Yasufuku)
8102
8103         * gdk/gdk.def: Export the above. Export
8104         gdk_screen_get_system_visual, noticed by Ed Woods.
8105
8106 Fri Jan 31 17:45:22 2003  Manish Singh  <yosh@gimp.org>
8107
8108         * demos/pixbuf-demo.c
8109         * demos/testpixbuf.c
8110         * demos/gtk-demo/pixbufs.c: remove deprecated gtk_timeout_* usage.
8111
8112 Fri Jan 31 17:33:00 2003  Manish Singh  <yosh@gimp.org>
8113                                                                                 
8114         * gtk/gtknotebook.c (gtk_notebook_remove_tab_label): set_state
8115         on the tab_label before unparenting it, in case the unparent
8116         drops the refcount to 0.
8117
8118 2003-02-01  Matthias Clasen  <maclas@gmx.de>
8119
8120         * gtk/gtkiconfactory.h: Use GDK_MULTIHEAD_SAFE like all other gtk
8121         headers. Sorry about gtk_selection_clear, Yosh.
8122
8123 Thu Jan 30 17:16:05 2003  Manish Singh  <yosh@gimp.org>
8124
8125         * gtk/gtkselection.h: declare gtk_selection_clear in GTK_COMPILATION
8126         too, for gtkwidget.c. Remember people, when introducing new
8127         deprecations, make sure internal code isn't using it, or if so,
8128         reorganize appropriately like I've done in other places.
8129
8130         * tests/testtext.c: don't use deprecated gtk_timeout_* stuff.
8131
8132 2003-01-31  Matthias Clasen  <maclas@gmx.de>
8133
8134         * gtk/gtkselection.h: 
8135         * gtk/gtkselection.c (gtk_selection_clear): Deprecate.  (#85683)
8136
8137         * gdk/gdkpixbuf.h: 
8138         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): 
8139         (gdk_pixbuf_render_to_drawable_alpha): Deprecate.  (#60582)
8140
8141         * gtk/gtkcolorsel.h:
8142         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
8143         Deprecate.  (#98167)
8144
8145         * gtk/gtkpaned.h: Deprecate gtk_paned_computed_position(). (#97077)
8146
8147         * gtk/gtkmain.h: Deprecate the gtk_timeout_*, gtk_idle_*
8148         and gtk_input_* functions.  (#71596)
8149         
8150         * gtk/gtkentry.c (gtk_entry_move_cursor): 
8151         * gtk/gtklabel.c (gtk_label_move_cursor): Handle
8152         GTK_MOVEMENT_HORIZONTAL_PAGES in switches.
8153
8154         * gdk/gdk.h: Deprecate gdk_wcstombs() and gdk_mbstowcs().  (#79803)
8155
8156         * gtk/gtkitemfactory.h: 
8157         * gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Deprecate. 
8158         (#69244)
8159
8160 Thu Jan 30 23:48:30 2003  Kristian Rietveld  <kris@gtk.org>
8161
8162         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_count_special_cell):
8163         only count the special cell if it is also visible,
8164         (_gtk_tree_view_column_get_neighbor_sizes): only take the width into
8165         account from visible cells,
8166         (gtk_tree_view_column_cell_get_position): likewise, (Reported and
8167         testcase provided by Vasco Alexandre da Silva Costa, via IRC,
8168         tracking bug was #104563).
8169         
8170 Thu Jan 30 23:46:15 2003  Kristian Rietveld  <kris@gtk.org>
8171
8172         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
8173         subtract expander space and focus line space from the extra space
8174         we are about the allocate. (Fixes #104635).
8175
8176 Thu Jan 30 23:42:03 2003  Kristian Rietveld  <kris@gtk.org>
8177
8178         * gtk/gtkstyle.c (apply_affine_on_point): fix rouding error
8179         (Fixes #96242, patch from Soeren Sandmann).
8180
8181 Thu Jan 30 16:54:29 2003  Owen Taylor  <otaylor@redhat.com>
8182
8183         * gtk/gtknotebook.c: Patch from Soeren Sandmann
8184         to update the states of the tab label child
8185         widgets to match the state of the tabs. 
8186         (#93389, Reported by Tommi Komulainen)
8187
8188 Thu Jan 30 16:30:54 2003  Owen Taylor  <otaylor@redhat.com>
8189
8190         * Makefile.am (EXTRA_DIST): Remove gtk+.spec.in from
8191         EXTRA_DIST, and from dist rules. (#102231)
8192
8193 2003-01-30  Daniel Elstner  <daniel.elstner@gmx.net>
8194
8195         * gtk/gtktoolbar.c (set_child_packing_and_visibility): New helper
8196         function that sets the icon's and label's packing options and
8197         visibility based on toolbar->style.
8198
8199         (gtk_toolbar_internal_insert_element):
8200         (gtk_real_toolbar_style_changed): Make use of
8201         set_child_packing_and_visibility() to clean up the code and get
8202         the packing right for icon-only/text-only toolbars. (#104679)
8203
8204         (get_first_child): Remove, and use gtk_bin_get_child() instead.
8205
8206 2003-01-30  Matthias Clasen  <maclas@gmx.de>
8207
8208         * gtk/gtktextview.c: Replace PAGE_HORIZONTALLY_HACK_VALUE by
8209         GTK_MOVEMENT_HORIZONTAL_PAGES.  (#68947)
8210
8211         * gtk/gtkenums.h: Add GTK_MOVEMENT_HORIZONTAL_PAGES to GtkMovementStep.
8212         
8213 Thu Jan 30 16:01:29 2003  Owen Taylor  <otaylor@redhat.com>
8214
8215         * gdk/gdkrgb.c (gdk_rgb_try_colormap): Remove the 
8216         attempt-to-allocate then free code. To handle multiple
8217         people allocating colors at the same time, we need
8218         to just go ahead and try. (#102213, Shivram U)
8219         
8220 2003-01-30  Daniel Elstner  <daniel.elstner@gmx.net>
8221
8222         * gtk/gtkcolorsel.c (palette_paint): Explicitely draw an opaque
8223         rectangle using the background color rather than relying on
8224         gdk_window_clear_area(), so that the palette works properly with
8225         pixmap themes. (#101732)
8226
8227         * demos/gtk-demo/colorsel.c: Install an "expose_event" handler
8228         to fill the drawing area in the background color.
8229
8230 Wed Jan 29 14:11:21 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
8231
8232         * modules/input/gtkimcontextxim.c (choose_better_style): fix a memory
8233         initialization error for selecting input style (#103549).
8234
8235 Wed Jan 29 17:02:41 2003  Owen Taylor  <otaylor@redhat.com>
8236
8237         * gdk/gdkkeyuni.c (get_decimal_char): Make the 
8238         translation of GDK_KP_Decimal dependent on LC_NUMERIC.
8239         (#101225)
8240
8241 Wed Jan 29 15:43:56 2003  Owen Taylor  <otaylor@redhat.com>
8242
8243         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
8244         Make up from the menu bar go to the end of the submenu.
8245         (#96114, Ian Peters.)
8246
8247         * gtk/gtkmenuitem.c (gtk_menu_item_mnemonic_activate): 
8248         Only do the select-but-not-activate stuff if the
8249         menu is already active. Otherwise, just activate.
8250         (#101690, Arvind Samptur)
8251
8252 Tue Jan 28 15:18:24 2003  Owen Taylor  <otaylor@redhat.com>
8253
8254         * autogen.sh (have_automake): Fix version in complaint
8255         message about automake. (#104366, Rich Burridge)
8256
8257 Mon Jan 27 16:38:13 2003  Owen Taylor  <otaylor@redhat.com>
8258
8259         * configure.in: Remove SOEXT stuff; it doesn't work portably.
8260
8261 Mon Jan 27 22:45:15 2003  Kristian Rietveld  <kris@gtk.org>
8262
8263         * gtk/gtktreestore.c (gtk_tree_store_move): don't handle b if
8264         we appended/prepended, send the rows_reordered signal to the 
8265         correct level ... (Reported by Matthew Tuck).
8266
8267 Mon Jan 27 22:43:11 2003  Kristian Rietveld  <kris@gtk.org>
8268
8269         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): don't just bail
8270         out if the level only has one item, recurse over the child if there
8271         is one. (Fixes #100458, reported by Gaël Le Mignot).
8272
8273 Mon Jan 27 22:41:26 2003  Kristian Rietveld  <kris@gtk.org>
8274
8275         * gtk/gtktreeview.c (gtk_tree_view_set_model),
8276         (gtk_tree_view_search_equal_func): make TreeView search handle
8277         all types which are transformable by GValue. (Fixes #99803, reported
8278         by Muktha Narayan).
8279
8280 Mon Jan 27 22:39:25 2003  Kristian Rietveld  <kris@gtk.org>
8281
8282         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_sort_column_id):
8283         *really* handle unsetting the ID. Slightly modified patch from
8284         Soeren Sandmann. Fixes #87556, reported by Jarek Dukat.
8285
8286 Mon Jan 27 22:33:43 2003  Kristian Rietveld  <kris@gtk.org>
8287
8288         Fixes the total GtkTreeSortable mess, and #83195, reported by
8289         Jarek Dukat
8290
8291         * gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id),
8292         (gtk_tree_store_set_sort_column_id), (gtk_tree_store_set_sort_func),
8293         (gtk_tree_store_set_default_sort_func): use the constant
8294         GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID instead of -1, make functions
8295         work as advertised by the documentation.
8296
8297         * gtk/gtklistore.c (gtk_list_store_get_sort_column_id),
8298         (gtk_list_store_set_sort_column_id), (gtk_list_store_set_sort_func),
8299         (gtk_list_store_set_default_sort_func): likewise.
8300
8301         * gtk/gtktreemodelsort.c (gtk_tree_model_set_sort_column_id),
8302         (gtk_tree_model_set_sort_func),
8303         (gtk_tree_model_sort_set_default_sort_func): make functions work
8304         as advertised by the documentation.
8305
8306 Mon Jan 27 22:31:56 2003  Kristian Rietveld  <kris@gtk.org>
8307
8308         * gtk/gtktreeview.c (gtk_tree_view_button_press): update focus_column
8309         before we decide if we edit. (fixes #100973, reported by Dave Cook).
8310
8311 Mon Jan 27 22:29:30 2003  Kristian Rietveld  <kris@gtk.org>
8312
8313         Bug report and test case from Paolo Maggi via IRC.
8314
8315         * gtk/gtkliststore.c (gtk_list_store_swap): update tail if needed,
8316         (gtk_list_store_move): update tail if needed.
8317
8318 Mon Jan 27 16:19:59 2003  Owen Taylor  <otaylor@redhat.com>
8319
8320         * gtk/gtksocket.c (gtk_socket_filter_func): event->any.window
8321         might be NULL. Use gtk_widget_get_display (widget) 
8322         (#102860, Thomas Leonard)
8323
8324 Mon Jan 27 15:58:31 2003  Owen Taylor  <otaylor@redhat.com>
8325
8326         * configure.in: Fix --without-modules/--disable-modules
8327         confusion that was causing --disable-modules not to work.
8328         (#102865, Akira Tagoh)
8329
8330         * configure.in: Fix problem with plain --with-xinput
8331         (#104266, Akira Tagoh)
8332
8333 2003-01-24  Sebastian Rittau  <srittau@jroger.in-berlin.de>
8334
8335         * docs/tutorial/gtk-tut.sgml: Fix a few typos, introduced by my last
8336         patch.
8337
8338 Fri Jan 24 17:06:41 GMT 2003  Tony Gale <gale@gtk.org>
8339
8340         * docs/tutorial/gtk-tut.sgml: Remove duplicate copy of tictactoe.h
8341
8342 Thu Jan 23 21:15:29 GMT 2003  Tony Gale <gale@gtk.org>
8343
8344         * docs/faq/gtk-faq.sgml: Learn to spell Library
8345
8346 Thu Jan 23 20:56:56 GMT 2003  Tony Gale <gale@gtk.org>
8347         * Sebastian Rittau  <srittau@jroger.in-berlin.de>:
8348
8349            docs/tutorial/gtk-tut.sgml: Adopted chapter 21.3 "Creating a
8350            Composite widget" to modern standards. (I.e. use gobject instead of
8351            glib, derive from GtkTable instead of GtkVBox.) Bugzilla #103869.
8352
8353         * docs/tutorial/gtk-tut.sgml, examples/tictactoe: Fixup tic-tac-toe
8354         code in Appendix C to reflect above changes.
8355
8356         * examples/rangewidgets/rangewidgets.c: From Roger Leigh
8357         auto resize on page size change
8358
8359 2003-01-23  Daniel Elstner  <daniel.elstner@gmx.net>
8360
8361         * gtk/gtktoolbar.c (gtk_toolbar_hide_all): Override hide_all
8362         in addition to show_all in order to keep them symmetric. (#102201)
8363
8364 Wed Jan 22 14:18:46 2003  Manish Singh  <yosh@gimp.org>
8365
8366         * gdk/x11/gdkevents-x11.c (translate_key_event): add a "return" at
8367         the end of the function, so there is a statement following the "out"
8368         label in all cases (fixes #101961)
8369
8370 2003-01-22  Christian Rose  <menthos@menthos.com>
8371
8372         * configure.in: Added "mn" to ALL_LINGUAS.
8373
8374 Wed Jan 15 17:02:18 2003  Owen Taylor  <otaylor@redhat.com>
8375  
8376         * gtk/gtktextlayout.c (gtk_text_layout_validate_yrange):
8377         Fix off-by-one error on the backward iteration loop,
8378         that was causing the wrong range to be redrawn.
8379         (at least part of #72734)
8380         
8381 2003-01-21  Matthias Clasen  <maclas@gmx.de>
8382
8383         * gtk/gtktextview.c (gtk_text_view_size_allocate): Adjust the
8384         vadjustment value after changing its bounds.  (fixes #101963 and 
8385         #73562)
8386
8387         * gtk/gtkcolorsel.c (hex_changed): Fix clamping to [0,1] to avoid 
8388         unnecessary roundtrip failures.  (#93500)
8389
8390 2003-01-19  Tor Lillqvist  <tml@iki.fi>
8391
8392         Merge from stable:
8393         
8394         Fix for #103614 and some other problems with GtkFileSelection on
8395         Windows:
8396                 
8397         * gtk/fnmatch.c (get_char): Need to use g_unichar_tolower(), not
8398         g_ascii_tolower(). Windows file names are case-insensitive for all
8399         Unicode letters.
8400
8401         * gtk/gtkfilesel.c: Instead of checking for G_OS_WIN32 or
8402         G_WITH_CYGWIN, check G_PLATFORM_WIN32. Move inclusion of gtkintl.h
8403         earlier, as it includes config.h unconditionally, and gtkprivate.h
8404         redefines GTK_LOCALEDIR.
8405         (struct _CompletionDirSent): Ifdef out the fields not used on
8406         Windows.
8407         (compare_utf8_filenames, compare_sys_filenames): Need different
8408         comparison implementation for UTF-8 file names and system locale
8409         file names on Win32. Cannot simply use g_ascii_strcasecmp(), but
8410         need to casefold all Unicode letters.
8411         (cmpl_completion_matches, open_dir, correct_parent): Ifdef out
8412         variables not used on Win32 to avoid warnings about unused
8413         variables.
8414         (open_ref_dir): Use g_path_skip_root() to skip past potential
8415         drive letter in front of the leading (back)slash.
8416         (open_new_dir): Ifdef out use of CompletionDirSent fields not
8417         there on Win32.
8418         (correct_parent): Bypass inode check also on Cygwin.
8419
8420         Fix bug noticed by Alex Shaduri: Tooltips and other
8421         GDK_WINDOW_TEMP windows were activated. This looked very odd, and
8422         was a regression from earlier versions.
8423         
8424         * gdk/win32/gdkwindow-win32.c (show_window_internal): Fine-tune
8425         behaviour. Don't ever activate GDK_WINDOW_TEMP windows.
8426         (gdk_window_move, gdk_window_resize): Add debug logging.
8427
8428         * gdk/win32/gdkevents-win32.c (gdk_event_translate): When we get a
8429         WM_SIZE message for a non-visible (withdrawn) window, don't clear
8430         the GDK_WINDOW_STATE_WITHDRAWN bit. The window is still withdrawn
8431         even if its size changes.
8432
8433 2003-01-16  Matthias Clasen  <maclas@gmx.de>
8434
8435         * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations): Typo fixes.
8436         (totally_invisible_line): Fix an incorrect optimization which
8437         caused invisible paragraphs to be occasionally misrendered.
8438
8439 Wed Jan 15 15:55:47 2003  Owen Taylor  <otaylor@redhat.com>
8440
8441         * gtk/gtksettings.c: Set the double click speed from
8442         XSETTINGS when creating a new GtkSettings object
8443         as well as when getting a notify. (#103601, reported
8444         by Louis Garcia)
8445
8446 Wed Jan 15 14:56:09 2003  Owen Taylor  <otaylor@redhat.com>
8447  
8448         * gtk/gtknotebook.c (gtk_notebook_size_allocate): 
8449         Show/hide the notebook event window as necessary,
8450         we weren't previously keeping the visibility updated
8451         properly.  (#103599)
8452  
8453 2003-01-15  Matthias Clasen  <maclas@gmx.de>
8454
8455         * examples/menu/itemfactory.c: 
8456         * docs/tutorial/gtk-tut.sgml: Add a <StockItem> to the itemfactory
8457         example.  (#103211)
8458
8459 2002-12-29  Murray Cumming  <murrayc@usa.net>
8460
8461         Fixes #102168.
8462
8463         * gtk/gtkliststore.c, gtktreednd.c, gtktreestore.c:
8464         Actually implement the GtkTreeDragSource::row_draggable virtual 
8465         function in GtkListStore and GtkTreeStore instead of just checking 
8466         whether it's implemented at all. This means that DnD isn't broken by
8467         gtkmm's virtual function wrappers. The alternative would be to
8468         hard-code the TRUE return value into gtkmm's wrappers, but that's 
8469         part of GTK+'s implementation, not it's API.
8470
8471 Tue Jan 14 23:42:29 2003  Kristian Rietveld  <kris@gtk.org>
8472
8473         * gtk/gtktreeview.c: fix compiler warning.
8474
8475 Tue Jan 14 23:29:00 2003  Kristian Rietveld  <kris@gtk.org>
8476
8477         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
8478         make sure exposed pixbufs are clipped to the exposed area before
8479         drawing, which is a slight speedup. (#102379, patch from Soeren
8480         Sandmann).
8481
8482 Tue Jan 14 23:26:41 2003  Kristian Rietveld  <kris@gtk.org>
8483
8484         * gtk/gtktreeview.c (validate_visible_area): silly typo fix,
8485         only free scroll_to_path when the complete tree has been validated.
8486         This makes sure that we scrolled to the correct path.
8487
8488 Tue Jan 14 23:25:32 2003  Kristian Rietveld  <kris@gtk.org>
8489
8490         * gtk/gtktreeview.c (gtk_tree_view_style_set): update the
8491         background of widget->window and bin->window. (Fixes #96650, reported
8492         by Dave Camp).
8493
8494 Tue Jan 14 23:24:02 2003  Kristian Rietveld  <kris@gtk.org>
8495
8496         * gtk/gtktreeview.c (gtk_tree_view_clamp_node_visible): process
8497         updates before scrolling, avoiding a "selection streak". (Fixes
8498         #101235, patch from Soeren Sandmann).
8499
8500 Tue Jan 14 23:22:13 2003  Kristian Rietveld  <kris@gtk.org>
8501
8502         * gtk/gtktreeview.c (validate_visible_area): actually put values
8503         in the requisition using gtk_widget_size_request. (Fixes #100172,
8504         reported by Kjartan Maraas).
8505
8506 Tue Jan 14 23:19:45 2003  Kristian Rietveld  <kris@gtk.org>
8507
8508         * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): cancel the
8509         arrow animation timeout before we actually reorder the rbtree. If
8510         we don't do this we can get stuck arrows,
8511         (cancel_arrow_animation): new function. (Fixes #93629, part 2,
8512         reported and testcase provided by Hans Petter Jansson).
8513
8514 Tue Jan 14 23:18:21 2003  Kristian Rietveld  <kris@gtk.org>
8515
8516         * gtk/gtktreeselection.c (gtk_tree_selection_real_modify_range):
8517         anchor_path should be start_path, not end_path. (Fixes #102618,
8518         patch from Carlos Garnacho Parro).
8519
8520 Tue Jan 14 23:16:15 2003  Kristian Rietveld  <kris@gtk.org>
8521
8522         * gtk/gtkliststore.c (gtk_list_store_move): also update the tail,
8523         only correct new_pos if we don't move to the head/tail.
8524
8525 Tue Jan 14 23:11:55 2003  Kristian Rietveld  <kris@gtk.org>
8526
8527         * gtk/gtktreestore.c (gtk_tree_store_swap): take the path from
8528         the parent_iter if depth >= 1, so we send the reordered signal to
8529         the correct level, remove debugging printfs which I forgot the remove
8530         earlier (2.2.0 shipped with this, oops). (Fixes #103198, Reported and
8531         testcase provided by Matthew Tuck).
8532
8533 Tue Jan 14 20:58:44 2003  Kristian Rietveld  <kris@gtk.org>
8534
8535         * gtk/gtktreeview.c (invalite_last_column): split out actual column
8536         invalidation into invalidate_column(),
8537         (gtk_tree_view_size_allocate_columns): invalidate column if the
8538         new width is larger than the old width.
8539         (fixes #102890, reported by Alex Duggan).
8540
8541 2003-01-14  Matthias Clasen  <maclas@gmx.de>
8542
8543         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Skip
8544         invisible chars for GTK_MOVEMENT_LOGICAL_POSITIONS and
8545         GTK_MOVEMENT_WORDS.
8546
8547         * gtk/gtktextiter.c,
8548         gtk/gtktextiter.h: Add some variant movement functions which
8549         skip invisible chars, and do some cleanups.
8550
8551 2003-01-12  Tor Lillqvist  <tml@iki.fi>
8552
8553         Merge from stable:
8554                 
8555         * gtk/gtkmain.c: Move inclusion of config.h and gtkintl.h earlier,
8556         as gtkprivate.h redefines GTK_LOCALEDIR on Win32, for run-time
8557         lookup.
8558
8559         * gdk/Makefile.am (libgdk_win32_2_0_la_DEPENDENCIES): Depend on
8560         gdk.def.
8561
8562         * gdk/gdk.def
8563         * gtk/gtk.def: Add some missing entries. Thanks to Kenichi SUTO.
8564
8565         * gtk-zip.sh.in (DEVZIP): Add bin/{gtk-query-immodules-2.0,
8566         gtk-demo}.exe and share/gtk-2.0.
8567
8568         * gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
8569         Implement by setting or clearing the WS_EX_TOOLWINDOW extended
8570         window style.
8571         (gdk_window_set_type_hint): Add all cases to the switch (not all
8572         do anything, though). Handle GDK_WINDOW_TYPE_HINT_TOOLBAR by
8573         calling gdk_window_set_skip_taskbar_hint(). This means that GTK
8574         won't know that the skip_taskbar hint is on for the window, is
8575         this bad?
8576
8577 Wed Jan  8 18:43:03 2003  Manish Singh  <yosh@gimp.org>
8578
8579         * gdk/x11/gdkdisplay-x11.c: #include <stdlib.h> for putenv,
8580         <string.h> for strlen.
8581
8582         * gdk/x11/gdkscreen-x11.c: #include <stdlib.h> for getenv,
8583         <string.h> for strrchr.
8584
8585         * tests/testgtk.c (create_saved_position): "x" and "y" properties
8586         for widgets no longer exist, use gtk_window_move instead.
8587
8588         * test/testtextbuffer.c (check_get_set_text): cast strlen to
8589         int for g_error.
8590
8591 2003-01-08  Matthias Clasen  <maclas@gmx.de>
8592
8593         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix display of
8594         the selection in the presence of invisible segments.
8595
8596 2003-01-07  Matthias Clasen  <maclas@gmx.de>
8597
8598         * gtk/gtktextview.c (gtk_text_view_class_init): Bind C-/ and C-\
8599         to "select all" and "unselect all".  (#102065)
8600
8601         * gtk/gtktextview.h (struct _GtkTextView): Add a comment that
8602         the just_selected_element is unused.
8603
8604         * gtk/gtktextview.c (extend_selection): New helper function to
8605         find the range that should be added to the selection. 
8606         (selection_motion_event_handler): 
8607         (gtk_text_view_start_selection_drag): 
8608         (gtk_text_view_end_selection_drag): 
8609         (selection_motion_event_handler): 
8610         (selection_scan_timeout): Support select-by-words/lines.
8611         (gtk_text_view_button_press_event): Start a selection drag on
8612         double/triple clicks.  (#78499)
8613
8614 2003-01-06  Matthias Clasen  <maclas@gmx.de>
8615
8616         Implement a utility function proposed in #102534:
8617         
8618         * gtk/gtktextbtree.h: 
8619         * gtk/gtktextbtree.c (_gtk_text_btree_select_range): New function.
8620         (_gtk_text_btree_place_cursor): Now a simple wrapper around
8621         _gtk_text_btree_select_range().   
8622
8623         * gtk/gtktextbuffer.h: 
8624         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): New function.
8625         (gtk_text_buffer_place_cursor): Now a simple wrapper around
8626         gtk_text_buffer_select_range(). 
8627
8628 2003-01-05  Havoc Pennington  <hp@pobox.com>
8629
8630         * configure.in: fix a stray bracket that was breaking the build
8631
8632 2003-01-05  Tor Lillqvist  <tml@iki.fi>
8633
8634         * gtk-zip.sh.in: Use correct DLL and import library names, with
8635         GTK_API_VERSION in name, not GTK_MAJOR_VERSION.GTK_MINOR_VERSION.
8636         (DEVZIP): Add gdk-pixbuf-query-loaders.exe.
8637
8638         * configure.in: Improve check for dimm.h.
8639
8640         * configure.in: Set SOEXT to 'so' on Unix, 'dll' on Win32. Used in
8641         gdk-pixbuf/Makefile.am.
8642
8643         * gdk-pixbuf/makefile.mingw.in
8644         * gdk-pixbuf/pixops/makefile.mingw.in
8645         * gdk/makefile.mingw.in
8646         * gdk/win32/makefile.mingw.in
8647         * gtk/makefile.mingw.in: Remove. Not maintained anyway.
8648
8649         * gdk-pixbuf/Makefile.am
8650         * gdk-pixbuf/pixops/Makefile.am
8651         * gdk/Makefile.am
8652         * gdk/win32/Makefile.am
8653         * gtk/Makefile.am
8654         * configure.in: Remove makefile.mingw{,.in} from here, too.
8655         
8656         * README.win32: Updates. Don't mention the now removed
8657         makefile.mingw files.
8658
8659         * gdk/gdk.def
8660         * gtk/gtk.def: Add a couple of missing entries.
8661
8662         * gdk/gdkkeynames.c: Include <string.h> for strcmp() and memcpy().
8663
8664         * gdk/win32/gdkevents-win32.c: Move dimm.h header clash workaround
8665         earlier.
8666
8667         * gdk/win32/rc/Makefile.am: Add hack to help
8668         build/win32/lt-compile-resource decide which kind of libtool
8669         object file to produce.
8670
8671 2003-01-05  Matthias Clasen  <maclas@gmx.de>
8672
8673         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Make
8674         C-Down step through the sequence of paragraph ends (old behaviour
8675         included paragraph starts).  (#80340, patch by Narayana Pattipati)
8676
8677         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_first_toggle):
8678         Check for a tag toggle at the start iterator before calling
8679         gtk_text_iter_forward_to_tag_toggle().  (#102090, patch by Daniel 
8680         Elstner)
8681
8682 2003-01-04  Matthias Clasen  <maclas@gmx.de>
8683
8684         * gtk/gtkfilesel.h (struct _GtkFileSelection): Add /*< public >*/
8685         and /*< private >*/ as appropriate.  (#97211)
8686
8687 2003-01-04  Tor Lillqvist  <tml@iki.fi>
8688
8689         * Makefile.am (EXTRA_DIST): Don't distribute gtk-zip.sh, but do
8690         distribute gtk-zip.sh.in.
8691
8692         * gtk-zip.sh.in (DEVZIP): Add gdk-pixbuf-csource.exe and .1.
8693
8694 2003-01-03  Havoc Pennington  <hp@pobox.com>
8695
8696         * docs/Makefile.am (EXTRA_DIST): put it in EXTRA_DIST
8697
8698         * docs/text_widget_internals.txt: add a file documenting some of
8699         the text widget internals
8700
8701 2003-01-02  Matthias Clasen  <maclas@gmx.de>
8702
8703         * gtk/gtkwindow.c (gtk_window_get_focus): Document that it may
8704         return NULL.  (#102069)
8705
8706 2003-01-01  Matthias Clasen  <maclas@gmx.de>
8707
8708         * gtk/fnmatch.c (FNMATCH_TEST_CASES): #undef, since having
8709         a main() in the library is obviously bad. 
8710
8711 2002-12-27  Matthias Clasen  <maclas@gmx.de>
8712
8713         * gtk/gtktextview.c (gtk_text_view_drag_data_received): Place the
8714         cursor at drop point.  (#72384)
8715         (gtk_text_view_size_allocate): Update the horizontal adjustment
8716         value.  (#75694)
8717
8718 2002-12-25  Matthias Clasen  <maclas@gmx.de>
8719
8720         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix highlighting of
8721         selection wrt. to empty lines.  (#90435, #90582, #91619)
8722
8723         * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler):
8724         Keep the cursor on screen.  (#96929)
8725
8726 2002-12-24  Matthias Clasen  <maclas@gmx.de>
8727
8728         * gtk/gtktextbuffer.c (paste_from_buffer): 
8729         (clipboard_text_received): Let the user action span the insertion
8730         and the deletion of the old selection.  (#82844)
8731
8732 2002-12-23  Matthias Clasen  <maclas@gmx.de>
8733
8734         * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_starts):
8735         Don't call gtk_text_iter_backward_sentence_start() if
8736         count is zero.  (#99115)
8737
8738         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Call
8739         move_cursor() even if the cursor hasn't moved, since it has the
8740         side effect of canceling the selection.  (#81395, #98537, #98333)
8741
8742 2002-12-22  Matthias Clasen  <maclas@gmx.de>
8743
8744         * gtk/gtktextlayout.c (add_preedit_attrs): Don't add attributes
8745         with empty ranges.  (fixes #101564 and #80637)
8746
8747 2002-12-21  Tor Lillqvist  <tml@iki.fi>
8748
8749         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Move the code that
8750         sets the window style and extended window style, and adjusts the
8751         width and height to take the window decorations into account
8752         earlier. The adjusted width and height used to be ignored. Remove
8753         the local x, y, width and height variables, no need to further
8754         confuse the code by having local copies. (Partial fix, I hope, for
8755         #101588)
8756
8757         (gdk_window_move): When moving top-level windows, take title bar
8758         and border width into account, offsetting the coordinates before
8759         calling SetWindowPos().
8760
8761         (gdk_window_set_decorations, gdk_window_set_functions):
8762         Reimplement, taking into account the peculiar semantics of
8763         GDK_DECOR_ALL and GDK_FUNC_ALL. (#79036)
8764
8765         (gdk_window_get_decorations): Implement. (#98981)
8766         
8767         (gdk_window_set_type_hint): When setting
8768         GDK_WINDOW_TYPE_HINT_MENU, call gdk_window_set_decorations().
8769         (#79036)
8770
8771         * gdk/gdk.def: Add gdk_window_get_decorations. (#98981)
8772
8773 2002-12-21  Matthias Clasen  <maclas@gmx.de>
8774
8775         * gtk/gtktextview.c (gtk_text_view_set_background): New static
8776         function to set the background of all windows.
8777         (gtk_text_view_style_set): Use gtk_text_view_set_background().
8778         (gtk_text_view_state_changed): New function; change background
8779         according to state.  (#88126)
8780
8781 2002-12-21  Havoc Pennington  <hp@pobox.com>
8782
8783         * gtk/gtktextview.c (gtk_text_view_move_visually): fix the documentation
8784