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