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