]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
Fix #132500.
[~andy/gtk] / ChangeLog.pre-2-4
1 2004-04-07  Federico Mena Quintero  <federico@ximian.com>
2
3         Fix #132500.
4
5         * gtk/gtkfilesystem.c (gtk_file_system_parse): Ensure that the
6         passed-in 'str' is not NULL.
7
8         * gtk/gtkfilesystemunix.c (expand_tilde): New helper function;
9         expands "~/" or "~foo/" at the beginning of a filename.
10         (gtk_file_system_unix_parse): Use expand_tilde() before doing
11         anything else.
12
13         * gtk/gtkfilechooserentry.c
14         (gtk_file_chooser_entry_maybe_update_directory): Take in a
15         force_reload argument.
16         (gtk_file_chooser_entry_changed): If gtk_file_system_parse()
17         returns an error, set the file_part_pos to -1.
18         (load_directory_callback): Only populate the model if the
19         file_part_pos is not -1.
20
21 2004-04-06  Pablo Saratxaga  <pablo@mandrakesoft.com>
22
23         * configure.in: Added Icelandic (is) to ALL_LINGUAS
24
25 2004-04-05  Federico Mena Quintero  <federico@ximian.com>
26
27         * gtk/gtkfilechooserdefault.c (location_popup_handler): Use a
28         title for SAVE and CREATE_FOLDER modes.  Fixes #137272.
29
30         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_make_path): Look
31         for G_DIR_SEPARATOR in the display_name, and err out if it is
32         present; use the same error message as Nautilus.  Fixes #136467.
33
34         * gtk/gtkfilechooserdefault.c (file_pane_create): Make the
35         new-folder button say "Create Fo_lder" rather than "Create
36         _Folder", so that the mnemonic doesn't conflict with the "Save in
37         _folder" label.  Fixes #136975.
38
39 2004-04-05  Federico Mena Quintero  <federico@ximian.com>
40
41         * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Ref/sink the
42         buttons.  Also, free them correctly upon failure.  Based on a
43         patch by Morten Welinder, fixes #137956.
44
45 2004-04-05  Anders Carlsson  <andersca@gnome.org>
46
47         * gdk/gdk.c (gdk_arg_context_parse): Handle '--' correctly.
48
49 Fri Apr  2 17:57:33 2004  Jonathan Blandford  <jrb@redhat.com>
50
51         * gtk/gtktreeview.c (gtk_tree_view_row_inserted): set the height
52         correctly for fixed height when inserting a node, #138082
53
54 2004-04-01  Federico Mena Quintero  <federico@ximian.com>
55
56         Fix #136077.
57
58         * gtk/gtkpathbar.h (struct _GtkPathBarClass): Add a
59         "child_is_hidden" boolean argument to the "path-clicked" signal.
60
61         * gtk/gtkpathbar.c (struct _ButtonData): Added a file_is_hidden
62         field.
63         (make_directory_button): Take a file_is_hidden argument; put it in
64         the ButtonData.
65         (_gtk_path_bar_set_path): See whether each path component path is
66         a hidden file.
67         (gtk_path_bar_class_init): Add the file_is_hidden argument to the
68         "path-clicked" signal.
69         (button_clicked_cb): See if the downwards button represents a
70         hidden file for the file_is_hidden argument in the signal
71         emission.
72
73         * gtk/gtkmarshalers.list: Added a signal type VOID:POINTER,BOOLEAN.
74
75         * gtk/gtkfilechooserdefault.c
76         (gtk_file_chooser_default_select_path): If we fail to switch
77         folders, don't try to select the path in the file system model.
78         Also, return the result from _gtk_file_system_model_path_do().
79         (gtk_file_chooser_default_select_path): Turn on show_hidden in the
80         file system model if we are asked to select a hidden file.
81         (path_bar_clicked): Show hidden files based on whether the
82         immediate downwards folder in the path bar is a hidden file
83         itself.
84         (struct _GtkFileChooserDefault): Added fields
85         browse_files_popup_menu and browse_files_popup_menu_hidden_files_item.
86         (create_file_list): Set an object data key of
87         "GtkFileChooserDefault" on the tree view so that we can find the
88         impl from the popup menu callbacks.  Also, hook up to the
89         "button-press-event" and "popup-menu" signals in the file list to
90         bring up a popup menu.
91         (list_popup_menu_cb): New callback.
92         (list_button_press_event_cb): New callback.
93
94         Fix #138763:
95
96         * gtk/gtkfilesystemmodel.c
97         (_gtk_file_system_model_new): Oops, connect_object to
98         "finished-loading".
99
100 2004-03-31  Tor Lillqvist  <tml@iki.fi>
101
102         * configure.in: Move AC_CANONICAL_HOST earlier, before the check
103         for native Win32. (#136559, J. Ali Harlow)
104
105         * gdk/win32/gdkdrawable-win32.c (draw_arc): Use X11 semantics for
106         angles. Thanks to Tim Newsham.
107
108 2004-03-29  Federico Mena Quintero  <federico@ximian.com>
109
110         Fix #137520.
111
112         * gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots
113         for an ::is_finished_loading() method and a ::finished_loading()
114         signal at the end of the struct.
115
116         * gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the
117         "finished-loading" signal.
118         (gtk_file_folder_is_finished_loading): New function.
119
120         * gtk/gtkfilesystemunix.c
121         (gtk_file_folder_unix_is_finished_loading): Implement.
122
123         * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New
124         slot for a "finished-loading" signal.
125         (gtk_file_system_model_class_init): Create the "finished-loading"
126         signal.
127         (struct _GtkFileSystemModel): New field
128         idle_finished_loading_source.  We emit the "finished-loading"
129         signal in an idle if the root folder was done loading right in
130         _gtk_file_system_model_new(), so that the caller has a chance to
131         connect to the signal.
132         (_gtk_file_system_model_new): Connect to the normal signals of the
133         folder even if the initial _list_children() fails.  Also, see if
134         the folder is finished loading; connect to the "finished-loading"
135         signal otherwise.
136         (gtk_file_system_model_finalize): Remove the idle handler.
137
138         * gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor
139         and connect to the model's "finished-loading" signal.
140         (get_toplevel): New helper function.
141         (error_message): Use get_toplevel().
142         (trap_activate_cb): Likewise.
143         (location_popup_handler): Likewise.
144         (set_busy_cursor): New function.
145         (browse_files_model_finished_loading_cb): New callback.
146
147 2004-03-25  Federico Mena Quintero  <federico@ximian.com>
148
149         * gtk/gtkfilechooserdefault.c (check_preview_change): Just use the
150         file under the cursor; we don't need the logic from
151         GtkFileSelection after all.  Fixes #132255.
152
153 2004-03-25  Federico Mena Quintero  <federico@ximian.com>
154
155         * gtk/gtkfilechooserdefault.c (location_entry_create): Fill the
156         location entry with the display name of the file under the cursor
157         for Open mode, or the typed filename in Save mode.
158
159 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
160
161         * gtk/gtkfilesystemwin32.c
162         (filename_is_root): Bare drive designators (eg., "c:") are
163         no longer considered as root filenames.  Fixed #137942
164
165 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
166
167         * gtk/gtkfilesystemwin32.c
168         (gtk_file_system_win32_create_folder): Invert test for error in
169         mkdir.  Fixes #137945
170
171 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
172
173         Fixed #138004 using Federico's code from #132327.
174
175         * gtk/gtkfilesystemwin32.c (struct _GtkFileSystemWin32): Add a
176         folder_hash field to keep a list of live folder objects.
177         (gtk_file_system_win32_init): Create the folder_hash.
178         (gtk_file_system_win32_finalize): Destroy the folder_hash.
179         (gtk_file_system_win32_get_folder): Ref and return an existing
180         folder if we have it around, otherwise return a new folder object.
181         (struct _GtkFileFolderWin32): Add a field for the parent file system.
182         (gtk_file_folder_win32_finalize): Remove the folder from the file
183         system's hash table.
184         (gtk_file_system_win32_create_folder):  Emit "files-added" on the
185         newly-created folder's parent.  Fixes #138004.
186
187 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
188
189         * gtk/gtkfilesystemwin32.c
190         (gtk_file_system_win32_get_folder): Test that path is actually
191         a directory and throw error if not. Fixed bug #137950
192
193 2004-03-22  J. Ali Harlow  <ali@juiblex.co.uk>
194
195         * gtk/gtkfilesystemwin32.c
196         (gtk_file_system_win32_volume_get_display_name): Ignore empty
197         volume labels; assume that GetVolumeInformation would fail if
198         GetVolumeInformationW does; catches a small memory leak;
199         pass the buffer size to GetVolumeInformationW in wide
200         characters instead of bytes. Fixes bug #137543
201         (list_volumes): Cope with the theoretical possibility of
202         more than 26 logical drives. Fixes bug #137940
203         (bookmarks_serialize): Now actually removes bookmarks.
204         Fixes bug #137943
205
206 2004-03-22  Guntupalli Karunakar  <karunakar@freedomink.org>
207
208         * configure.in: Added "pa" (Punjabi) to ALL_LINGUAS.
209
210 2004-03-21  Tor Lillqvist  <tml@iki.fi>
211
212         * gtk/gtkfilesystemwin32.c
213         (gtk_file_system_win32_volume_get_base_path): Include the
214         backslash. Otherwise gtk_file_system_win32_path_to_uri() returns
215         NULL for a volume base path, as g_filename_to_uri() requires an
216         absolute path, and just a drive letter and colon isn't. (#137543)
217
218 2004-03-20  Hans Breuer  <hans@breuer.org>
219
220         * gtk/gtkfilesystemwin32.c : applied the undisputable and
221         required [due to recent gtkfilesystem internal api semantic 
222         changes] part of patches to fix bug #137543 (Tor Lillqvist,
223         J. Ali Harlow)
224
225         * gdk/gdkevents-win32.c (handle_configure_event) :
226              (gdk_event_translate), WM_WINDOWPOSCHANGED : initialize
227         GdkWindowObject::x, y with screen coords to make 
228         gdk_window_get_position () return the right thing and thus fix
229         drag and drop positioning (e.g. Gimp tabs, fixes bug #137192)
230
231 2004-03-19  Federico Mena Quintero  <federico@ximian.com>
232
233         * Revert the patch to #137520, as 2.4.1 is for conservative bug
234         fixes only.  The patch is attached to the bug report, for
235         reference.
236
237 2004-03-19  Morten Welinder  <terra@gnome.org>
238
239         * gtk/gtkfilechooserdefault.c
240         (gtk_file_chooser_default_set_current_folder): Test existance of
241         the path after checking for locality, if needed.
242
243 2004-03-19  Federico Mena Quintero  <federico@ximian.com>
244
245         Fix #137520.
246
247         * gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots
248         for an ::is_finished_loading() method and a ::finished_loading()
249         signal at the end of the struct.
250
251         * gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the
252         "finished-loading" signal.
253         (gtk_file_folder_is_finished_loading): New function.
254
255         * gtk/gtkfilesystemunix.c
256         (gtk_file_folder_unix_is_finished_loading): Implement.
257
258         * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New
259         slot for a "finished-loading" signal.
260         (gtk_file_system_model_class_init): Create the "finished-loading"
261         signal.
262         (struct _GtkFileSystemModel): New field
263         idle_finished_loading_source.  We emit the "finished-loading"
264         signal in an idle if the root folder was done loading right in
265         _gtk_file_system_model_new(), so that the caller has a chance to
266         connect to the signal.
267         (_gtk_file_system_model_new): Connect to the normal signals of the
268         folder even if the initial _list_children() fails.  Also, see if
269         the folder is finished loading; connect to the "finished-loading"
270         signal otherwise.
271         (gtk_file_system_model_finalize): Remove the idle handler.
272
273         * gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor
274         and connect to the model's "finished-loading" signal.
275         (get_toplevel): New helper function.
276         (error_message): Use get_toplevel().
277         (trap_activate_cb): Likewise.
278         (location_popup_handler): Likewise.
279         (set_busy_cursor): New function.
280         (browse_files_model_finished_loading_cb): New callback.
281
282 Thu Mar 18 12:10:45 2004  Owen Taylor  <otaylor@redhat.com>
283
284         * gtk/gtktreeitem.c (gtk_tree_item_forall): Include 
285         eventbox for expander. (#137564, reported by
286         Jacques Garrigue)
287
288 2004-03-18  Guntupalli Karunakar  <karunakar@freedomink.org>
289
290         * mr.po: Added "mr" for Marathi to ALL_LINGUAS.
291
292 2004-03-17  Morten Welinder  <terra@gnome.org>
293
294         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Free
295         volumes not actually put into the shortcut list.
296
297         * tests/prop-editor.c (object_changed): Plug leak.
298
299         * tests/testfilechooser.c (main): Plug some leaks and expose
300         others.
301
302         * tests/prop-editor.c (create_prop_editor): Don't leak the tooltip
303         object.  Fixed #136652.
304
305         * gtk/gtkfilechooserdefault.c (check_icon_theme): Do nothing if we
306         have no screen.  Fixes #137260.
307         (shortcuts_add_bookmark_from_path): Simplify using check_is_folder
308         thereby fixing leak.  Fixes #137259.
309
310         * gtk/gtkpathbar.c (gtk_path_bar_forall): Make this work when the
311         slider buttons have been destroyed.
312         (gtk_path_bar_remove): Make this work for slider buttons too.
313         Fixes #137257
314
315 2004-03-15  Morten Welinder  <terra@gnome.org>
316
317         * gtk/gtkfilechooserdefault.c (shortcuts_add_bookmark_from_path):
318         Sanitize and plug leak.
319         (check_icon_theme): Only do something if the widget has a screen.
320
321 Wed Mar 17 01:20:28 2004  Matthias Clasen  <maclas@gmx.de>
322
323         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
324         Move the repositioning logic from _gtk_entry_completion() popup
325         over here. Fixes #137355, reported by Niklas Knutsson.
326
327 Tue Mar 16 13:29:58 2004  Owen Taylor  <otaylor@redhat.com>
328
329         * === Released 2.4.0 ===
330
331         * configure.in: Version 2.4.0, interface age 0; 
332         require glib-2.4.0, pango-1.4.0.
333
334         * configure.in: Change gtk_binary_version to 2.4.0;
335         there are some compatibility issues with older theme engines.
336         
337         * NEWS: Updates
338
339         * README.in: Updates
340
341 Tue Mar 16 13:54:07 2004  Jonathan Blandford  <jrb@redhat.com>
342
343         * gtk/gtkentry.c (gtk_entry_completion_key_press): Block the
344         ::changed handler during the ::match-selected when done by
345         keyboard.
346
347 Tue Mar 16 00:56:11 2004  Matthias Clasen  <maclas@gmx.de>
348
349         * gtk/gtkentrycompletion.c (gtk_entry_completion_list_button_press): 
350         Block the ::changed handler during the emission of ::match-selected.
351         Partial fix for #137226.
352
353         * gtk/gtkfilechooserentry.c: Remove the no longer needed 
354         no_pop_down flag.
355
356 Tue Mar 16 00:20:51 2004  Matthias Clasen  <maclas@gmx.de>
357
358         * gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new_with_backend):
359         Fix a typo in the docs.
360
361 2004-03-15  Tor Lillqvist  <tml@iki.fi>
362
363         * README.win32: Updates.
364
365 2004-03-15  Federico Mena Quintero  <federico@ximian.com>
366
367         * gtk/gtkfilechooserdefault.c (update_appearance): Only hide the
368         "create folder" button in OPEN mode; all the others should show it
369         it.
370         (get_paths_foreach): Handle the editable row.
371
372         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_create_folder):
373         Force a re-get of the folder so that the new directory gets added
374         to its hash table of file info.
375
376 2004-03-15  Federico Mena Quintero  <federico@ximian.com>
377
378         * gtk/gtkfilechooserdefault.c (update_from_entry): In the Save
379         modes, set the Name entry of the file chooser if we get a
380         nonexistent filename from the file entry.  Fixes #135911.
381         (gtk_file_chooser_default_set_current_name): Oops, this should
382         also work if we are in CREATE_FOLDER mode.
383
384         * gtk/gtkfilesystem.c (gtk_file_path_real_copy): Use
385         gtk_file_path_copy().
386
387         * gtk/gtkfilechooserentry.c (check_completion_callback): Free the
388         path that we got from the model.
389         (completion_match_func): Use DISPLAY_NAME_COLUMN rather than a
390         hard-coded constant.
391
392 Mon Mar 15 13:50:14 2004  Owen Taylor  <otaylor@redhat.com>
393
394         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
395         Don't leak the temporary font description. (Nils O. SelÃ¥sdal)
396
397 Mon Mar 15 12:51:17 2004  Jonathan Blandford  <jrb@gnome.org>
398
399         * gtk/gtkfilechooserdefault.c (location_popup_handler): Only show
400         the title string in OPEN/SELECT_FOLDER mode as it's open-specific.
401         Put a blank title for SAVE/CREATE_FOLDER; we are in string freeze,
402         so we'll fix it for 2.4.1 as #137272.
403
404         * gtk/gtkpathbar.c (gtk_path_bar_scroll_down): calculate
405         space_available correctly for RTL mode.  w/o this, you can't
406         scroll down again.  Fixes #137021.
407
408 2004-03-15  Federico Mena Quintero  <federico@ximian.com>
409
410         * gtk/gtkpathbar.c (gtk_path_bar_scroll_up): Queue a resize.
411         (gtk_path_bar_scroll_down): Likewise.
412
413 Mon Mar 15 11:40:43 2004  Owen Taylor  <otaylor@redhat.com>
414
415         * gtk/gtkfilechooserentry.c: Store the position of the 
416         file part and use that in check_completion_callback()
417         and match_selected_callback() to figure out where
418         to operate on the text, rather than recomputing the
419         information.
420
421 Mon Mar 15 10:35:19 2004  Jonathan Blandford  <jrb@gnome.org>
422
423         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): set
424         changing_folders to be true so we don't trigger a callback when we
425         remove the selection
426         (shortcuts_add_bookmarks): ditto
427
428 Mon Mar 15 10:47:18 2004  Owen Taylor  <otaylor@redhat.com>
429
430         * gtk/gtkfilechooserentry.c: s/seperator/separator/.
431
432 Mon Mar 15 09:54:36 2004  Owen Taylor  <otaylor@redhat.com>
433
434         * gtk/gtklabel.c (gtk_label_focus): Check for 
435         Control-Tab or Control-Shift-Tab, not any Control-key
436         as a current event ... handles the case where a dialog
437         is triggered from a control accelerator better.
438
439 Mon Mar 15 08:48:48 2004  Jonathan Blandford  <jrb@gnome.org>
440
441         * gtk/gtkfilechooserentry.c (match_selected_callback): implement
442         correctly.
443         (completion_match_func): Allow surpressing popdowns.
444         (maybe_append_seperator_to_path): New function to add a separator
445         item to a display_name.  Bad hack.
446         (check_completion_callback): Implement select-ahead as an idle.
447         (add_completion_idle): new function to handle select-ahead
448         (gtk_file_chooser_entry_do_insert_text): starf the select-ahead
449         idle.
450         (gtk_file_chooser_entry_focus): Override tab for completion.
451         (gtk_file_chooser_entry_activate): commit select_ahead when
452         activated.
453
454         * gtk/gtkfilechooserdefault.c (location_popup_handler): grab the
455         appropriate widget for the mode.
456
457 2004-03-15  Tor Lillqvist  <tml@iki.fi>
458
459         * gdk/win32/gdkgc-win32.c (gdk_gc_copy): Don't just copy the whole
460         GdkGCWin32 with a single assignment, that overwrites GObject's
461         private data (for instance ref_count). (#137012, John Ehresman)
462
463 2004-03-15  Mark McLoughlin  <mark@skynet.ie>
464
465         * gtk/gtkfilechooserdefault.c: remove the unused "lowest_folder"
466         GtkFileChooserDefault member. Leftover from my original patch
467         for bug #136987.
468
469 Mon Mar 15 01:50:28 2004  Jonathan Blandford  <jrb@gnome.org>
470
471         * gtkfilechooserentry.c: Rewritten to use the GtkEntryCompletion
472         API more correctly.  Now pops down the dropdown well.
473
474         * gtkfilesystem.c (gtk_file_path_get_type): New boxed type for the
475         FilePath.
476
477         * test/testfilechooser.c: disable preview widget temporarily.
478         It's not representative of a good preview widget.
479
480 2004-03-15  Federico Mena Quintero  <federico@ximian.com>
481
482         * gtk/gtkfilechooserdefault.c (shortcuts_find_current_folder):
483         Renamed from shortcuts_unselect_all(); now selects the row that
484         corresponds to the current folder, if any.  Fixes #135916.
485
486         * gtk/gtkpathbar.h: Added prototypes for _gtk_path_bar_up() and
487         _gtk_path_bar_down().
488
489 2004-03-15  Federico Mena Quintero  <federico@ximian.com>
490
491         * gtk/gtkfilechooserdefault.c: Surround the
492         drag-outside-to-remove-bookmarks code with "#if 0" blocks; it's
493         too unstable right now.
494
495 Sun Mar 14 23:36:15 2004  Owen Taylor  <otaylor@redhat.com>
496
497         * gtk/gtkfilechooserdefault.c: Implement local_only by
498         filtering the shortcuts and bookmarks list by 
499         gtk_file_system_path_to_filename (file_system, path) != NULL.
500         (#132894)
501
502         * gtk/gtkfilesystem.c (gtk_file_system_path_is_local): Add
503         a convenience function, may by interesting to push to the 
504         file system vtable later for performance.
505
506 2004-03-14  Federico Mena Quintero  <federico@ximian.com>
507
508         * gtk/gtkfilesystem.c (gtk_file_folder_get_info): Allow the path
509         to be NULL, so that people can ask for information about a
510         parent-less file system root (e.g. get_info (get_folder ("/"), NULL)).
511
512         * gtk/gtkfilesystemunix.c (gtk_file_folder_unix_get_info): Allow
513         the condition describe above.
514
515         * gtk/gtkfilechooserdefault.c (get_file_info): Allow getting
516         information of root paths.
517
518         * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Handle root paths correctly.
519
520 Sun Mar 14 22:32:36 2004  Owen Taylor  <otaylor@redhat.com>
521
522         * gtk/gtktreeview.c (gtk_tree_view_set_search_equal_func): Mention
523         GtkTreeViewSearchEqualFunc return value oddity here as well.
524
525         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): On failure
526         to get a string to compare to, return TRUE (no match), not 
527         FALSE (match). Handle %NULL string values gracefully.
528         Remove unused variable. (#135962, Mark McLoughlin)
529
530 2004-03-14  Morten Welinder  <terra@gnome.org>
531
532         * gtk/gtkfilesystemunix.c: Kill some debug g_prints.
533
534 Sun Mar 14 21:03:15 2004  Owen Taylor  <otaylor@redhat.com>
535
536         * gtk/gtkpathbar.[ch]: Add _gtk_path_bar_up()/
537         _gtk_path_bar_down().
538
539         * gtk/gtkfilechooserdefault.c: Use _gtk_path_bar_up()/
540         _gtk_path_bar_down() as bindings for Alt-Up
541         and new Alt-Down. (Partly based on a patch by
542         Mark McLoughlin, #136987)
543
544 2004-03-14  Federico Mena Quintero  <federico@ximian.com>
545
546         Fixes #136185, patch by Morten Welinder, with some changes.
547
548         * gtk/gtkfilechooserdefault.c (check_is_folder): New helper function.
549         (shortcuts_insert_path): Check the path first with check_is_folder().
550         (gtk_file_chooser_default_set_current_folder): Likewise.
551         (gtk_file_chooser_default_add_shortcut_folder): Likewise.
552         (browse_widgets_create): Unref the size group.
553
554         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_folder):
555         Handle the case where the file exists but it is not a directory.
556         (IconType): Add value for ICON_UNDECIDED.
557         (struct stat_info_entry): New structure to hold a file's struct
558         stat, its MIME type and its icon type.
559         (struct _GtkFileFolderUnix): Added a hash of struct
560         stat_info_entry, and flags to remember which info types we've read
561         so far.
562         (get_icon_type): Use a helper function for the icons-from-stat
563         types.
564         (gtk_file_system_unix_render_icon): Use the cached file info.
565         (gtk_file_folder_unix_get_info): Put the info in the cache.
566         (gtk_file_system_unix_get_folder): Create the cache of file info
567         structures.
568
569         * gtk/gtkfilesystem.c (gtk_file_info_set_display_name): Handle the
570         case where display_name is the same as the existing
571         info->display_name.
572
573 Sun Mar 14 19:26:48 2004  Owen Taylor  <otaylor@redhat.com>
574
575         #136672, reported by Christian Persch; fixes based
576         on a patch by Soeren Sandmann.
577
578         * gtk/gtkmenu.c: Change the handling of mixed gridded
579         and non-gridded menu items; the old method was causing
580         major performance problems even with the "avoid relayout
581         on destruction" hack put in recently.
582
583         Now we first lay out the gridded items and then put the 
584         non-gridded items into empty rows / after the gridded items. 
585         Layout is done in a central menu_shell_ensure_layout(). Also
586         avoid emitting property notifications when we initially
587         insert or attach items.
588         
589         * gtk/gtkmenushell.[ch] gtk/gtkmenu.c: Stop setting the
590         unused menu_shell->menu_flag, and document it as unused
591         in the header.
592
593         * tests/testactions.c: Add a test of creating/removing
594         lots of items.
595
596         * test/testgtk.c: Add some more cruft to the menu test.
597
598 Mon Mar 15 02:36:07 2004  Matthias Clasen  <maclas@gmx.de>
599
600         * gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): Add
601         some signal docs.
602
603 Sun Mar 14 15:38:39 2004  Jonathan Blandford  <jrb@gnome.org>
604
605         * gtk/gtkentrycompletion.c (gtk_entry_completion_visible_func):
606         always use the match_func, even if text_column is set.
607
608 2004-03-14  Morten Welinder  <terra@gnome.org>
609
610         * gtk/gtkfilesystemunix.c (get_parent_dir): Don't turn "/" into
611         "".
612         (gtk_file_system_unix_get_folder): Use the same value for lookup
613         as for insertion.  Make sure we have a directory.
614
615         * gtk/gtkfilechooserdefault.c (error_dialog): Don't crash on NULL
616         path; don't crash on NULL error.
617
618 2004-03-14  Hans Breuer  <hans@breuer.org>
619
620         gtk/gtkcombobox.c : prototype cell_view_sync_cells() before 
621         first usage
622
623         gtk/makefile.msc.in : updated 'gtk_public_h_sources'
624
625         tests/makefile.msc : added testspinbutton
626
627 Sun Mar 14 01:01:18 2004  Matthias Clasen  <maclas@gmx.de>
628
629         * gtk/gtkcellview.c (gtk_cell_view_set_cell_data): Align
630         this function with gtk_tree_view_column_set_cell_data();
631         call the cell data func after setting the attributes.
632
633 Sun Mar 14 01:00:08 2004  Matthias Clasen  <maclas@gmx.de>
634
635         * gtk/gtkcellview.c (gtk_cell_view_expose): One more try;
636         make sure not to call gtk_cell_view_set_cell_data() when
637         displayed_row is NULL.
638
639 Sat Mar 13 18:13:13 2004  Owen Taylor  <otaylor@redhat.com>
640
641         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): When not
642         wrapping, do the offset of the line for justification ourselves.
643         (#120256, Felipe Heidrich)
644
645 Sun Mar 14 00:03:18 2004  Matthias Clasen  <maclas@gmx.de>
646
647         * gtk/gtkcellview.c (gtk_cell_view_expose): Support the
648         model-less use of GtkCellView shown in testcombo.c.
649
650 2004-03-13  Tor Lillqvist  <tml@iki.fi>
651
652         * gdk/win32/gdkdisplay-win32.c: Don't undefine HAVE_MONITOR_INFO
653         when compiling with gcc. Mingw's headers do have the required
654         definitions.
655
656         * gdk/win32/gdkdrawable-win32.c (draw_polygon): When drawing
657         filled polygons, don't draw the outline, similarily as
658         draw_rectangle(). Apparently GTK and GIMP don't use
659         gdk_draw_polygon() much (or always draw the outline, too), as this
660         has gone undetected for so long. Thanks to Bruce Hochstetler.
661
662 Sat Mar 13 15:19:17 2004  Owen Taylor  <otaylor@redhat.com>
663
664         * gtk/gtkwindow.c (gtk_window_destroy): Remove
665         the window from the toplevel_list here rather in destroy.
666         While this is theoretically speaking wrong, it fits
667         in better with the current reality that destroyed
668         widgets are not reusable. (#126808, Michael Natterer)
669
670 Sat Mar 13 21:47:47 2004  Matthias Clasen  <maclas@gmx.de>
671
672         * gtk/gtkcellview.c (gtk_cell_view_expose): Don't do anything
673         beyond clearing to the background if there is no active row.
674         (#137066, reported by Owen Taylor)
675
676 Sat Mar 13 21:37:44 2004  Matthias Clasen  <maclas@gmx.de>
677
678         * gtk/gtkcombobox.c (gtk_combo_box_list_key_press): Pop down the
679         list when an item is selected via the keyboard.
680
681 2004-03-13  Anders Carlsson  <andersca@gnome.org>
682
683         * gtk/gtkfilesystemunix.c: (remove_trailing_slash),
684         (gtk_file_system_unix_get_folder),
685         (gtk_file_system_unix_create_folder), (get_parent_dir),
686         (gtk_file_system_unix_get_parent), (gtk_file_folder_unix_get_info):
687         Remove trailing slashes in path names.
688         
689 Sat Mar 13 12:17:16 2004  Owen Taylor  <otaylor@redhat.com>
690
691         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): Make
692         this a total no-op when the new or old parent is
693         destroyed. (#134230, patch from Soeren Sandmann)
694
695         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy):
696         For foreign windows in our heirarchy, call
697         _gdk_windowing_window_destroy_foreign (window) and skip
698         all the normal destruction logic.
699
700         * gdk/x11/gdkwindow-x11.c gdk/win32/gdkwindow-win32.c:
701         Move code to request destruction of a foreign window
702         code into a separate _gdk_windowing_window_destroy_foreign().
703
704         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_finalize):
705         Call GDK_WINDOW_DISPLAY() on the wrapper not on the
706         impl. (Also from Soeren's patch)
707
708 Sat Mar 13 10:49:46 2004  Owen Taylor  <otaylor@redhat.com>
709
710         * gtk/gtkdnd.c (_gtk_drag_dest_handle_event): For
711         GTK_IS_PLUG toplevels, call gdk_window_get_origin() 
712         not gtk_window_get_position, as a hackround for not
713         having accurate notification of window position for
714         embedded windows. (#136112, Dan Winship)
715
716 Sat Mar 13 10:34:03 2004  Owen Taylor  <otaylor@redhat.com>
717
718         * gtk/gtktextview.c gtk/gtktextbuffer.c: Revert last change;
719         it causes problems for pastes from other applications; see
720         comments in bugzilla for #81880.
721
722 Sat Mar 13 02:55:51 2004  Matthias Clasen  <maclas@gmx.de>
723
724         Fix middle button pasting in the TextView  (#81880, reported
725         by Evert Verhellen, patch by Paolo Borelli):
726         
727         * gtk/gtktextview.c (gtk_text_view_button_press_event): Retrieve 
728         the insert mark and move the cursor to it making sure of also 
729         scroll the window if needed.
730         
731         * gtk/gtktextbuffer.c (pre_paste_prep): Move the insert mark
732         to the insertion point.
733
734 Sat Mar 13 01:38:55 2004  Matthias Clasen  <maclas@gmx.de>
735
736         * gtk/gtkcombobox.c (gtk_combo_box_remove): Add a remove 
737         implemenatation which restores the cell_view when the custom 
738         child is removed.  (#136555, Owen Taylor)
739
740 Sat Mar 13 00:07:51 2004  Matthias Clasen  <maclas@gmx.de>
741
742         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_layout_clear): 
743         Keep the cell_list in a consistent state while iterating over it, 
744         since clear_attributes() also iterates over it.  (another instance
745         of #136585, Morten Welinder)
746         
747 Fri Mar 12 17:20:15 2004  Owen Taylor  <otaylor@redhat.com>
748
749         * gtk/gtkarrow.c (gtk_arrow_expose): Swap GTK_ARROW_LEFT
750         and GTK_ARROW_RIGHT for GTK_TEXT_DIR_LTR. (#129159,
751         Semion Chichelnitsky)
752
753         * gtk/gtkpathbar.c gtk/gtktoolbar.c: Remove no-longer-needed 
754         gtk_toolbar_direction-changed handlers and explicit
755         flipping of GtkArrow widgets.
756
757 Fri Mar 12 23:37:15 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
758
759         * gtk/gtkfilechooserdialog.c
760         (file_chooser_widget_default_realized_size_changed): Clamp the
761         new size to the screen.
762
763 Fri Mar 12 15:06:44 2004  Owen Taylor  <otaylor@redhat.com>
764
765         * gtk/gtkexpander.c (gtk_expander_realize): Create the
766         event_window at the right size using the same logic as
767         in size_allocate. (#136994, Niklas Knuttson)
768
769 2004-03-12  Federico Mena Quintero  <federico@ximian.com>
770
771         * gtk/gtkwindow.c (gtk_window_activate_focus): Don't ignore the
772         return value of gtk_widget_activate().
773         (gtk_window_activate_default): Likewise.  Fixes #137008.
774
775         * gtk/gtkfilechooserdialog.c (response_cb): Act on positive
776         response IDs we recognize, rather than bailing out on cancellation
777         ones.  Fixes #136237; patch by Olivier Andrieu
778         <oliv__a@users.sourceforge.net>.
779         (file_chooser_widget_file_activated): If the dialog doesn't have a
780         default widget, try to find a suitable response widget on our own.
781         People should *really* be using gtk_dialog_set_default_response(),
782         but this is to help lazy programmers.
783
784         * gtk/gtkdialog.c (_gtk_dialog_get_response_for_widget): New
785         internal function.
786         (get_response_data): Add a "create" argument so that we don't
787         unconditionally create the response data.
788
789 2004-03-12  Morten Welinder  <terra@gnome.org>
790
791         * tests/Makefile.am: Add new testspinbutton.c
792
793 2004-03-11  Federico Mena Quintero  <federico@ximian.com>
794
795         * gtk/gtkfilechooserdefault.c (shortcuts_drag_set_delete_cursor):
796         Put the trash icon on the right for LTR locales, or on the left
797         for RTL.
798         (shortcuts_drag_motion_cb): Cancel the idle handler here as well.
799         (shortcuts_drag_leave_cb): Test whether the idle is present.
800         (shortcuts_drag_data_received_cb): Ahem, don't assert here.
801
802 Thu Mar 11 17:51:10 2004  Owen Taylor  <otaylor@redhat.com>
803
804         * modules/input/gtkimcontextxim.c (preedit_done_callback):
805         Clear preedit string and emit preedit_changed as needed
806         on AIX. (#130617, Philip K Warren)
807
808 2004-03-11  Morten Welinder  <terra@gnome.org>
809
810         * gtk/gtkpathbar.c (_gtk_path_bar_set_file_system): Plug leak.
811
812 Thu Mar 11 16:28:15 2004  Owen Taylor  <otaylor@redhat.com>
813
814         * gtk/gtkmenu.c (gtk_menu_get_toplevel): Fix attach/attach->parent
815         type. (#136919, Tim Mooney)
816
817 Thu Mar 11 16:18:51 2004  Jonathan Blandford  <jrb@redhat.com>
818
819         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): revert
820         earlier change to insert_path so that we test that the directory
821         exists.
822
823         * gtk/gtkfilechooserdialog.c
824         (gtk_file_chooser_dialog_constructor): move focus.
825
826 Thu Mar 11 22:12:14 2004  Matthias Clasen  <maclas@gmx.de>
827
828         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Use the same
829         logic as GtkEntry when calculating border width.  (#116368, reported
830         by Morten Welinder)
831
832 Thu Mar 11 15:59:05 2004  Owen Taylor  <otaylor@redhat.com>
833
834         * tests/testgtk.c (create_spins): Use gtk_entry_set_width_chars()
835         rather than gtk_widget_set_size_request().
836
837 2004-03-11  Federico Mena Quintero  <federico@ximian.com>
838
839         * gtk/gtkfilechooserdefault.c (remove_settings_signal): New
840         function, copied from gtkpathbar.c.
841         (gtk_file_chooser_default_dispose): Use remove_settings_signal()
842         rather than our own code.
843         (gtk_file_chooser_default_screen_changed): Use
844         remove_settings_signal(); this should handle per-screen settings
845         correctly.
846
847 Thu Mar 11 14:07:18 2004  Owen Taylor  <otaylor@redhat.com>
848
849         * gtk/gtklabel.c (gtk_label_focus): Fix a missing return
850         value.
851
852 Thu Mar 11 13:58:24 2004  Owen Taylor  <otaylor@redhat.com>
853
854         * gtk/gtkmessagedialog.c gtk/gtklabel.c: Back out the
855         put-labels-into-the-standard-focus-chain patches 
856         from bug #59707.
857
858         * gtk/gtklabel.c (gtk_label_focus): Only put the
859         label in the tab chain when the control key is pressed.
860
861 2004-03-11  Federico Mena Quintero  <federico@ximian.com>
862
863         * gtk/gtkfilechooserdefault.c (error_message_with_parent): Use a
864         single OK button, not a Close button, as per the HIG.
865
866         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Likewise.
867
868 2004-03-11  Federico Mena Quintero  <federico@ximian.com>
869
870         * gtk/gtkfilechooserdefault.c (shortcuts_drag_motion_cb): Oops,
871         initialize "action" before jumping.  Fixes #136900.
872
873 2004-03-11  Mark McLoughlin  <mark@skynet.ie>
874
875         * gtk/gtksettings.c: (apply_queued_setting): don't overwrite
876         application properties. Fixes bug #136802.
877
878 2004-03-11  Dov Grobgeld  <dov@imagic.weizmann.ac.il>
879
880         * gtk/gtktextlayer.c: (gtk_text_layout_set_buffer): Added
881         call to gtk_text_layout_update_cursor_line() to solve in 
882         problem of switching keyboard direction at widget creation:
883         bug #136680
884
885 Thu Mar 11 10:28:30 2004  Owen Taylor  <otaylor@redhat.com>
886
887         * gtk/gtkfilechooserembed.c (delegate_initial_focus): Remove
888         stray 'return' statement. (#136855, David L. Cooper II)
889
890 2004-03-11  Mark McLoughlin  <mark@skynet.ie>
891
892         * gtk/gtkstyle.c: (gtk_default_draw_expander): Use the PRELIGHT
893         fg color for drawing the expander when prelit. Fixes problem
894         with the HighContrast theme: bug #136789.
895
896 2004-03-11  Federico Mena Quintero  <federico@ximian.com>
897
898         Fix #135912 and #135913.
899
900         * gtk/gtkfilechooserdefault.c
901         (shortcuts_filter_model_row_draggable): Implement.
902         (shortcuts_model_filter_new): New function, create a
903         ShortcutsModelFilterClass derived from GtkTreeModelFilter, so that
904         we can implement our own DnD interface methods.
905         (shortcuts_model_create): Use shortcuts_model_filter_new().
906         (shortcuts_list_create): Enable the shortcuts list as a drag
907         source.
908         (file_list_source_targets): Renamed from shortcuts_targets.
909         (shortcuts_list_create): Change the options for
910         gtk_drag_dest_set().  Connect to more drag signals so that we can
911         implement drops by hand.
912         (shortcuts_drag_data_delete_cb): New handler; just stop the emission.
913         (shortcuts_drag_motion_cb): New handler; validate the drop.
914         (shortcuts_drag_leave_cb): New handler; unset the drag_dest_row.
915         (shortcuts_drag_drop_cb): New handler; just stop the emission and
916         remove the idle handler for the drag cursor.
917         (shortcuts_add_bookmark_from_path): Add a position argument,
918         return a boolean success code.
919         (shortcuts_drag_data_received_cb): Handle two cases:  1) Insert
920         the bookmarks at the proper position, rather than always appending
921         them to the list; 2) alternatively, reorder the bookmarks.
922         (struct _GtkFileChooserDefault): New field shortcuts_drag_outside.
923         (shortcuts_drag_motion_cb): Turn off impl->shortcuts_drag_outside.
924         (shortcuts_drag_leave_cb): Turn on impl->shortcuts_drag_outside in
925         an idle handler.
926         (shortcuts_drag_end_cb): New handler; remove the selected bookmark.
927
928 Thu Mar 11 01:08:25 2004  Jonathan Blandford  <jrb@gnome.org>
929
930         * gtk/gtkfilechooserdefault.c (location_entry_create): up the
931         width of the entry a tad.
932
933         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): use
934         gtk_entry_completion_selection_changed.  Also, unref the
935         completion as we were leaking a reference to it.
936
937 2004-03-10  Federico Mena Quintero  <federico@ximian.com>
938
939         * gtk/gtkstyle.c (draw_dot): Remove spurious semicolon.  Thanks to
940         Kjartan Maraas for pointing it out.
941
942 Wed Mar 10 23:40:15 2004  Matthias Clasen  <maclas@gmx.de>
943
944         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Set the
945         background on the action view cell renderer here, not in init, so 
946         that a) we catch style changes, and b) we get the real style, not 
947         the default one. Partial fix for #127648, reported by Dave Bordoley.
948
949 2004-03-10  Tor Lillqvist  <tml@iki.fi>
950
951         * gdk/win32/gdkevents-win32.c (build_key_event_state): Set also
952         the pointer button bits. (#136636, Dave Neary)
953
954         * gdk/win32/gdkwindow-win32.c (show_window_internal): Show
955         transparent (input only) windows using SetWindowPos(). (#132331,
956         John Ehresman)
957
958         (gdk_window_set_type_hint): For splash screens, remove the resize
959         handles, menu, and minimize/maximize/close buttons. (#132896)
960
961 Wed Mar 10 22:30:23 2004  Matthias Clasen  <maclas@gmx.de>
962
963         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear): Keep the
964         cell_list in a consistent state while iterating over it, since
965         clear_attributes() also iterates over it.  (#136585, Morten Welinder)
966
967 2004-03-10  Mark McLoughlin  <mark@skynet.ie>
968
969         * gtk/gtkexpander.c: (gtk_expander_expose): don't propagate
970         the expose to the label. The expose handler for GtkContainer
971         already does that. Fixes bug #136719. Reported by Dennis
972         Cranston, exact cause nailed down by Owen.
973
974 2004-03-10  Federico Mena Quintero  <federico@ximian.com>
975
976         * gtk/gtkfilechooserdefault.c (list_mtime_data_func): Use an
977         untranslatable "%x" for dates, rather than a custom format.  Fixes
978         #136357.
979
980 2004-03-10  Morten Welinder  <terra@gnome.org>
981
982         * gtk/gtkfilechooserdefault.c
983         (gtk_file_chooser_default_add_shortcut_folder): Test validity of
984         path here.
985         (shortcuts_insert_path): Don't check here.
986         (get_file_info): Barf if name-only fails.
987
988         * tests/testfilechooser.c (main): Add support for --multiple.
989
990 Wed Mar 10 02:41:05 2004  Jonathan Blandford  <jrb@gnome.org>
991
992         * gtk/gtkpathbar.c: (gtk_path_bar_init), (gtk_path_bar_class_init),
993         (remove_settings_signal), (gtk_path_bar_dispose),
994         (gtk_path_bar_style_set), (gtk_path_bar_screen_changed),
995         (gtk_path_bar_scroll_up), (reload_icons), (change_icon_theme),
996         (settings_notify_cb), (gtk_path_bar_check_icon_theme),
997         (get_button_image), (gtk_path_bar_update_button_appearance),
998         (make_directory_button), (gtk_path_bar_check_parent_path): Support
999         changes in icon themes.
1000
1001         * gtk/gtkpathbar.h: add two elements
1002
1003         * tests/testfilechooser.c: (main): use gnome-vfs method again to
1004         get more testing.
1005
1006 Wed Mar 10 01:17:40 2004  Jonathan Blandford  <jrb@gnome.org>
1007
1008         * gtk/gtkpathbar.c: added 'Desktop' to the list of volumes.  We
1009         don't have any more untranlated strings in the dialog.
1010
1011 Wed Mar 10 00:24:24 2004  Jonathan Blandford  <jrb@gnome.org>
1012
1013         * gtk/gtkfilechooserdefault.c (error_dialog): use uri instead of
1014         the pathname for UTF-8 safety.
1015
1016 Wed Mar 10 00:10:47 2004  Jonathan Blandford  <jrb@gnome.org>
1017
1018         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Always
1019         check to see if the shortcuts exists.  We don't want to put
1020         invalid dirs in the shortcuts pane.
1021
1022 Tue Mar  9 16:40:34 2004  Jonathan Blandford  <jrb@gnome.org>
1023
1024         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
1025         remove unneeded shortuts_swin;
1026
1027 Wed Mar 10 01:49:27 2004  Matthias Clasen  <maclas@gmx.de>
1028
1029         Fix #136614 in a better way:
1030         
1031         * gtk/gtkoptionmenu.c (gtk_option_menu_init): Undo the last change.
1032         * gtk/gtkbutton.c (struct _GtkButtonPrivate): Add a flag, align_set.
1033         * gtk/gtkbutton.c (gtk_button_init): Initialize align_set to 0.
1034         * gtk/gtkbutton.c (maybe_set_alignment): Rework to only set the
1035         alignment if priv->align_set is set.
1036         * gtk/gtkbutton.c (gtk_button_set_alignment): Set align_set to 1.
1037
1038 Wed Mar 10 01:21:05 2004  Matthias Clasen  <maclas@gmx.de>
1039
1040         * gtk/gtkcombobox.c (gtk_combo_box_menu_position_below): Place
1041         grid mode popups left aligned, not right aligned.
1042
1043 Tue Mar  9 23:09:46 2004  Matthias Clasen  <maclas@gmx.de>
1044
1045         * gtk/gtkoptionmenu.c (gtk_option_menu_init): Avoid centering 
1046         the label that is reparented from the menuitem.  (#136614, Dennis
1047         Cranston)
1048
1049 Tue Mar  9 16:19:09 2004  Jonathan Blandford  <jrb@gnome.org>
1050
1051         * gtk/gtkpathbar.c (struct _ButtonData): Encapsulate all of the
1052         information about a button in a struct instead of ugly
1053         g_object_set_data.
1054         (gtk_path_bar_size_request): Use ButtonData.
1055         (gtk_path_bar_update_slider_buttons): ditto
1056         (gtk_path_bar_size_allocate): ditto
1057         (gtk_path_bar_remove): ditto
1058         (gtk_path_bar_forall): ditto
1059         (gtk_path_bar_scroll_down): ditto
1060         (gtk_path_bar_clear_buttons): ditto
1061         (button_clicked_cb): ditto.  Also, add an ignore_changes variable
1062         (button_data_free): destroy ButtonData
1063         (update_button_appearance): Use ButtonData
1064         (make_directory_button): ditto
1065         (gtk_path_bar_check_parent_path): ditto
1066         (_gtk_path_bar_set_path): ditto
1067
1068 2004-03-09  Federico Mena Quintero  <federico@ximian.com>
1069
1070         Fix #136533.
1071
1072         * gtk/gtkfilechooserdefault.c (shortcuts_reload_icons): New
1073         function.
1074         (check_icon_theme): New helper function, installs a handler for
1075         changes in the icon theme.
1076         (gtk_file_chooser_default_style_set): Use check_icon_theme().
1077         (gtk_file_chooser_default_screen_changed): Use check_icon_theme().
1078         (gtk_file_chooser_default_dispose): Disconnect from GtkSettings.
1079         (change_icon_theme): New function, updates impl->icon_size and
1080         reloads the icons.
1081         (struct _GtkFileChooserDefault): New field settings_signal_id.
1082         (struct _GtkFileChooserDefault): New field icon_size.
1083         (shortcuts_insert_path): Use impl->icon_size.
1084         (list_icon_data_func): Likewise.
1085
1086 2004-03-09  Federico Mena Quintero  <federico@ximian.com>
1087
1088         * gtk/gtkfilechooserdefault.c (get_file_info): Handle the returned
1089         parent_path being NULL.  Fixes #136662.
1090
1091 2004-03-09  Federico Mena Quintero  <federico@ximian.com>
1092
1093         * gtk/gtkfilechooserdefault.c (shortcuts_drag_data_received_cb):
1094         Stop the emission so that GtkTreeView's handler won't try to poke
1095         the filter model.  Fixes #136127.
1096
1097 Tue Mar  9 13:49:14 2004  Owen Taylor  <otaylor@redhat.com>
1098
1099         * gtk/gtkstyle.c (gtk_paint_polygon): Fix 
1100         g_return_if_fail() that was checking draw_shadow.
1101         (#136669, Morten Welinder)
1102
1103 Tue Mar  9 09:57:25 2004  Owen Taylor  <otaylor@redhat.com>
1104
1105         * === Released 2.3.6 ===
1106
1107         * configure.in: Version 2.3.6, interface age 0.
1108
1109         * NEWS: Updates
1110
1111 Tue Mar  9 11:01:45 2004  Jonathan Blandford  <jrb@gnome.org>
1112
1113         * gtk/gtkpathbar.c (gtk_path_bar_finalize): unref the correct
1114         icon.  Reported by Michael Natterer <mitch@gimp.org>.
1115
1116 2004-03-09  Morten Welinder  <terra@gnome.org>
1117
1118         * tests/testfilechooser.c (main): Destroy widgets to reveal leaks.
1119
1120 Tue Mar  9 02:11:50 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1121
1122         * gtk/gtkmenu.c Fix bug 136446. [Marco Pesenti Gritti]
1123         (struct _GtkMenuPrivate): Add boolean destroying
1124         (gtk_menu_destroy): Set priv->destroying
1125         (gtk_menu_remove): don't update the table information when the
1126         menu is being destroyed.
1127
1128         * gtk/gtkmenu.c (gtk_menu_set_monitor): Formatting fix
1129
1130         * gtk/gtktoolbar.[ch]: Some formatting fixes
1131
1132 Tue Mar  9 01:25:10 2004  Matthias Clasen  <maclas@gmx.de>
1133
1134         * gtk/gtkframe.c (gtk_frame_paint): Fix a typo.
1135
1136 2004-03-08  Federico Mena Quintero  <federico@ximian.com>
1137
1138         Fixes #136080.
1139
1140         * gtk/gtkfilesystemunix.c: Only lstat() if stat() failed due to
1141         ENOENT.
1142         (filename_get_info): Likewise.
1143
1144 2004-03-08  Federico Mena Quintero  <federico@ximian.com>
1145
1146         * gtk/gtkfilechooserdefault.c
1147         (gtk_file_chooser_default_initial_focus): Use
1148         gtk_tree_view_set_cursor().
1149
1150 2004-03-08  Federico Mena Quintero  <federico@ximian.com>
1151
1152         Patch "1a" from #136185, by Morten Welinder.
1153
1154         * gtk/gtkfilechooserdefault.c (get_file_info): Take in an argument
1155         that says whether the caller just wants the display name.
1156         (shortcuts_insert_path): We only want the name in the call to
1157         get_file_info().
1158
1159         * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Don't request more
1160         info than needed from the file_folder.
1161
1162 2004-03-08  Federico Mena Quintero  <federico@ximian.com>
1163
1164         Fixes #136105.
1165
1166         * gtk/gtkfilechooserembed.h (struct _GtkFileChooserEmbedIface):
1167         Added an ::initial_focus() method.
1168
1169         * gtk/gtkfilechooserembed.c
1170         (_gtk_file_chooser_embed_delegate_iface_init): Set the
1171         initial_focus method.
1172         (delegate_initial_focus): Implement.
1173         (_gtk_file_chooser_embed_initial_focus): New function.
1174
1175         * gtk/gtkfilechooserdialog.c
1176         (gtk_file_chooser_dialog_constructor): Call
1177         _gtk_file_chooser_embed_initial_focus().
1178
1179         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
1180         Install the ::initial_focus() handler.
1181         (gtk_file_chooser_default_initial_focus): Implement.
1182
1183 2004-03-08  Federico Mena Quintero  <federico@ximian.com>
1184
1185         * gtk/gtkfilechooserdefault.c (update_from_entry): Return a
1186         boolean success code.
1187         (location_popup_handler): Refocus the file chooser if appropriate.
1188         Fixes #135905.
1189         (save_widgets_create): Don't set the text of the save_folder_label
1190         here.
1191         (update_appearance): Set the text here as appropriate for the save
1192         mode.  Also fixes #136387.
1193         (update_appearance): Don't show the Create Folder button in
1194         SELECT_FOLDER mode.
1195         (update_appearance): Show the extra widget in all Save modes
1196         correctly.
1197
1198 Mon Mar  8 11:57:27 2004  Owen Taylor  <otaylor@redhat.com>
1199
1200         * gtk/gtkcombobox.c (gtk_combo_box_unset_model): Don't
1201         call g_signal_handler_disonnect() if priv->model is
1202         NULL. (#136551, Damon Chaplin)
1203
1204         * gtk/gtkcombobox.c (gtk_combo_box_model_row_inserted):
1205         Back out code to set the active item when the first
1206         item is added to the model; this causes problems for
1207         GtkComboBoxText. (#136535)
1208
1209         * gtk/gtkcombobox.c (gtk_combo_box_menu_destroy)
1210         * gtk/gtkcombobox.c (gtk_combo_box_list_destroy):
1211         * gtk/gtkcombobox.c (gtk_combo_box_list_setup): 
1212         * gtk/gtkcombobox.c (gtk_combo_box_menu_setup): 
1213         Remove calls to gtk_combo_box_unset_model.
1214
1215         * gtk/gtkcombobox.c (gtk_combo_box_check_appearance): 
1216         Clean up handling of wrap->width > 0.
1217
1218         * gtk/gtkcombobox.c (gtk_combo_box_relayout): Don't
1219         switch list/menu mode here.
1220
1221         * gtk/gtkcombobox.c (gtk_combo_box_set_model): Protect
1222         against the same model being set back.
1223
1224         * gtk/gtkcombobox.c (gtk_combo_box_relayout): Call
1225         gtk_combo_box_menu_fill() rather than duplicating
1226         a large chunk of code.
1227
1228 2004-03-08  Anders Carlsson  <andersca@gnome.org>
1229
1230         * gtk/gtkfilesystemmodel.c (gtk_file_system_model_get_flags): 
1231         If max_depth is 0 then we have a list.
1232
1233 2004-03-08  Morten Welinder  <terra@gnome.org>
1234
1235         * gtk/gtkpathbar.c (_gtk_path_bar_set_path): If we fail, leave
1236         widget unchanged.  Explicitly verify final directory.
1237
1238         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_create_folder,
1239         get_icon_type, filename_get_info): Protect errno.
1240
1241 2004-03-08  Marco Pesenti Gritti  <marco@gnome.org>
1242
1243         * gtk/gtkentry.c: (gtk_entry_completion_key_press):
1244
1245         When an action is selected stop the event to be propagated
1246         otherwise the activate signal is emitted too. (Bug #133394)
1247
1248 Mon Mar  8 04:50:12 2004  Jonathan Blandford  <jrb@gnome.org>
1249
1250         * gtk/gtkfilechooserdefault.c (create_path_bar): new function to
1251         consolidate creating the path_bar.
1252         (gtk_file_chooser_default_set_current_folder): no longer need to
1253         pass in the filesystem.
1254
1255         * gtk/gtkpathbar.h: Removed unused set_pixbuf functions in favor
1256         of just setting the filesystem.
1257
1258         * gtk/gtkpathbar.c (gtk_path_bar_finalize): Free root path and
1259         home_dir.
1260         (get_button_image): Add images to path_bar.
1261         (update_button_appearance): use images
1262         (make_directory_button): Clasify buttons based upon location.
1263         (_gtk_path_bar_set_path): no longer need a file-system.  Also, add
1264         rerooting, #135845, #135914
1265
1266         * tests/testfilechooser.c: Fix reused error handling.
1267
1268 2004-03-08  Anders Carlsson  <andersca@gnome.org>
1269
1270         * gtk/gtkfilesystemunix.c: (get_icon_for_directory),
1271         (gtk_file_system_unix_render_icon):
1272         Use better icons for home and desktop.
1273
1274 2004-03-08  Anders Carlsson  <andersca@gnome.org>
1275
1276         * gtk/gtkfilechooserentry.c:
1277         (_gtk_file_chooser_entry_set_base_folder):
1278         Set the base folder path in the entry.
1279         
1280 2004-03-08  Christian Neumair  <chris@gnome-de.org>
1281
1282         * tests/testentrycompletion.c: Fix typo.
1283
1284 2004-03-08  Tor Lillqvist  <tml@iki.fi>
1285
1286         * README.win32: Update.
1287
1288         * gtk/gtk.def: Small update. Thanks to J. Ali Harlow. Re-sorted.
1289
1290         * tests/testfilechooser.c: Correct localtime_r() emulation on
1291         Win32. Remove a couple of unnecessary Win32-only includes.
1292
1293 Mon Mar  8 01:06:17 2004  Matthias Clasen  <maclas@gmx.de>
1294
1295         * tests/testentrycompletion.c: Test dynamic addition/removal. 
1296
1297 Sun Mar  7 22:38:49 2004  Matthias Clasen  <maclas@gmx.de>
1298
1299         * gtk/gtkframe.c (gtk_frame_paint): Use ythickness, not 
1300         xthickness in the calculation of vertical dimensions.
1301
1302 Sun Mar  7 17:38:03 2004  Jonathan Blandford  <jrb@gnome.org>
1303
1304         * gtk/gtkbutton.c (gtk_button_class_init): actually use
1305         gtk_button_add.
1306
1307         * gtk/gtkfilechooserdefault.c (error_building_filename_dialog):
1308         use the uri, not the path, #136317
1309         (renderer_edited_cb): ditto
1310         (shortcuts_add_bookmark_from_path): ditto
1311         (remove_bookmark_button_clicked_cb): ditto
1312         (gtk_file_chooser_default_remove_shortcut): ditto
1313         (update_from_entry): ditto
1314         (up_folder_handler): ditto
1315
1316 Sun Mar  7 16:07:08 2004  Jonathan Blandford  <jrb@gnome.org>
1317
1318         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): set
1319         redraw_on_allocate, #135902.
1320
1321         * gtk/gtkfilesystemmodel.c (model_refilter_recurse): Patch from
1322         Damon Chaplin to set a node to be visible before emitting the
1323         inserted signal, #135555.
1324
1325 Sun Mar  7 22:24:28 2004  Matthias Clasen  <maclas@gmx.de>
1326
1327         * gtk/gtkbutton.c (_gtk_button_paint): Don't use xthickness in the
1328         height calculation.
1329
1330 Sun Mar  7 14:34:04 2004  Jonathan Blandford  <jrb@gnome.org>
1331
1332         Fixes #121500.
1333
1334         * gtk/gtkfilechooserdefault.c (trap_activate_cb): stop activate
1335         from unselecting rows when pressed in multiple-selection mode.
1336
1337 2004-03-07  Hans Breuer  <hans@breuer.org>
1338
1339         * gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting) :
1340         some more settings from system, also reflect some name changes
1341         done a while ago in the x11 backend
1342
1343         * gdk/win32/makefile.msc : build gdkspawn-win32.c
1344
1345         * gtk/gtkdnd.c : gtk_drag_source_[gs]et_target_list, added "Since: 2.4"
1346
1347         * gtk/makefile.msc.in : build gtkpathbar, link shell32.lib
1348
1349         * tests/makefile.msc : some more tests get build
1350
1351 Sun Mar  7 03:03:57 2004  Jonathan Blandford  <jrb@gnome.org>
1352
1353         * gtk/gtkfilechooserdefault.c
1354         (gtk_file_chooser_default_get_paths): if action is
1355         SELECT_FOLDER, then return the currentd folder if none is
1356         selected.
1357         (gtk_file_chooser_default_should_respond): Allow 'Ok' to be hit if
1358         no directory is selected in SELECT_FOLDER mode.
1359
1360 Sat Mar  6 23:31:18 2004  Jonathan Blandford  <jrb@gnome.org>
1361
1362         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
1363         remove unneeded elements.
1364         (tree_selection_changed): removed
1365         (tree_name_data_func): removed
1366         (gtk_file_chooser_default_finalize): don't unref dir model
1367         (create_folder_tree): removed
1368         (get_selection): no longer need to abstract away the selection
1369         function.
1370         (create_file_list): We now create a tree for all actions.
1371         (file_pane_create): Make one tree.
1372         (update_appearance) We really change the mode only, now.
1373
1374 Sun Mar  7 02:38:00 2004  Matthias Clasen  <maclas@gmx.de>
1375
1376         * gtk/gtkcombobox.c (gtk_combo_box_size_request): Do a 
1377         size_request on the button and cell_view_frame, otherwise
1378         their style will still be the default here in the initial 
1379         size_request. (#136301, Mark McLoughlin)
1380
1381 2004-03-06  Gustavo J. A. M. Carneiro  <gustavo@users.sourceforge.net>
1382
1383         * gtk/gtktoolbar.c (internal_insert_element): Check return value
1384         of gtk_stock_lookup; if stock lookup fails, just use stock_id as
1385         label, instead of crashing. Fixes #136202.
1386
1387 2004-03-05  Federico Mena Quintero  <federico@ximian.com>
1388
1389         * gdk/linux-fb/gdkglobals-fb.c: Make <config.h> the very first
1390         include.
1391         * gdk/linux-fb/gdkwindow-fb.c: Likewise.
1392         * gdk/linux-fb/gdkinput.c: Likewise.
1393
1394 2004-03-05  Federico Mena Quintero  <federico@ximian.com>
1395
1396         Fixes #136082 and #135265, patch by Morten Welinder.
1397
1398         * configure.in: Use AC_SYS_LARGEFILE.
1399
1400         * */*.c: #include <config.h>
1401
1402 2004-03-05  Federico Mena Quintero  <federico@ximian.com>
1403
1404         * gtk/gtkfilechooserdefault.c
1405         (gtk_file_chooser_default_select_path): No need to have a
1406         temporary error variable.
1407
1408 2004-03-05  Tor Lillqvist  <tml@iki.fi>
1409
1410         * configure.in: Move check for native Win32 (mingw) a bit
1411         earlier. If Win32, disable static builds (as in GLib). Remove
1412         unnecessary AC_LIBTOOL_WIN32_DLL.
1413
1414         * gdk/gdk.def: Add missing entries, thanks to J. Ali Harlow.
1415
1416         * gdk/win32/gdkcursor-win32.c (color_is_white): const-correctness.
1417
1418         (gdk_cursor_new_from_pixbuf): Copy of the non-Xcursor X11
1419         implementation.
1420
1421         (gdk_display_supports_cursor_alpha,
1422         gdk_display_supports_cursor_color): Dummy implementations.
1423
1424         (gdk_display_get_default_cursor_size,
1425         gdk_display_get_maximal_cursor_size): Implement.
1426
1427         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_default_group):
1428         Dummy implementation.
1429
1430         * gdk/win32/gdkevents-win32.c (gdk_net_wm_supports): Dummy
1431         implementation.
1432
1433         * gdk/win32/gdkfont-win32.c (gdk_font_get_display): Implement.
1434
1435         * gdk/win32/gdkinput-win32.c (gdk_input_motion_events): Remove,
1436         not in API.
1437
1438         * gdk/win32/gdkwindow-win32.c (gdk_window_get_group): Dummy
1439         implementation.
1440
1441 Fri Mar  5 18:00:36 2004  Jonathan Blandford  <jrb@redhat.com>
1442
1443         * gtk/gtkfilechooserdefault.c (new_folder_button_clicked): scroll
1444         to the new path.
1445
1446         * gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): Update the
1447         allocation when scrolling instead of cancelling editing.
1448
1449 Fri Mar  5 23:52:34 2004  Matthias Clasen  <maclas@gmx.de>
1450
1451         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_set_modify_func): 
1452         Improve the docs.  (#127727, Murray Cumming)
1453
1454 Fri Mar  5 23:37:16 2004  Matthias Clasen  <maclas@gmx.de>
1455
1456         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): Clarify the
1457         doc comment.  (#118602)
1458
1459 Fri Mar  5 22:37:15 2004  Matthias Clasen  <maclas@gmx.de>
1460
1461         * gtk/gtkbutton.c (gtk_button_construct_child): Don't let
1462         the priv->image pointer dangle.  (#136259, Padraig O'Briain)
1463
1464 2004-03-05  Federico Mena Quintero  <federico@ximian.com>
1465
1466         * gtk/gtkfilechooserprivate.h (struct _GtkFileChooserIface): Add
1467         gboolean return values and GError arguments to
1468         ::set_current_folder() and ::select_path().
1469
1470         * gtk/gtkfilechooser.c (gtk_file_chooser_set_current_folder):
1471         Return a boolean value for success/failure.
1472         (gtk_file_chooser_set_current_folder_uri): Likewise.
1473         (gtk_file_chooser_select_filename): Likewise.
1474         (gtk_file_chooser_select_uri): Likewise.
1475         (gtk_file_chooser_set_filename): Likewise.
1476         (gtk_file_chooser_set_uri): Likewise.
1477         (_gtk_file_chooser_set_current_folder_path): Likewise, plus take
1478         in a GError.
1479         (_gtk_file_chooser_select_path): Likewise.
1480
1481         * gtk/gtkfilechooserutils.c (delegate_set_current_folder):
1482         Likewise.
1483         (delegate_select_path): Likewise.
1484
1485         * gtk/gtkfilechooserdefault.c
1486         (gtk_file_chooser_default_select_path): Likewise.
1487         (gtk_file_chooser_default_set_current_folder): Likewise; this also
1488         fixes #136024.
1489         (error_changing_folder_dialog): New helper function.
1490         (change_folder_and_display_error): New helper function.
1491         (switch_to_selected_folder): Use change_folder_and_display_error().
1492         (tree_selection_changed): Likewise.
1493         (shortcuts_activate_volume): Likewise.
1494         (shortcuts_activate_item): Likewise.
1495         (list_row_activated): Likewise.
1496         (path_bar_clicked): Likewise.
1497         (update_from_entry): Likewise.
1498         (up_folder_handler): Likewise.
1499         (home_folder_handler): Get the home path from the shortcuts model,
1500         and use change_folder_and_display_error().
1501
1502         * tests/testfilechooser.c (set_current_folder): New helper
1503         function; pops up a simple error dialog if necessary.
1504         (set_filename): Likewise.
1505         (set_folder_nonexistent_cb): Use set_current_folder().
1506         (set_folder_existing_nonexistent_cb): Likewise.
1507         (set_filename_nonexistent_cb): Use set_filename().
1508         (set_filename_existing_nonexistent_cb): Likewise.
1509
1510 Fri Mar  5 11:17:35 2004  Owen Taylor  <otaylor@redhat.com>
1511
1512         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): 
1513         Improve the docs (reported by Vitaly Tishkov, 
1514         #74362) Add some comments to the code about the 
1515         row reference handling that are hopefully not entirely
1516         wrong.
1517
1518 2004-03-05  Michael Natterer  <mitch@gimp.org>
1519
1520         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_show_all):
1521         s/object/widget/. Makes it compile again.
1522
1523 Fri Mar  5 03:37:14 2004  Jonathan Blandford  <jrb@gnome.org>
1524
1525         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_show_all):
1526         chain to the extra_widget.
1527
1528 Fri Mar  5 02:53:41 2004  Jonathan Blandford  <jrb@gnome.org>
1529
1530         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
1531         Patch from Damon Chaplin to free models when we're finalized,
1532         #134053
1533
1534 2004-03-05  Alexander Larsson  <alexl@redhat.com>
1535
1536         * gtk/gtkfilesystem.c (gtk_file_system_get_volume_for_path):
1537         Document the fact that there might not be a volume for all
1538         paths.
1539
1540         * gtk/gtkfilechooserdefault.c (shortcuts_add_current_folder):
1541         Don't assume there is a volume for all paths.
1542
1543 Fri Mar  5 01:45:04 2004  Jonathan Blandford  <jrb@gnome.org>
1544
1545         * gtk/gtkfilechooserdefault.c (shortcuts_append_paths): insert in
1546         the correct place instead of naïvely appending.
1547         (shortcuts_add_volumes): refilter the model
1548         (shortcuts_add_bookmarks): refilter the model
1549         (gtk_file_chooser_default_add_shortcut_folder): refilter the model
1550
1551 2004-03-04  Federico Mena Quintero  <federico@ximian.com>
1552
1553         * gtk/gtkfilechooserdialog.c (response_cb):  New handler.  Ask the
1554         GtkFileChooser widget if it wants to do something special rather
1555         than letting us terminate the dialog.
1556         (gtk_file_chooser_dialog_init): Connect to "response"; see the
1557         comment in the sources to see why we don't override the method in
1558         class_init.
1559
1560         * gtk/gtkfilechooserembed.h (struct _GtkFileChooserEmbedIface):
1561         Added a ::should_respond() method.
1562
1563         * gtk/gtkfilechooserembed.c
1564         (_gtk_file_chooser_embed_delegate_iface_init): Add a delegate for ::should_respond().
1565         (delegate_should_respond): New delegate.
1566         (_gtk_file_chooser_embed_should_respond): New function.
1567
1568         * gtk/gtkfilechooserdefault.c (set_list_model, create_file_list):
1569         Use dashes in signal names rather than underscores.
1570         (gtk_file_chooser_default_init): Hook up our ::should_respond() implementation.
1571         (gtk_file_chooser_default_should_respond): Implement.  go into a
1572         folder rather than responding if we are in File mode and the
1573         selected file is a folder.
1574         (get_selection): New helper function.
1575         (add_bookmark_button_clicked_cb): Use get_selection().
1576         (bookmarks_check_add_sensitivity): Likewise.
1577         (gtk_file_chooser_default_get_paths): Likewise.
1578         (check_save_entry): New helper function.
1579         (gtk_file_chooser_default_get_paths): Use check_save_entry().
1580         (selection_check): Renamed from selection_is_folders().  Now
1581         checks whether the selection is empty, all files, all folders.
1582         (bookmarks_check_add_sensitivity): Use selection_check().
1583
1584 Fri Mar  5 00:05:59 2004  Matthias Clasen  <maclas@gmx.de>
1585
1586         * gtk/gtkcombobox.c (gtk_combo_box_list_setup): 
1587         * gtk/gtkcombobox.c (gtk_combo_box_menu_setup): Connect to 
1588         key_press_event and handle Alt-Down/Alt-Up to show or hide the
1589         list popup. Also handle Down/Up/PageDown/PageUp/Home/End and 
1590         make them change the active item without popping up the list.
1591         These keybindings are inherited from GtkCombo. 
1592
1593 Thu Mar  4 23:15:58 2004  Matthias Clasen  <maclas@gmx.de>
1594
1595         * gtk/gtkcombobox.c (gtk_combo_box_menu_position): Initially 
1596         select the active item when using optionmenu-like positioning. 
1597
1598 Thu Mar  4 16:54:30 2004  Owen Taylor  <otaylor@redhat.com>
1599
1600         * gtk/gtkrc.c (gtk_rc_check_pixmap_dir): Don't
1601         open/close the file, just check for existence
1602         with g_file_test(). This is considerably cheaper,
1603         and lack-of-permissions for pixmap dirs is 
1604         pathological.
1605
1606 Wed Mar  3 17:53:21 2004  Owen Taylor  <otaylor@redhat.com>
1607
1608         * gtk/gtksocket.c (gtk_socket_class_init): Overide
1609         show_all/hide_all to be gtk_widget_show/gtk_widget_hide,
1610         since we don't want to propagate to the in-process
1611         plug, if any. (#122949, Michael Meeks)
1612
1613 Thu Mar  4 15:20:55 2004  Jonathan Blandford  <jrb@gnome.org>
1614
1615         * gtk/gtkfilechooserdefault.c (update_appearance): show the 'New
1616         Folder' button in SAVE mode again.
1617
1618 Thu Mar  4 21:53:46 2004  Matthias Clasen  <maclas@gmx.de>
1619
1620         * gtk/gtkiconfactory.c (copy_cache): Increment the reference
1621         count of the style when copying the cached icon.  (#135890, Crispin
1622         Flowerday)
1623
1624 Thu Mar  4 21:45:43 2004  Matthias Clasen  <maclas@gmx.de>
1625
1626         * gtk/gtkcombobox.c: In list mode, set the background color 
1627         of the cell view to the base color of the style, instead of
1628         hardwiring white. (#136158)
1629
1630 Thu Mar  4 01:32:19 2004  Jonathan Blandford  <jrb@gnome.org>
1631
1632         * gtk/gtkpathbar.c (gtk_path_bar_set_path): Modified patch from
1633         muppet <scott@asofyet.org> to keep child directories around if we
1634         change to a child.
1635
1636         * gtk/gtkpathbar.c (_gtk_path_bar_set_home_icon): Start of
1637         icon-setting functions.  Not used yet.
1638         (_gtk_path_bar_set_root_icon): Ditto.
1639         
1640 Thu Mar  4 00:31:54 2004  Matthias Clasen  <maclas@gmx.de>
1641
1642         * gtk/gtktextview.c (extend_selection): 
1643         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Allow
1644         to select the last word in the buffer.  (#135487, Paolo Borelli)
1645
1646 Wed Mar  3 23:54:31 2004  Matthias Clasen  <maclas@gmx.de>
1647
1648         * gtk/gtkentrycompletion.c: Doc update.
1649
1650 Wed Mar  3 17:30:18 2004  Owen Taylor  <otaylor@redhat.com>
1651
1652         * gtk/gtkwindow.c (gtk_window_mnemonic_activate): Check
1653         whether widgets are viewable, not just if they are
1654         mapped. (#122912, reported by Tim Evans)
1655
1656 Wed Mar  3 23:28:48 2004  Matthias Clasen  <maclas@gmx.de>
1657
1658         * gtk/gtkcombobox.c (gtk_combo_box_set_active): Move the actual
1659         implementation into a new gtk_combo_box_set_active_internal() 
1660         function, which doesn't do the short-circuiting. 
1661         * gtk/gtkcombobox.c (gtk_combo_box_model_row_deleted): Use
1662         set_active_internal() here, since the active item may change here,
1663         although the index is unchanged.
1664
1665 Wed Mar  3 23:26:49 2004  Matthias Clasen  <maclas@gmx.de>
1666
1667         * gtk/gtkcombobox.c (gtk_combo_box_menu_position): Reintroduce the
1668         traditional option menu placement of the popup for regular combo
1669         boxes. Grids and editable combo boxes use the combo-like placement 
1670         below the entry.  (#136021)
1671         * gtk/gtkcombobox.c (gtk_combo_box_menu_button_press): 
1672         * gtk/gtkcombobox.c (gtk_combo_box_popup): Call gtk_menu_set_active()
1673         before popping up the menu, to make the placement work.
1674         
1675 Wed Mar  3 17:20:15 2004  Owen Taylor  <otaylor@redhat.com>
1676
1677         * gtk/gtkmain.c (gtk_propagate_event): Special case
1678         scroll events so that they propagate up the widget
1679         heirarchy when received on insensitive widgets.
1680         (#101102, reported by Geoff Reedy)
1681
1682 Wed Mar  3 16:47:10 2004  Owen Taylor  <otaylor@redhat.com>
1683
1684          #109594, reported by Olivier Ripoll
1685
1686         * gtk/gtkentry.c (gtk_entry_size_request): Use max of 
1687         width and digit width for gtk_entry_set_width_chars,
1688         and round up.
1689
1690         * gtk/gtkcolorsel.c (gtk_color_selection_init): Set the
1691         width of the entry to 7 chars.
1692
1693 Wed Mar  3 16:00:10 2004  Owen Taylor  <otaylor@redhat.com>
1694
1695         * configure.in: Strip out the "export-dynamic" libtool
1696         option from library link lines. (#124687, James Henstridge)
1697
1698 Wed Mar  3 16:06:03 2004  Jonathan Blandford  <jrb@gnome.org>
1699
1700         * gtk/gtkfilechooserdefault.c (save_folder_combo_changed_cb):
1701         Don't activate the combo if we're in the midst of changing
1702         folders.
1703
1704 2004-03-03  Mark McLoughlin  <mark@skynet.ie>
1705
1706         * tests/testsocket_common.c: (print_hello): don't try and store
1707         pointers in ints. Fixes 64-bit build.
1708
1709 2004-03-03  Federico Mena Quintero  <federico@ximian.com>
1710
1711         * gtk/gtkfilesystem.c (gtk_file_system_get_parent): Simplify by
1712         not using a temporary variable, and clarify the documentation.
1713         Fixes #136008.
1714
1715 2004-03-03  Mark McLoughlin  <mark@skynet.ie>
1716
1717         * gtk/gtkexpander.c:
1718         (gtk_expander_enter_notify), (gtk_expander_leave_notify),
1719         (gtk_expander_set_label_widget): Set the label widget's
1720         state to prelight if we're prelit. Fixes bug #136078.
1721
1722 2004-03-03  Murray Cumming  <murrayc@murrayc.com>
1723
1724         * gtk/gtkradiobutton.h, radiomenuitem.h: Corrected the group_changed
1725         signal vfunc declaration, adding the first parameter, which is the
1726         widget emitting the signal.
1727
1728 2004-03-03  Morten Welinder  <terra@gnome.org>
1729
1730         * tests/testfilechooser.c (update_preview_cb): Plug leak.
1731
1732 Tue Mar  2 23:39:55 2004  Jonathan Blandford  <jrb@gnome.org>
1733
1734         * gtk/gtkfilechooserdialog.c
1735         (file_chooser_widget_default_realized_size_changed): Split
1736         function into realized and unrealized variants, and consolidate
1737         the handling fo size-changing and default changing.
1738
1739         * gtk/gtkfilechooserembed.[ch] (gtk_file_chooser_embed_class_init):
1740         remove resizable-hints-changed, as it just complicated things.
1741
1742         * gtk/gtkfilechooserdefault.c (update_appearance): Don't emit
1743         resizable-hints-changed.
1744         
1745 2004-03-03  Tor Lillqvist  <tml@iki.fi>
1746
1747         * gtk/gtk.def: Add a missing entry. (#135982, J. Ali Harlow)
1748
1749         * NEWS: Correct spelling of my name in one place.
1750
1751 2004-03-02  Federico Mena Quintero  <federico@ximian.com>
1752
1753         * gtk/gtkfilechooserdefault.c
1754         (gtk_file_chooser_default_set_current_folder): Handle errors in
1755         setting the path bar's path.  Fixes #136000, based on a patch by
1756         Morten Welinder.
1757
1758         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_insert_bookmark):
1759         Don't free our own propagated error.
1760
1761         * gtk/gtkpathbar.c (gtk_path_bar_set_path): Likewise, and free the
1762         parent_path upon error.  Fixes #136006, patch by Morten Welinder.
1763         (gtk_path_bar_set_path): Unref the file_folder upon error.
1764         (gtk_path_bar_set_path): Return a boolean success code.
1765
1766 Wed Mar  3 00:28:59 2004  Matthias Clasen  <maclas@gmx.de>
1767
1768         * tests/testcombochange.c: Add an animation mode, to test 
1769         how the combobox behaves if the model changes while it is popped
1770         up.
1771
1772 Tue Mar  2 17:06:05 2004  Owen Taylor  <otaylor@redhat.com>
1773
1774         * === Released 2.3.5 ===
1775
1776         * NEWS: Updates
1777
1778         * configure.in: Version 2.3.5, interface age 0.
1779         Require glib-2.3.5, pango-1.3.5.
1780
1781 Tue Mar  2 23:08:12 2004  Matthias Clasen  <maclas@gmx.de>
1782
1783         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Avoid
1784         popping up the completions across the edge of the monitor.
1785         Part of #135561.
1786
1787 Tue Mar  2 16:47:40 2004  Owen Taylor  <otaylor@redhat.com>
1788
1789         * tests/testfilechooser.c (set_filename_existing_nonexistent_cb): 
1790         Move the /nonexistant stuff out of the main window,
1791         keep the main window somewhat normal looking.
1792
1793 Tue Mar  2 16:18:43 2004  Owen Taylor  <otaylor@redhat.com>
1794
1795         * gtk/gtktreestore.c (gtk_tree_store_reorder)
1796         * gtk/gtkliststore.c (gtk_list_store_reorder): Fix
1797         up the interpretation of new_order to match what
1798         it means elsewhere, document the meaning of new_order.
1799
1800         * gtk/gtkcombobox.c (gtk_combo_box_model_rows_reordered):
1801         Fix interpretation of new_order.
1802
1803         * tests/testcombochange.c (on_reorder): Fix interpretation
1804         of new_order.
1805
1806         * tests/testcombochange.c (on_reorder): Fix hitting
1807         "reorder" with an empty list.
1808
1809 Tue Mar  2 21:23:30 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1810
1811         Patch from Frederic Crozat, test code from Jean-Philippe
1812         Chancelier. Fixes bug #120479.
1813         
1814         * gtk/gtkcombo.c (gtk_combo_popup_list): Make sure popup belongs
1815         to the right window group.
1816
1817         * gtk/gtkmenu.c (gtk_menu_popup): Same
1818
1819         * tests/testsocket.c (main): Pack the plugs into an hbox instead
1820         of a vbox.
1821
1822         * tests/testsocket_common.c: Add a GtkMenuBar, a GtkCombo and a
1823         GtkComboBox to the children.
1824
1825 Tue Mar  2 14:38:23 2004  Owen Taylor  <otaylor@redhat.com>
1826
1827         * gtk/gtkcombobox.c (gtk_combo_box_model_row_inserted):
1828         If the model was empty before, select the first inserted
1829         item.
1830
1831         * gtk/gtkcombobox.c (gtk_combo_box_model_row_deleted):
1832         Fix up the logic for the new row to select.
1833
1834         * gtk/gtkcombobox.c (gtk_combo_box_class_init):
1835         Rename "appearance" property to "appears-as-list".
1836
1837         * tests/testcombochange.c tests/Makefile.am: Test case
1838         for combos and dynamically changing models.
1839
1840 Tue Mar  2 15:19:52 2004  Jonathan Blandford  <jrb@redhat.com>
1841
1842         * gtk/gtkfilechooserdefault.c
1843         (gtk_file_chooser_default_get_resizable_hints): set the default
1844         value, spotted by Morten Welinder.
1845
1846 Tue Mar  2 15:03:15 2004  Jonathan Blandford  <jrb@redhat.com>
1847
1848         * gtk/gtkfilechooserdefault.c
1849         (gtk_file_chooser_default_get_resizable_hints): get the logic
1850         correct.  This will fix sizing on save dialogs.
1851
1852         (save_widgets_create): set_mnemonic_widget.
1853
1854 2004-03-02  Federico Mena Quintero  <federico@ximian.com>
1855
1856         * gtk/gtkfilechooserdefault.c
1857         (gtk_file_chooser_default_set_current_folder): Don't update the
1858         save folder combo if we are already switching folders; based on a
1859         patch by Jonathan Blandford.
1860
1861         * gtk/gtkfilechooserdefault.c (shortcuts_add_current_folder):
1862         Handle failure to insert the path.  Based on a patch by Morten
1863         Welinder attached to bug #135380.
1864
1865         * tests/testfilechooser.c (extra_widget_create): Add a bunch of
1866         buttons to test various things.
1867
1868 Tue Mar  2 20:59:23 2004  Matthias Clasen  <maclas@gmx.de>
1869
1870         * tests/Makefile.am: Add testentrycompletion.
1871
1872         * tests/testentrycompletion.c: New file to test some of the
1873         more exotic GtkEntryCompletion features.
1874
1875 Tue Mar  2 14:38:10 2004  Jonathan Blandford  <jrb@redhat.com>
1876
1877         * tests/testfilechooser.c (main): improve tests a little.
1878
1879 Tue Mar  2 11:45:50 2004  Owen Taylor  <otaylor@redhat.com>
1880
1881         * gtk/gtkcombobox.c: Always connect to the changed
1882         signals on the model, update the active item as
1883         appropriate when rows are inserted/deleted/reordered,
1884         re-layout the menu on ::rows-reordered.
1885
1886         * gtk/gtkcellview.c (gtk_cell_view_set_displayed_row):
1887         Allow %NULL for path to unset and leave no current
1888         path.
1889
1890 Tue Mar  2 19:54:53 2004  Matthias Clasen  <maclas@gmx.de>
1891
1892         * gtk/gtkcombobox.c (gtk_combo_box_list_position): Position
1893         the popup above the sample if there is not enough room below.
1894         Part of #135543.
1895
1896 Tue Mar  2 19:53:36 2004  Matthias Clasen  <maclas@gmx.de>
1897
1898         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Make the 
1899         frame for the list mode etched in, to give the popup a slightly
1900         less flat appearance. 
1901
1902 Tue Mar  2 17:55:31 2004  Matthias Clasen  <maclas@gmx.de>
1903
1904         * gtk/gtk.def: Add gtk_combo_box_entry_new_text().  
1905
1906 2004-03-02  Morten Welinder  <terra@gnome.org>
1907
1908         * tests/testfilechooser.c (size_prepared_cb): Don't scale images
1909         that are small enough to fit.  Avoid using incompatibly typed data
1910         pointer.
1911
1912         * gtk/gtkfilechooserdefault.c
1913         (gtk_file_chooser_default_get_resizable_hints): Test the
1914         resize_horizontally pointer, not the deferenced pointer.
1915
1916 2004-03-01  Federico Mena Quintero  <federico@ximian.com>
1917
1918         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault): New
1919         flag shortcuts_current_folder_is_volume.
1920         (shortcuts_add_current_folder): Set
1921         impl->shortcuts_current_folder_is_volume as appropriate.
1922         (remove_current_folder_cb): Handle the flag.
1923         (shortcuts_activate_item): Likewise.
1924         (shortcuts_update_current_folder): Handle the
1925         impl->shortcuts_current_folder_active flag; only add the folder if
1926         it doesn't already exist in the list.
1927         (shortcuts_model_create): Don't insert the current folder
1928         separator here.
1929         (shortcuts_add_current_folder): Insert the separator here.
1930         (shortcut_find_position): Renamed from shortcut_exists(); now
1931         returns an index.
1932         (shortcuts_add_current_folder): Set the active item in the combo.
1933
1934 2004-03-01  Federico Mena Quintero  <federico@ximian.com>
1935
1936         * gtk/gtkfilechooserdefault.c (shortcuts_row_activated_cb): Eep,
1937         use gtk_tree_model_filter_convert_iter_to_child_iter(), not the reverse.
1938
1939 2004-03-01  Federico Mena Quintero  <federico@ximian.com>
1940
1941         * gtk/gtkfilechooserdefault.c (shortcuts_model_create): Don't
1942         unref an old model; there isn't one.  This was a leftover from
1943         when we recreated the model on every change.
1944         (save_widgets_create): Create the save folder combo.
1945         (shortcuts_model_create): Don't set the model on the tree view
1946         here.
1947         (gtk_file_chooser_default_constructor): Create the shortcuts model
1948         here, before the rest of the widgets.
1949         (shortcuts_list_create): Don't call shortcuts_model_create() here;
1950         just set the model on the tree.
1951         (save_folder_combo_create): New function, provided by Jonathan
1952         Blandford.
1953         (update_appearance): Set the sensitivity of the folder combo.
1954         (shortcuts_activate_iter): New helper function; code moved from
1955         shortcuts_row_activated_cb().
1956         (shortcuts_activate_item): New helper function.
1957         (shortcuts_row_activated_cb): Use shortcuts_activate_iter().
1958         (ShortcutsIndex): Renamed SHORTCUTS_SEPARATOR to
1959         SHORTCUTS_BOOKMARKS_SEPARATOR.
1960         (struct _GtkFileChooserDefault): New field shortcuts_current_folder_active.
1961         (shortcuts_insert_separator): Add a position argument.
1962         (shortcuts_get_index): Handle the SHORTCUTS_CURRENT_FOLDER_SEPARATOR 
1963         and SHORTCUTS_CURRENT_FOLDER positions.
1964         (shortcut_exists): Ignore the current folder row.
1965         (struct _GtkFileChooserDefault): New field shortcuts_filter_model.
1966         (shortcuts_model_create): Create a filter model for the shortcuts list.
1967         (shortcuts_list_create): Set the model to the shortcuts_filter_model.
1968         (remove_bookmark_button_clicked_cb): Use the shortcuts_filter_model.
1969         (bookmarks_check_remove_sensitivity): Likewise.
1970         (shortcuts_row_activated_cb): Likewise.
1971         (gtk_file_chooser_default_set_current_folder): New function.
1972         (gtk_file_chooser_default_set_current_folder): Update the current
1973         folder row in the shortcuts list.
1974
1975         * gtk/gtkfilechooserwidget.c
1976         (gtk_file_chooser_widget_constructor): Cast correctly for
1977         _gtk_file_chooser_embed_set_delegate().
1978
1979 Mon Mar  1 19:30:25 2004  Owen Taylor  <otaylor@redhat.com>
1980
1981         * gtk/gtkdnd.[ch]: Add gtk_drag_source_set/get_target_list().
1982         (#127499, based on patch from Michael Natterer)
1983
1984         * tests/testgtk.c: Fix bidi strings to display correctly
1985         with new auto-bidi.
1986
1987 Tue Mar  2 01:34:40 2004  Matthias Clasen  <maclas@gmx.de>
1988
1989         * gtk/gtksettings.c: Remove the include of Xft.h, which is already
1990         dragged in via pangoxft.h.  (#135496, David Hawthorne)
1991
1992 Mon Mar  1 23:52:15 2004  Tim Janik  <timj@gtk.org>
1993
1994         * gtk/gtkbindings.[hc]: expose gtk_bindings_activate_event(), changed
1995         callers.
1996
1997         * gtk/gtkwindow.[hc]: added gtk_window_propagate_key_event() to expose
1998         the key event propagation mechanism used for focus widgets.
1999         (gtk_window_key_release_event): use the same key event propagation logic
2000         as gtk_window_key_press_event().
2001
2002 2004-03-01  Simon Budig  <simon@gimp.org>
2003
2004         * gdk/x11/gdkinput-x11.c: X11 R6.4 specifies 15 events
2005         for the XInput extension. We want to see them all.
2006         We now get Proximity Out events again. Fixes bug #135320.
2007
2008 Tue Mar  2 00:47:21 2004  Matthias Clasen  <maclas@gmx.de>
2009
2010         * gtk/gtkimmodule.c (match_locale): Use case-insensitive
2011         comparison. Fixes XIM module loading on AIX.  (#131277)
2012
2013 Mon Mar  1 23:59:18 2004  Matthias Clasen  <maclas@gmx.de>
2014
2015         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): 
2016         Make it work correctly when the child model is cleared 
2017         completely. (#121633)
2018
2019 2004-03-01  Michael Natterer  <mitch@gimp.org>
2020
2021         * gtk/gtkfilechooserwidget.h: removed accidentially committed char
2022         which broke the build.
2023
2024 Mon Mar  1 16:51:21 2004  Jonathan Blandford  <jrb@redhat.com>
2025
2026         * gtk/gtkfilechooserdialog.c
2027         (file_chooser_widget_default_size_changed): only store the size if
2028         we can resize in that direction.
2029
2030 Mon Mar  1 16:32:52 2004  Jonathan Blandford  <jrb@redhat.com>
2031
2032         * gtk/gtkfilechooserwidget.c
2033         (gtk_file_chooser_widget_new_with_backend): new function.  Long
2034         name.
2035
2036 2004-03-01  Morten Welinder  <terra@gnome.org>
2037
2038         * gtk/gtkfilesystemunix.c (filename_get_info): Only stat when
2039         needed.
2040
2041         * gtk/gtkfilesystemmodel.c (file_model_node_is_visible): Simplify
2042         semantics and check for errors.
2043
2044         * gtk/gtkpathbar.c (gtk_path_bar_set_path): Propagate errors.
2045
2046         * gtk/gtkfilefilter.c (gtk_file_filter_filter): Don't crash if
2047         display_name is NULL.
2048
2049 Mon Mar  1 14:16:52 2004  Owen Taylor  <otaylor@redhat.com>
2050
2051         Based on patch by Alex Larsson
2052
2053         * gtk/gtkfilechooserdefault.c: Use gtk-file-chooser-backend
2054         GtkSetting to set the backend if the app doesn't specify one.
2055
2056         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c:
2057         Add Gtk/FileChooserBackend.
2058
2059 Mon Mar  1 20:32:06 2004  Tim Janik  <timj@gtk.org>
2060
2061         * autogen.sh:
2062         - exit with $? instead of 1 in case of failure
2063         - exit with $? if ./configure failed
2064           (that's so autogen.sh && make lines work)
2065         - removed --enable-gtk-doc option
2066         - added $AUTOGEN_CONFIGURE_ARGS
2067
2068 2004-03-01  Federico Mena Quintero  <federico@ximian.com>
2069
2070         * gtk/gtkfilechooserdefault.c (list_model_filter_func): Test for
2071         filter_info.uri correctly.  Fixes #135379, pointed out by Damon
2072         Chaplin.
2073         (shortcuts_get_index): Compute the bookmarks index correctly.
2074         Fixes #135714, pointed out by Damon Chaplin.
2075         (gtk_file_chooser_default_list_shortcut_folders): Handle the case
2076         with no shortcuts, and don't run off the end of the list if there
2077         are no bookmarks and their separator.  Fixes #135572, patch by
2078         Damon Chaplin.
2079
2080 Mon Mar  1 12:23:06 2004  Owen Taylor  <otaylor@redhat.com>
2081
2082         * gtk/gtklabel.c: Handle dynamically resolved bidi direction
2083         when drawing the cursor. (#118541)
2084
2085         * gtk/gtkentry.c (get_better_cursor_x): Use entry->resolved_dir;
2086
2087         * gtk/gtkentry.c (draw_insertion_cursor): Fix up
2088         some confusion in parameter ordering.
2089
2090 Mon Mar  1 12:05:54 2004  Jonathan Blandford  <jrb@redhat.com>
2091
2092         * gtk/gtkfilechooserdialog.c
2093         (file_chooser_widget_resizable_hints_changed): Handle
2094         shrinking/growing.
2095
2096 2004-03-01  Michael Natterer  <mitch@gimp.org>
2097
2098         * gtk/gtktextbtree.c: removed underscores from calls to
2099         gtk_text_btree_resolve_bidi().
2100
2101 Mon Mar  1 10:41:27 2004  Owen Taylor  <otaylor@redhat.com>
2102
2103         Patch from Dov Grobgeld to implement auto-bidi-direction
2104         for GtkTextView (#118543)
2105
2106         * gtk/gtktextbtree.[ch]: Resolve bidi base direction
2107         for each line by propagating backwards/forwards as
2108         necessary.
2109
2110         * gtk/gtktextlayout.[ch] gtk/gtktextview.c: Set the 
2111         bidi base direction for the ;ine with the cursor from 
2112         the keyboard direction. Add gtk_text_layout_set_keyboard_direction().
2113         
2114 Mon Mar  1 10:31:11 2004  Owen Taylor  <otaylor@redhat.com>
2115
2116         * gtk/gtkentry.[ch]: Implement auto-bidi-direction,
2117         based on a patch from Dov Grobgeld. (#118540)
2118
2119 Sun Feb 29 22:01:49 2004  Owen Taylor  <otaylor@redhat.com>
2120
2121         * gtk/gtkentry.[ch]: Add gtk_entry_set_alignment() 
2122         to allow right-aligned entries and a "xalign" 
2123         property. (#59799, patch from Egon Andersen and 
2124         Steffen Gutmann)
2125
2126         * gtk/gtkmisc.c (gtk_misc_class_init): Use improved
2127         xalign property description here too.
2128
2129         * tests/testtext.c: UNDERLINE_ERROR test addition
2130         from Nicolas Settons' patch.
2131
2132 Sun Feb 29 20:34:06 2004  Owen Taylor  <otaylor@redhat.com>
2133
2134         * gtk/gtkwindow.[ch] gtk/gtkmenushell.c: export
2135         gtk_window_activate_key() (Request from Tim Janik)
2136
2137 Mon Mar  1 01:00:11 2004  Matthias Clasen  <maclas@gmx.de>
2138
2139         * gtk/gtktextview.c (gtk_text_view_drag_data_received): 
2140         Make DND operations within a buffer move the dragged 
2141         text instead of copying it; also make DND operations 
2142         a single user action for undo purposes.  (#135191, 
2143         #93139, reported by Tommi Komulainen, patch by Paolo Borelli
2144         and Paolo Maggi)
2145
2146 Mon Mar  1 00:51:11 2004  Matthias Clasen  <maclas@gmx.de>
2147
2148         * NEWS: News for 2.3.5.
2149
2150 Sun Feb 29 23:25:35 2004  Matthias Clasen  <maclas@gmx.de>
2151
2152         * gtk/gtkentry.c (gtk_entry_completion_key_press): 
2153         Fix the Shift-Tab support to go backwards.
2154
2155 Sun Feb 29 16:40:40 2004  Owen Taylor  <otaylor@redhat.com>
2156
2157         * gtk/gtktextview.c (gtk_text_view_class_init): Fix 
2158         capitalization to match other style properties.
2159
2160 Sun Feb 29 16:38:53 2004  Owen Taylor  <otaylor@redhat.com>
2161
2162         * gtk/gtktextview.c (gtk_text_view_class_init): Fix a
2163         typo in property string.
2164
2165 Sun Feb 29 16:35:23 2004  Owen Taylor  <otaylor@redhat.com>
2166
2167         * gdk/gdkpango.c gtk/gtktextdisplay.c: Implement
2168         PANGO_UNDERLINE_ERROR (Based on a patch by
2169         Nicolas Setton, #114237)
2170
2171         * gtk/gtktextview.c: Add a error-underline-color style
2172         property.
2173
2174 Sun Feb 29 19:04:33 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
2175
2176         * gtk/gtkrange.c (_gtk_range_get_wheel_delta): New internal
2177         function returning a good step value for the mouse wheel. For
2178         scrollbars, base the step on page_size^(2/3), for other ranges,
2179         use 2 * step_increment.
2180
2181         * gtk/gtkrange.c (gtk_range_scroll_event): Use it here ...
2182
2183         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): 
2184         ... and here.
2185
2186         * gtk/gtkmenu.c (gtk_menu_leave_notify): Fix a warning.
2187
2188 Sun Feb 29 01:51:27 2004  Jonathan Blandford  <jrb@gnome.org>
2189
2190         * gtk/gtkfilechooserembed.c
2191         (_gtk_file_chooser_embed_get_default_size):  Add g_return_if_fail()
2192         (_gtk_file_chooser_embed_get_resizable_hints): Add g_return_if_fail()
2193
2194         * gtk/gtkfilechooserdialog.c
2195         (file_chooser_widget_default_size_changed): Get the correct
2196         initial size for the dialog.  Also, don't bother with
2197         gtk_window_set_default_size().  It's not really meaningful.
2198
2199         * gtk/gtkfilechooserdefault.c
2200         (gtk_file_chooser_default_get_default_size): Get the correct
2201         spacing for the preview_widget
2202         (update_preview_widget_visibility): Clear widget field after we
2203         destroy it.
2204
2205 2004-02-29  Federico Mena Quintero  <federico@ximian.com>
2206
2207         * gtk/gtkfilechooserdefault.c
2208         (gtk_file_chooser_default_set_property): Handle
2209         GTK_FILE_CHOOSER_PROP_USE_PREVIEW_LABEL.
2210         (gtk_file_chooser_default_get_property): Likewise.
2211         (struct _GtkFileChooserDefault): Added fields for preview_label,
2212         use_preview_label, preview_display_name, preview_box.  Removed
2213         preview_frame.
2214         (set_preview_widget): Reorder the widget in relation to the label.
2215         (update_preview_widget_visibility): Create or destroy the preview
2216         label.
2217         (check_preview_change): Update impl->preview_display_name and the
2218         label.
2219         (find_good_size_from_style): Use the preview_box.
2220         (gtk_file_chooser_default_finalize): Free
2221         impl->preview_display_name.
2222         (gtk_file_chooser_default_init): Initialize
2223         impl->use_preview_label.
2224
2225         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add a
2226         "use-preview-label" property.
2227         (gtk_file_chooser_set_use_preview_label): New function.  This sets
2228         whether one wants the file chooser to display a stock label with
2229         the previewed filename.  Apps that do really fancy previews can
2230         turn this off and draw the name themselves.
2231         (gtk_file_chooser_get_use_preview_label): New function.
2232         (gtk_file_chooser_get_preview_widget_active): Documentation fix.
2233
2234         * gtk/gtkfilechooserutils.h (GtkFileChooserProp): Add a
2235         GTK_FILE_CHOOSER_PROP_USE_PREVIEW_LABEL value.
2236
2237         * gtk/gtkfilechooserutils.c
2238         (_gtk_file_chooser_install_properties): Override the
2239         "use-preview-label" property.
2240
2241 Sun Feb 29 04:43:29 2004  Matthias Clasen  <maclas@gmx.de>
2242
2243         * gtk/gtkentry.c (gtk_entry_completion_key_press): Make Tab and
2244         Shift-Tab work when the completion popup is shown.
2245
2246 2004-02-28  Federico Mena Quintero  <federico@ximian.com>
2247
2248         * gtk/gtkfilechooserdefault.c (create_folder_tree): Use "Name" for
2249         the title of the filename column.
2250         (create_file_list): Likewise.
2251
2252 Sun Feb 29 03:31:42 2004  Matthias Clasen  <maclas@gmx.de>
2253
2254         * gtk/gtkentry.c (gtk_entry_completion_key_press): Fix Page_Up 
2255         and Page_Down in the completion popup to move page-wise if we're
2256         scrolling.
2257
2258 2004-02-28  Federico Mena Quintero  <federico@ximian.com>
2259
2260         * gtk/gtkfilechooserdefault.c (set_cell_text_bold_if_folder):
2261         Removed.
2262         (list_name_data_func): Don't call the function above.
2263         (list_mtime_data_func): Likewise.
2264
2265 Sun Feb 29 02:34:35 2004  Matthias Clasen  <maclas@gmx.de>
2266
2267         * gtk/gtkcombobox.c (gtk_combo_box_list_position): New 
2268         function which calculates position and size for the popup in
2269         list mode. Currently it only pushes the popup horizontally 
2270         into the screen.
2271
2272 Sun Feb 29 01:10:09 2004  Matthias Clasen  <maclas@gmx.de>
2273
2274         * gtk/gtkcombobox.c: Implement the previous fix in a better way,
2275         small cleanups.
2276
2277 2004-02-28  Hans Breuer  <hans@breuer.org>
2278
2279         * gtk/gtkfilesystemwin32.c : applied patch from
2280         J. Ali Harlow <ali@juiblex.co.uk>, fixes bug #135641
2281
2282 Sat Feb 28 23:30:36 2004  Matthias Clasen  <maclas@gmx.de>
2283
2284         * gtk/gtkcombobox.c (gtk_combo_box_popup): Actually resize the
2285         popup window before popping up.  (#135651)
2286
2287 Sat Feb 28 23:29:35 2004  Matthias Clasen  <maclas@gmx.de>
2288
2289         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
2290         * gtk/gtkcombobox.c (gtk_combo_box_init): Override the default
2291         handler for style_set in class_init instead of connecting to
2292         the signal in init. (noticed by Yosh).
2293
2294 Sat Feb 28 14:48:35 2004  Owen Taylor  <otaylor@redhat.com>
2295
2296         * demos/gtk-demo/main.c (read_line): #ifdef HAVE_FLOCKFILE, 
2297         not #ifndef HAVE_FLOCKFILE. (#135642, J. Ali Harlow)
2298
2299 2004-02-28  Hans Breuer  <hans@breuer.org>
2300
2301         * gtk/gtkfilesystemwin32.c : adapt to add -> insert_bookmark
2302         change. Also merged some crossplatform code from 
2303         gtkfilesystemunix.c
2304         * gtk/gtk.def : updated externals
2305
2306         * gtk/makefile.msc.in : added gtkfilechooserembed.obj
2307
2308 2004-02-28  Hans Breuer  <hans@breuer.org>
2309
2310         * gdk/win32/gdkdnd-win32.c : set current_dest_drag to NULL
2311         when destroying, fixes bug #120007. Also removed the mirrored
2312         ref counting for deprecated gdk_drag_context_<ref|unref>()
2313         cause it wasn't reliable anymore anyway.
2314
2315         * gdk/win32/gdkdisplay-win32.c : fix typo, which should
2316         have broken the win32 build for everyone not using msvc
2317
2318         * gdk/win32/gdkevents-win32.c : WM_GETMINAMXINFO ensure not to
2319         return negative values for ptMaxTrackSize, it caused snapping
2320         windows to their minimum size
2321
2322 Sat Feb 28 01:39:01 2004  Matthias Clasen  <maclas@gmx.de>
2323
2324         * gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Support
2325         switching back to non-gridded mode.  (#135169)
2326
2327 Fri Feb 27 22:29:46 2004  Matthias Clasen  <maclas@gmx.de>
2328
2329         * gtk/gtkwidget.c (gtk_widget_can_activate_accel): Add "Since: 2.4".
2330
2331 Fri Feb 27 18:52:19 2004  Jonathan Blandford  <jrb@redhat.com>
2332
2333         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_style_set):
2334         Whoops.  Didn't mean to commit the size change.
2335
2336 Fri Feb 27 18:46:27 2004  Jonathan Blandford  <jrb@redhat.com>
2337
2338         * gtk/gtkfilechooserembed.h: New private interface to help
2339         negotiate the default size of the widget.  Still a bit buggy, but
2340         better than the old behavior.
2341
2342         * gtk/gtkfilechooserdefault.c: Implement the embed interface.
2343
2344         * gtk/gtkfilechooserwidget.c: Proxy the embed interface.
2345
2346         * gtk/gtkfilechooserdialog.c: Use the embed interface.
2347
2348 2004-02-27  Federico Mena Quintero  <federico@ximian.com>
2349
2350         * gtk/gtkfilesystem.c (gtk_file_system_insert_bookmark): Added a
2351         "position" argument.
2352
2353         * gtk/gtkfilesystem.h (GtkFileSystemError): Added value for 
2354         GTK_FILE_SYSTEM_ERROR_ALREADY_EXISTS.
2355         (struct _GtkFileSystemIface): Added a "position" argument to the
2356         ::insert_bookmark() method.
2357
2358         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_insert_bookmark):
2359         Updated; renamed from gtk_file_system_unix_add_bookmark().  Return
2360         an error if the path already exists in the bookmarks list.
2361         (gtk_file_system_unix_remove_bookmark): Return an error if the
2362         path does not exist in the bookmarks list.
2363
2364         * gtk/gtkfilechooserdefault.c (shortcuts_add_bookmark_from_path):
2365         For now, use gtk_file_system_insert_bookmark() with -1 for the
2366         position.  DnD will come next.
2367
2368 Fri Feb 27 21:42:28 2004  Matthias Clasen  <maclas@gmx.de>
2369
2370         * gtk/gtkcombobox.c (gtk_combo_box_relayout): 
2371         * gtk/gtkcombobox.c (gtk_combo_box_style_set): Simplify, only 
2372         create a new setup if appearance actually changed.
2373         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear): 
2374         * gtk/gtkcombobox.c (gtk_combo_box_get_cell_info): Make 
2375         these more robust.  (#127623, Damon Chaplin)
2376
2377 Fri Feb 27 15:06:00 2004  Jonathan Blandford  <jrb@redhat.com>
2378
2379         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): remove
2380         folder-mode property.
2381
2382         * gtk/gtkfilechooserutils.c
2383         (_gtk_file_chooser_install_properties): remove FOLDER_MODE property.
2384
2385 Thu Feb 26 17:38:40 2004  Manish Singh  <yosh@gimp.org>
2386
2387         * gtk/gtkcombobox.c: Add function declaration for
2388         gtk_combo_box_list_remove_grabs().
2389
2390 Fri Feb 27 02:33:21 2004  Matthias Clasen  <maclas@gmx.de>
2391
2392         * gtk/gtkentry.c (keyval_is_cursor_move): Classifiy Page Up/Down as
2393         cursor move, but not Home and End.
2394
2395         * gtk/gtkentry.c (gtk_entry_completion_key_press): Lets Page Up/Down
2396         jump to the ends of the list, not Home and End - since we're not 
2397         scrolling yet, a "page" is always the complete list.  (#127430, Marco
2398         Pesenti Gritti)
2399
2400 Fri Feb 27 00:39:11 2004  Matthias Clasen  <maclas@gmx.de>
2401
2402         * gtk/gtkcombobox.c (gtk_combo_box_list_destroy): 
2403         * gtk/gtkcombobox.c (gtk_combo_box_menu_destroy): Don't let
2404         the priv pointers dangle.  (#127623, Damon Chaplin)
2405
2406 Thu Feb 26 17:31:34 2004  Manish Singh  <yosh@gimp.org>
2407
2408         * gdk/x11/xsettings-client.c (read_settings): fix ytpo: s/eles/else/
2409
2410 Thu Feb 26 19:53:32 2004  Owen Taylor  <otaylor@redhat.com>
2411
2412         * gdk/x11/xsettings-common.h (xsettings_client_process_event): 
2413         Add xsettings_client_set_grab_func,
2414         Add xsettings_client_set_ungrab_func to the list of renames.
2415
2416 Thu Feb 26 19:48:39 2004  Owen Taylor  <otaylor@redhat.com>
2417
2418         * gdk/x11/xsettings-client.c (read_settings): Fix memory leak
2419         in case of mismatched property type.
2420
2421 Thu Feb 26 18:25:57 2004  Jonathan Blandford  <jrb@gnome.org>
2422
2423         * gtk/gtkfilechooser.h (GtkFileChooserAction): Add two more folder
2424         modes to the enum.
2425
2426         * gtk/gtkfilechooser.c (gtk_file_chooser_set_folder_mode): Remove.
2427         (gtk_file_chooser_get_folder_mode): Remove
2428
2429 Thu Feb 26 17:29:04 2004  Owen Taylor  <otaylor@redhat.com>
2430
2431         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Return
2432         GDK_FILTER_CONTINUE for unhandled message types.
2433
2434         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Allow
2435         multiple filters for the same event type with the standard
2436         "GDK_FILTER_CONTINUE == pretend I wasn't here" semantics.
2437
2438         * gdk/x11/gdkevents-x11.c (gdk_display_add_client_message_filter):
2439         Append to the filter list not prepend, since order now matters.
2440
2441         * gdk/win32/gdkevents-win32.c (gdk_add_client_message_filter): 
2442         Append to the filter list not prepend, since order now matters.
2443         
2444 Thu Feb 26 23:39:07 2004  Matthias Clasen  <maclas@gmx.de>
2445
2446         Fixes for #135333, analysed by Damon Chaplin:
2447         
2448         * gtk/gtkcombobox.c (gtk_combo_box_list_button_pressed): Don't
2449         grab here.
2450         * gtk/gtkcombobox.c (gtk_combo_box_popup): Do the grabs here, 
2451         so that we don't forget to grab when the menu is popped via
2452         keynav.
2453         * gtk/gtkcombobox.c (gtk_combo_box_list_button_released): Don't
2454         ungrab here.
2455         * gtk/gtkcombobox.c (gtk_combo_box_popdown): Do the ungrabs here.
2456
2457 Thu Feb 26 23:26:00 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
2458
2459         * gtk/gtkstatusbar.c (set_grip_cursor): New function. Use resize
2460         cursors for resize grips. (Bug #129621)
2461
2462         * gtk/gtktoolbar.c (gtk_toolbar_get_relief_style): Documentation
2463         fix - patch by Torsten Schoenfeld.
2464
2465         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): don't request
2466         space between the items. (Bug #110775)
2467
2468         * gtk/gtkrc.c (_gtk_rc_init): Provide extra horizontal padding
2469         inside menu items that are inside a menu bar. (Bug #110775)
2470         
2471         * configure.in (HAVE_XCURSOR): Make XCurosr part of GDK_EXTRA_,
2472         not GDK_PACKAGES, to prevent applications from getting linked to
2473         it (Bug #119804)
2474
2475         * gtk/gtkmenubar.c (gtk_menu_bar_size_allocate): Put the vertical
2476         ipadding inside the item. (Bug #61843)
2477
2478 Thu Feb 26 22:56:40 2004  Matthias Clasen  <maclas@gmx.de>
2479
2480         * gtk/gtkwidget.c: Replace gtk_widget_get_mnemonic_widgets() 
2481         by list_mnemonic_widgets() in doc comments as well.
2482
2483 Thu Feb 26 16:36:38 2004  Owen Taylor  <otaylor@redhat.com>
2484
2485         Fixes from Torsten Schoenfeld.
2486
2487         * gtk/gtkwidget.c (gtk_widget_add_mnemonic_label): 
2488         Fix name in doc comment.
2489
2490         * gtk/gtkwidget.h: gtk_widget_list_mnemonic_labels(),
2491         not get_mnemonic_labels.
2492
2493 Thu Feb 26 22:20:44 2004  Matthias Clasen  <maclas@gmx.de>
2494
2495         * gtk/gtkcomboboxentry.h:
2496         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_new_text): New
2497         convenience API to construct simple text combos, implemented by
2498         Damon Chaplin.
2499
2500         * tests/testcombo.c: Use gtk_combo_box_entry_new_text.
2501
2502 Thu Feb 26 22:19:29 2004  Matthias Clasen  <maclas@gmx.de>
2503
2504         * gtk/gtkcombobox.c (gtk_combo_box_new_text): Improve the docs.
2505
2506 Thu Feb 26 15:43:43 2004  Owen Taylor  <otaylor@redhat.com>
2507
2508         * gtk/gtkstyle.[ch]: Export insertion cursor drawing functionality
2509         in a simplified form as gtk_draw_insertion_cursor().
2510         (#99031, request from Alex Larsson)
2511
2512         * gtk/gtktextdisplay.c gtk/gtkentry.c gtk/gtklabel.c:
2513         Adapt to new gtk_draw_insertion_cursor().
2514
2515         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_class_init)
2516         gtk/gtkstyle.c (gtk_style_class_init): Add some missed
2517         Since: 2.4.
2518
2519         * gtk/gtkiconfactory.c (icon_size_settings_changed)
2520           gtk/gtkicontheme.c (do_theme_change)
2521           gtk/gtkrc.c (_gtk_rc_context_get_default_font_name)
2522         * gtk/gtksettings.c (gtk_settings_notify):
2523         _gtk_rc_reset_styles => gtk_rc_reset_styles.
2524
2525 Thu Feb 26 21:52:58 2004  Matthias Clasen  <maclas@gmx.de>
2526
2527         Fixes for #127804 and #134722, Damon Chaplin:
2528         
2529         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_pack_end): 
2530         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_pack_start): 
2531         Ref and sink the cell renderers here.
2532         
2533         * gtk/gtkcombobox.c (gtk_combo_box_finalize): Unref the cell
2534         renderers here, and free attributes and func_data. 
2535
2536 Thu Feb 26 21:41:38 2004  Matthias Clasen  <maclas@gmx.de>
2537
2538         * gtk/gtkrc.c (gtk_rc_reset_styles): Mark as 2.4 API addition.
2539
2540 Thu Feb 26 14:47:22 2004  Dom Lachowicz <cinamod@hotmail.com>
2541
2542         * gtk/gtk.def: Export gtk_rc_reset_styles()
2543
2544 Thu Feb 26 14:47:22 2004  Owen Taylor  <otaylor@redhat.com>
2545
2546         * gtk/gtkrc.[ch]: Export gtk_rc_reset_styles(). 
2547         (Request from Dom Lachowicz, #123769)
2548
2549 Wed Feb 25 19:11:31 2004  Owen Taylor  <otaylor@redhat.com>
2550
2551         * gtk/gtkradiobutton.[ch] gtk/gtkradiomenuitem.[ch]: Add a
2552         ::group-changed signal emitted when the radio button/menu item 
2553         is moved from one group of radio buttons to another. 
2554         (#79563, based partially on a patch from Padraig O'Briain)
2555
2556 Thu Feb 26 13:23:47 2004  Owen Taylor  <otaylor@redhat.com>
2557
2558         * gdk/x11/gdkwindow-x11.c (set_text_property): Use the right
2559         free() function. (#135511, George Bronnikov)
2560
2561 2004-02-26  Federico Mena Quintero  <federico@ximian.com>
2562
2563         * configure.in: Added a comment to inform translators that they
2564         must add .po files to both po/ and po-properties/ when they add
2565         new languages to ALL_LINGUAS.
2566
2567 Wed Feb 25 15:36:50 2004  Owen Taylor  <otaylor@redhat.com>
2568
2569         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text_for_display):
2570         Call g_convert(), not g_convert() with fallback, since Emacs is
2571         happier if we reject the COMPOUND_TEXT request and it can
2572         then ask for UTF-8. (#114527)
2573
2574         * gtk/gtkselection.c (gtk_selection_data_set_text): When
2575         TEXT is requested, if COMPOUND_TEXT fails, fall back to STRING.
2576
2577 Wed Feb 25 22:35:00 2004  Tomasz KÅ‚oczko <kloczek@pld.org.pl>
2578
2579         * cinfigure.in: After changes in G_DEFINE_TYPE minimal required glib
2580         vesion for build gtk+ is now 2.3.3.
2581
2582 Wed Feb 25 16:00:40 2004  Jonathan Blandford  <jrb@gnome.org>
2583
2584         * gtk/gtkfilechooserdefault.c (update_appearance): move the
2585         expander code.
2586
2587 2004-02-25  Danilo Å egan  <dsegan@gmx.net>
2588
2589         * configure.in (ALL_LINGUAS): po-properties/sr@ije.po added, so
2590         adding back sr@ije.
2591
2592 2004-02-25  Federico Mena Quintero  <federico@ximian.com>
2593
2594         * configure.in (ALL_LINGUAS): Remove sr@ije until po-properties/
2595         is fixed for it.
2596
2597 Wed Feb 25 12:44:49 2004  Owen Taylor  <otaylor@redhat.com>
2598
2599         * gtk/gtkstyle.[ch]: Make realize and unrealize signals. (#73310)
2600
2601 Wed Feb 25 12:21:32 2004  Owen Taylor  <otaylor@redhat.com>
2602
2603         * gtk/gtkwidget.[ch] gtk/gtklabel.c: Patch from
2604         Padraig O'Briain to add gtk_widget_add/remove_mnemonic_label,
2605         gtk_widget_get_mnemonic_labels(). (#103456)
2606
2607 2004-02-25  Danilo Å egan  <dsegan@gmx.net>
2608
2609         * configure.in: Added sr@ije to ALL_LINGUAS.
2610
2611 Wed Feb 25 09:46:34 2004  Owen Taylor  <otaylor@redhat.com>
2612
2613         * gtk/gtkstyle.c (gtk_style_finalize): Free 
2614         style->icon_factories (#130128)
2615
2616 Wed Feb 25 03:52:58 2004  Jonathan Blandford  <jrb@gnome.org>
2617
2618         * gtk/gtkpathbar.c: use gtk_widget_push/pop_composite_child around
2619         internal buttons.
2620
2621         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
2622         rename some widgets to make it clear where they are packed.
2623         (update_appearance): New function to handle all the 'logic' of
2624         layout in one place.  We aren't trying to keep all our properties
2625         in sync.
2626         (gtk_file_chooser_default_set_property): use update_appearance()
2627
2628 2004-02-24  Federico Mena Quintero  <federico@ximian.com>
2629
2630         * gtk/gtkfilechooserdefault.c (shortcuts_model_create): Renamed
2631         from create_shortcuts_model().
2632         (struct _GtkFileChooserDefault): Renamed the shortcuts_tree field
2633         to shortcuts_list.
2634         (shortcuts_list_create): Renamed from shortcuts_tree_create().
2635         (create_file_list): Enable the tree view as a model drag source.
2636         (create_folder_tree): Likewise.
2637
2638         * gtk/gtkfilesystemmodel.c (_gtk_file_system_model_get_type):
2639         Register the drag source interface.
2640         (drag_source_iface_init): New function.
2641         (drag_source_row_draggable): New function.
2642         (drag_source_drag_data_get): New function.
2643
2644 Tue Feb 24 19:12:07 2004  Owen Taylor  <otaylor@redhat.com>
2645
2646         * === Released 2.3.4 ===
2647
2648         * configure.in: Bump version to 2.3.4, fix broken
2649         gtk_binary_age value by copying the GLib logic
2650         to automatically set it to the right values.
2651
2652 Wed Feb 25 00:13:24 2004  Matthias Clasen  <maclas@gmx.de>
2653
2654         * gtk/gtkcombobox.c (gtk_combo_box_menu_row_changed): 
2655         * gtk/gtkcombobox.c (gtk_combo_box_list_row_changed): 
2656         Don't resize priv->cell_view if it is NULL.  (#127804, 
2657         Damon Chaplin)
2658         
2659 Wed Feb 25 00:06:50 2004  Matthias Clasen  <maclas@gmx.de>
2660
2661         * gtk/gtkcombobox.c: Add a comment about the different 
2662         modi of this widget. Get rid of priv->hbox, and some other
2663         cleanups. Make sure that gtk_combo_box_unset_model() is 
2664         always called before setting up a different mode. 
2665
2666 Tue Feb 24 17:51:49 2004  Owen Taylor  <otaylor@redhat.com>
2667
2668         * gtk/gtkaccellabel.c (gtk_accel_label_refetch): Convert
2669         underscores in keyval names to spaces. (#131480)
2670
2671 Tue Feb 24 17:35:59 2004  Owen Taylor  <otaylor@redhat.com>
2672
2673         * m4macros/gtk-2.0.m4: Add some quotes around ***. (#130073,
2674         Uwe Zeisberger)
2675
2676 Tue Feb 24 14:45:03 2004  Owen Taylor  <otaylor@redhat.com>
2677
2678         * === Released 2.3.3 ===
2679
2680         * configure.in: Version 2.3.3, interface age 0.
2681
2682         * NEWS: Finish updates for 2.3.3.
2683
2684 2004-02-24  Federico Mena Quintero  <federico@ximian.com>
2685
2686         * gtk/gtkfilechooserdefault.c (save_widgets_create): Use a plain
2687         GtkEntry for the filename, not a GtkFileChooserEntry.
2688         (update_chooser_entry): Use gtk_entry_set_text() rather than
2689         _gtk_file_chooser_entry_set_file_part().
2690         (gtk_file_chooser_default_set_current_name): Likewise.
2691         (gtk_file_chooser_default_set_current_folder): Don't set the base
2692         folder of the entry, and don't call update_chooser_entry().
2693         (gtk_file_chooser_default_get_paths): Use the plain entry.
2694         (save_widgets_create): Store the "Save in Folder" label in the
2695         impl structure.
2696         (expander_activate_cb): Set the sensitivity of the label and
2697         combo.
2698         (save_widgets_create): Connect to "notify::expanded" rather than
2699         "activate" on the expander.
2700         (expander_changed_cb): Renamed from expander_activate_cb().  Flip
2701         the conditions again...
2702
2703 Tue Feb 24 14:43:07 2004  Jonathan Blandford  <jrb@gnome.org>
2704
2705         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): only draw the sort
2706         column as different if there are 3 or more visible columns.
2707
2708 2004-02-24  Anders Carlsson  <andersca@gnome.org>
2709
2710         * gtk/gtkfilechooserdefault.c: (shortcuts_insert_separator):
2711         Fix compilation (#135278, Padraig O'Briain).
2712         
2713 2004-02-24  Anders Carlsson  <andersca@gnome.org>
2714
2715         * gtk/gtkfilechooserdefault.c: (shortcuts_append_desktop):
2716         Translate the desktop label.
2717         
2718         (shortcuts_get_index), (shortcuts_add_bookmarks),
2719         (shortcuts_insert_separator), (create_shortcuts_model):
2720         Don't show the bookmark separator if there are no bookmarks.
2721         
2722 Tue Feb 24 01:41:30 2004  Jonathan Blandford  <jrb@gnome.org>
2723
2724         * gtk/gtkfilechooserdefault.c (location_popup_handler): Make the
2725         dialog look like the nautilus dialog.
2726         (expander_activate_cb): get the order correct.
2727
2728 2004-02-23  Federico Mena Quintero  <federico@ximian.com>
2729
2730         * gtk/gtkfilechooserdefault.c (list_selection_changed): Call
2731         bookmarks_check_add_sensitivity().
2732         (shortcut_exists): New helper function; moved the testing code
2733         over from bookmarks_check_add_sensitivity().
2734         (bookmarks_check_add_sensitivity): Check the contents of the
2735         selection in the file/folder list.  Use shortcut_exists().
2736         (shortcuts_add_bookmark_from_path): Don't insert the bookmark if
2737         the path is already in the shortcuts list.
2738         (add_bookmark_button_clicked_cb): Add the bookmarks from the list
2739         selection or from the current folder, as appropriate.
2740
2741 Mon Feb 23 21:09:06 2004  Jonathan Blandford  <jrb@gnome.org>
2742
2743         * gtk/gtkfilechooserdefault.c (shortcuts_pane_create): Add
2744         mnemonics.  Sorry translators.
2745
2746 Tue Feb 24 02:24:58 2004  Matthias Clasen  <maclas@gmx.de>
2747
2748         * NEWS: Additions. This should be complete for the main ChangeLog
2749         now, still need to sift through gdk-pixbuf, docs, and translations.
2750
2751 Mon Feb 23 19:57:45 2004  Jonathan Blandford  <jrb@gnome.org>
2752
2753         * gtk/gtkcellrendererseptext.c (gtk_cell_renderer_sep_get_size):
2754         Add a get_size implementation so that we are no longer the same
2755         height as text.
2756
2757 2004-02-24  Anders Carlsson  <andersca@gnome.org>
2758
2759         * gtk/gtkfilechooserdefault.c: (shortcuts_insert_path),
2760         (shortcuts_remove_rows), (shortcuts_append_bookmarks),
2761         (create_shortcuts_model), (shortcuts_tree_create),
2762         (gtk_file_chooser_default_remove_shortcut_folder):
2763         Improve bookmark list rendering by controlling the visibility
2764         of the pixbuf cell so that it will be invisible for the separator
2765         row, also use a list store instead of a tree store for the model
2766         so we won't get unnecessary space for an expander.
2767         
2768 Tue Feb 24 01:08:27 2004  Matthias Clasen  <maclas@gmx.de>
2769
2770         * gtk/gtkcombobox.c: Add a destroy implementation in order to
2771         set priv->cell_view to NULL before finalize stumbles over the 
2772         dangling pointer. This big array of pointers into the widget 
2773         tree in GtkComboBoxPrivate is really fragile and should be
2774         cleaned up.
2775
2776 Mon Feb 23 17:52:43 2004  Jonathan Blandford  <jrb@gnome.org>
2777
2778         * gtk/gtkfilechooserdefault.c (main_paned_create): use a size
2779         group when allocating space for the buttons at the bottom just in
2780         case.  Also, move the filter to below the file list.
2781
2782 Mon Feb 23 16:52:12 2004  Jonathan Blandford  <jrb@gnome.org>
2783
2784         * gtk/gtkfilechooserdefault.c
2785         (gtk_file_chooser_default_class_init): Seth was confused by
2786         keybindings.  They should be Alt, not Ctl.  Also, A-Home should go
2787         home, not up.
2788
2789 Mon Feb 23 15:23:23 2004  Jonathan Blandford  <jrb@gnome.org>
2790
2791         * gtk/gtkpathbar.c (gtk_path_bar_set_path): Display the root a bit
2792         more cleanly.
2793
2794         * gtk/gtkpathbar.h (struct _GtkPathBarClass): fix the signal.
2795
2796 2004-02-23  Federico Mena Quintero  <federico@ximian.com>
2797
2798         Rework the user interface of the file chooser, as per 
2799         Seth Nickell's design.
2800
2801         * gtk/gtkfilechooserdefault.c
2802         (gtk_file_chooser_default_class_init): Add binding signals and bindings:
2803                 "location-popup" - C-l
2804                 "up-folder"      - C-Up
2805                 "home-folder"    - C-Home
2806         (up_folder_handler): New function; moved the code from up_button_clicked().
2807         (up_button_clicked_cb): Call up_folder_handler().
2808         (home_folder_handler): New function.
2809         (location_popup_handler): New function.
2810         (struct _GtkFileChooserDefault): Add an hpaned field.
2811         (gtk_file_chooser_default_set_current_name): Check that we are in
2812         Save mode.
2813         (save_widgets_create): New function, create the widgets specific
2814         to Save mode.
2815         (main_paned_create): New function, create the hpaned's widgets here.
2816         (gtk_file_chooser_default_constructor): Create the open and save
2817         widgets, and show only one set.
2818         (gtk_file_chooser_default_set_property): Show/hide the save widgets.
2819         (gtk_file_chooser_default_get_paths): Only pay attention to the
2820         entry in Save mode.
2821         (update_chooser_entry): Update the entry only in Save mode.
2822         (entry_activate): Removed.
2823
2824 Mon Feb 23 11:20:34 2004  Owen Taylor  <otaylor@redhat.com>
2825
2826         * configure.in: Remove the configure.in check for fontconfig 
2827         entirely; it's not needed, since PangoXft implies that sufficiently
2828         new fontconfig is present.
2829
2830 Mon Feb 23 02:26:53 2004  Jonathan Blandford  <jrb@gnome.org>
2831
2832         * gtk/gtkpathbar.c (gtk_path_bar_finalize):
2833         for (i = 0; i < 10; i++)
2834           g_print ("I will compile before committing.\n");
2835
2836 Mon Feb 23 02:08:42 2004  Jonathan Blandford  <jrb@gnome.org>
2837
2838         * gtk/gtkfilechooserdefault.c (file_pane_create): Use the
2839         GtkPathBar by default now.
2840
2841         * gtk/gtkpathbar.c (gtk_path_bar_set_path): Correctly set the
2842         current path from the path.
2843         (gtk_path_bar_class_init): new signal
2844         (button_clicked_cb): emit the signal when we're selected.
2845         (gtk_path_bar_clear_buttons): Fix a crasher when we weren't
2846         clearing thr first_scrolled_button.
2847
2848 Mon Feb 23 02:26:15 2004  Matthias Clasen  <maclas@gmx.de>
2849
2850         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate): Fix the 
2851         allocation for the toggle button so that it actually shows up 
2852         in LTR list mode.
2853
2854         * gtk/gtkcombobox.c (gtk_combo_box_set_column_span_column): 
2855         * gtk/gtkcombobox.c (gtk_combo_box_set_row_span_column): 
2856         * gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Add
2857         notification, and avoid excessive relayouting. 
2858
2859 Mon Feb 23 00:38:21 2004  Matthias Clasen  <maclas@gmx.de>
2860
2861         Fix bug 134982, reported by Morten Welinder:
2862         
2863         * gtk/gtkpathbar.c (gtk_path_bar_destroy): 
2864         * gtk/gtktooltips.c (gtk_tooltips_destroy): 
2865         * gtk/gtkinvisible.c (gtk_invisible_destroy): Chain up to the 
2866         parent's ::destroy handler.
2867         
2868         * gdk/gdkdisplay.c (gdk_display_dispose): Chain up to the 
2869         parent's ::dispose handler.
2870
2871 Sat Feb 21 19:09:55 2004  Manish Singh  <yosh@gimp.org>
2872
2873         * gtk/gtksettings.c (gtk_default_substitute): Guard the FC_HINT_STYLE
2874         stuff with an #ifdef, so we still build with most fontconfig versions.
2875
2876 Sun Feb 22 03:03:29 2004  Matthias Clasen  <maclas@gmx.de>
2877
2878         * gtk/gtkaction.c: (gtk_action_finalize):
2879         * gtk/gtkclipboard.c: (gtk_clipboard_finalize):
2880         * gtk/gtkentrycompletion.c: (gtk_entry_completion_class_init),
2881         (gtk_entry_completion_finalize):
2882         * gtk/gtkfilechooserwidget.c: (gtk_file_chooser_widget_finalize):
2883         * gtk/gtkfilesystemmodel.c: (gtk_file_system_model_class_init),
2884         (gtk_file_system_model_finalize):
2885         * gtk/gtkicontheme.c: (gtk_icon_theme_class_init),
2886         (gtk_icon_theme_finalize):
2887         * gtk/gtktextchild.c: (gtk_text_child_anchor_finalize):
2888         * gtk/gtkuimanager.c: (gtk_ui_manager_class_init),
2889         (gtk_ui_manager_finalize):
2890         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_finalize):
2891         Add chains to the parent's ::finalize() handler  (#134901, Morten Welinder,
2892         patch by Jan Arne Petersen)
2893
2894 Sun Feb 22 02:10:34 2004  Matthias Clasen  <maclas@gmx.de>
2895
2896         * gtk/gtkentrycompletion.c (gtk_entry_completion_default_completion_func): 
2897         Don't crash if item is NULL.  (#131542, Dan Damian)
2898
2899 Sun Feb 22 02:04:03 2004  Matthias Clasen  <maclas@gmx.de>
2900
2901         * configure.in: Add a check for a new enough fontconfig, since
2902         we picked up a direct dependency on it with the Xft settings.
2903
2904 Sun Feb 22 00:23:40 2004  Matthias Clasen  <maclas@gmx.de>
2905
2906         Bug 112647 (Bill Haneman, patch by Narayana Pattipati):
2907         
2908         * gtk/gtkcheckmenuitem.c: Introduce a new style property 
2909         indicator_size and use it instead of the hardcoded value.
2910         
2911         * gtk/gtkmenu.c (gtk_menu_size_request): Make sure each menu 
2912         item gets enough vertical space for the label and the indicator.
2913
2914 Sat Feb 21 20:20:11 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
2915
2916         * gtk/gtksettings.c (gtk_settings_class_init): Use P_ instead of
2917         _ for the new Xft settings.
2918
2919 Sat Feb 21 20:09:53 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
2920
2921         Bug 130790 (Federico Mena Quintero, Owen Taylor)
2922         
2923         * gdk/x11/gdkevents-x11.c: Add Xft XSETTINGS
2924
2925         * gtk/gtksettings.c: Add new GtkSettings corresponding to the Xft
2926         XSETTINGS
2927         
2928 Sat Feb 21 19:18:26 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
2929
2930         Bug 132502
2931         
2932         * gtk/gtkmenu.c (gtk_menu_motion_notify): Make sure we pop down
2933         if we enter a non-selectable menu item.
2934
2935         * gtk/gtkmenu.c (gtk_menu_leave_notify): Don't pop a submenu
2936         when the user has left the item.
2937
2938 Sat Feb 21 17:57:35 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
2939
2940         * gtk/docs: Commit auto-generated changes
2941
2942 Fri Feb 20 18:20:22 2004  Jonathan Blandford  <jrb@gnome.org>
2943
2944         * gtk/gtkfilechooserdefault.c: conditional compile for GtkPathBar
2945
2946         * gtk/gtkpathbar.c (gtk_path_bar_size_allocate): Clean up
2947         allocation code.  Works fully in RTL languages, I think.
2948         (gtk_path_bar_scroll_up): Scroll up.
2949         (gtk_path_bar_scroll_down): Scroll down.
2950
2951 2004-02-20  Christian Rose  <menthos@menthos.com>
2952
2953         * configure.in: Added "en_CA" to ALL_LINGUAS.
2954
2955 2004-02-20  Michael Meeks  <michael@ximian.com>
2956
2957         * gtk/gtktoolitem.c (gtk_tool_item_property_notify): impl.
2958         (gtk_tool_item_class_init): hook it up.
2959         (gtk_tool_item_set_proxy_menu_item): synchronize sensitivity.
2960
2961         * gtk/gtktoolbutton.c (gtk_tool_button_property_notify):
2962         chain to parent, fix strcmp bug.
2963
2964         * tests/testtoolbar.c (main): re-arrange widgets to allow
2965         more overflowing toolbar goodness.
2966
2967 2004-02-20  Alexander Larsson  <alexl@redhat.com>
2968
2969         * gtk/gtkfilechooserdefault.c: (shortcuts_append_desktop):
2970         Desktop directory is not translated.
2971         (set_tree_model):
2972         There might not be volumes for all paths.
2973         * gtk/gtkfilechooserwidget.c:
2974         (gtk_file_chooser_widget_constructor):
2975         Use gtk_file_chooser_set_current_folder to set cwd.
2976
2977 Thu Feb 19 19:58:53 2004  Jonathan Blandford  <jrb@gnome.org>
2978
2979         * gtk/gtkpathbar.[ch]: New widget to handle the path in the
2980         fileselector implementation.  Not hooked up to anything yet.
2981
2982         * gtk/Makefile.am: support the path bar.
2983
2984 Fri Feb 20 00:21:38 2004  Matthias Clasen  <maclas@gmx.de>
2985
2986         * gtk/gtkstyle.c (gtk_default_draw_handle): 
2987         (gtk_default_draw_box): Make the paned handles gray when the the 
2988         widget is_focus() but not HAS_FOCUS().  (#122751, Soeren Sandmann)
2989
2990 Thu Feb 19 23:41:06 2004  Matthias Clasen  <maclas@gmx.de>
2991
2992         Fixes for #82099:
2993         
2994         * gdk/x11/gdkevents-x11.c: Introduce new XSettings "Gtk/ButtonImages"
2995         and "Gtk/MenuImages" and map them to "gtk-button-images" and 
2996         "gtk-menu-images".
2997
2998         * gtk/gtkimagemenuitem.c: Add a boolean setting "gtk-menu-images" and 
2999         use it to set the visibility of the embedded image.
3000
3001         * gtk/gtkbutton.c: Add a boolean setting "gtk-button-images" and use
3002         it to set the visibility of an embedded image.
3003
3004 Thu Feb 19 21:26:10 2004  Matthias Clasen  <maclas@gmx.de>
3005
3006         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
3007         Give each radio action its own value.  (#134889, Paolo Borelli)
3008
3009 2004-02-19  Federico Mena Quintero  <federico@ximian.com>
3010
3011         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_finalize):
3012         Chain to the parent's ::finalize() handler.  Fixes #134885; caught
3013         by Jan Arne Petersen.
3014
3015 2004-02-19  Mark McLoughlin  <mark@skynet.ie>
3016
3017         Make the entire expander widget width prelight as suggested
3018         by Seth in bug #134263.
3019
3020         * gtk/gtkexpander.c:
3021         (gtk_expander_paint_prelight): impl.
3022         (gtk_expander_paint): use it.
3023         (gtk_expander_redraw_expander): don't only redraw the
3024         arrow when prelit.
3025
3026 2004-02-19  Alexander Larsson  <alexl@redhat.com>
3027
3028         * gtk/gtkfilechooser.c: (gtk_file_chooser_class_init):
3029         * gtk/gtkfilechooserutils.c:
3030         * gtk/gtkfilechooserutils.h:
3031         * gtk/gtkfilechooserwidget.c:
3032         Remove old file-system property.
3033         Add new file-system-backend string property
3034         
3035         * gtk/gtkfilechooserdefault.[ch]:
3036         Handle the file-system-backend property
3037         
3038         * gtk/gtkfilechooserdialog.[ch]:
3039         (gtk_file_chooser_dialog_new_with_backend):
3040         Remove old file-system property.
3041         Add new file-system-backend string property
3042         Add new function gtk_file_chooser_dialog_new_with_backend
3043         
3044         * gtk/gtkfilesystem.c: 
3045         * gtk/gtkfilesystem.h:
3046         Add filesystem module support.  
3047
3048 2004-02-18  Federico Mena Quintero  <federico@ximian.com>
3049
3050         * gtk/gtkfilechooserdefault.c (shortcuts_tree_create): Renamed
3051         from create_shortcuts_tree().
3052         (shortcuts_pane_create): New function.
3053         (button_new): Renamed from toolbar_button_new().
3054         (shortcuts_pane_create): New function, create the whole shortcuts
3055         pane here.
3056         (current_folder_create): Renamed from toolbar_create().  Don't
3057         create the bookmarks buttons here.
3058         (file_pane_create): New function.
3059         (gtk_file_chooser_default_constructor): Use the new helper
3060         functions, and don't use an extra vbox as GtkFileChooserDefault is
3061         already a vbox.
3062
3063 Thu Feb 19 01:39:30 2004  Matthias Clasen  <maclas@gmx.de>
3064
3065         * gtk/gtkuimanager.h: 
3066         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Add
3067         default handlers for all signals; for consistency and for the
3068         benefit of language bindings which still rely on header parsing
3069         to find the signals.  (#134269, Jeroen Zwartepoorte)
3070         
3071 Thu Feb 19 00:45:02 2004  Matthias Clasen  <maclas@gmx.de>
3072
3073         * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows): 
3074         Improve the efficiency here by prepending on the list and reverting
3075         it after the loop.  (#134435, Christian Biere)
3076
3077 Thu Feb 19 00:32:21 2004  Matthias Clasen  <maclas@gmx.de>
3078
3079         * gtk/gtkplug.c (_gtk_plug_remove_from_socket): Avoid errors when
3080         removing the plug from the socket.  (#128546, Christopher Blizzard)
3081
3082 Thu Feb 19 00:09:35 2004  Matthias Clasen  <maclas@gmx.de>
3083
3084         * gtk/gtkradiomenuitem.h:
3085         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_from_widget): 
3086         (gtk_radio_menu_item_new_with_label_from_widget): 
3087         (gtk_radio_menu_item_new_with_mnemonic_from_widget): New
3088         convenience functions analogous to similar API on GtkRadioButton.
3089         (#51700, Vitaly Tishkov, patch by Soeren Sandmann)
3090
3091 Wed Feb 18 17:53:27 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3092
3093         * gdk/gdkwindow.c (gdk_window_get_bg_gc): Use a scratch GC in the
3094         case where the background is a solid color.
3095         (gdk_window_clear_backing_rect): Reset the clip region after use.
3096
3097         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Go
3098         back to using a scratch GC. Pointed out by Owen Taylor
3099         
3100         * gdk/gdkdraw.c (gdk_drawable_real_draw_pixbuf): Only use a
3101         scratch GC if the passed-in one is NULL
3102
3103 Wed Feb 18 14:27:08 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3104
3105         * gdk/gdkwindow.c (gdk_window_get_composite_drawable): Reset clip
3106         region back to NULL on cached GC (rest of #134728)
3107
3108 Wed Feb 18 13:28:57 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3109
3110         Fix bug reported by Nam SungHyun (#134728)
3111         
3112         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_threshold_alpha):
3113         Don't use a cached GC here since the function needs to modify the
3114         foreground color.
3115
3116         * gdk/gdkwindow.c (gdk_window_end_paint): Reset clip region back
3117         to NULL on the cached GC.
3118
3119 2004-02-17  Federico Mena Quintero  <federico@ximian.com>
3120
3121         * gtk/gtkfilechooserdialog.c
3122         (gtk_file_chooser_dialog_style_set): Use HIG-compliant spacings.
3123         This sucks a lot.
3124
3125 Wed Feb 18 02:03:47 2004  Matthias Clasen  <maclas@gmx.de>
3126
3127         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Document some
3128         peculiarities of the ::delete_range signal.  (#132135, Grant Gayed)
3129
3130 Wed Feb 18 01:44:59 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3131
3132         GC caching, bug #125645 (based on patch by Brian Cameron)
3133         
3134         * gdk/gdkscreen.h (struct _GdkScreen): Add GC cache
3135         * gdk/gdkscreen.c (gdk_screen_dispose): New function. Unref the
3136         cached GC's here.
3137         * gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): New function to
3138         get a scratch gc.
3139         * gdk/gdkinternals.h: Declare the function here
3140
3141         * gdk/gdkdraw.c (gdk_drawable_real_draw_pixbuf): Use
3142         _gdk_drawable_get_scratch_gc() instead of creating a new GC.
3143         * gdk/x11/gdkgeometry-x11.c (gdk_window_copy_area_scroll): same
3144         * gdk/x11/gdkdrawable-x11.c (draw_with_images): same
3145         * gdk/gdkwindow.c (gdk_window_get_composite_drawable): same
3146         * gdk/gdkwindow.c (gdk_window_end_paint): same
3147         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf): same
3148         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_threshold_alpha): same
3149         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_pixmap_and_mask_for_colormap): same
3150
3151 Tue Feb 17 23:28:33 2004  Matthias Clasen  <maclas@gmx.de>
3152
3153         * gtk/gtkmenu.c (gtk_menu_init): ...and don't forget to initalize
3154         priv->columns to 1.
3155
3156 Tue Feb 17 23:11:21 2004  Matthias Clasen  <maclas@gmx.de>
3157
3158         * gtk/gtkmenu.c (gtk_menu_do_remove): Make sure that we keep
3159         priv->columns >= 1 even for empty menus, since we divide by it
3160         somewhere else.  (#133428, Vincent Noel)
3161
3162 Tue Feb 17 23:02:58 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3163
3164         Fix for #119722, reported by Olexiy Avramchenko, patch by Owen
3165         Taylor.
3166
3167         * gdk/x11/gdkprivate-x11.h (struct _GdkGCX11): Add a depth field
3168
3169         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Keep track of the GC's
3170         depth.
3171
3172         * gdk/x11/gdkgc-x11.c (_gdk_gc_x11_get_fg_xft_color): First query
3173         the colormap, if no colormap, special case depth 1, 
3174
3175         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_get_fg_picture): Use
3176         _gdk_gc_x11_get_fg_xft_color() to get the foreground color.
3177
3178         * gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_get_xft_draw):
3179         Special-case bitmaps without a colormap.
3180
3181         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_pixbuf): Use inherited
3182         draw_pixbuf() implementation in the bitmap case.
3183
3184 2004-02-17  Mark McLoughlin  <mark@skynet.ie>
3185
3186         * modules/input/Makefile.am: only reference input method
3187         modules we've actually built. Fixes re-build failure with
3188         stale hangul module lying aroung. Bug #134518.
3189
3190 Mon Feb 16 19:13:21 2004  Owen Taylor  <otaylor@redhat.com>
3191
3192         * gdk/gdkdraw.c: Revert last commit, please don't commit patches
3193         without approval, this isn't the right way to do it.
3194
3195 2004-02-16  DindinX  <david@dindinx.org>
3196
3197         * gdk/gdkdraw.c (gdk_draw_segments): don't try to draw more than 32767
3198         segments at a time, since XDrawSegments cannot handle more than this.
3199
3200         fixes bug #122026.
3201         
3202 Mon Feb 16 18:26:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3203
3204         * gtk/gtktoolbar.c (gtk_toolbar_set_child_property): Call
3205         gtk_tool_item_set_expand(), not gtk_tool_item_set_homogeneous()
3206         in the CHILD_PROP_EXPAND branch. (#134543, Damon Chaplin)
3207
3208 Mon Feb 16 00:04:46 2004  Matthias Clasen  <maclas@gmx.de>
3209
3210         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_*): 
3211         Split declaration and assignment of combo_box.
3212         
3213         * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Remove a 
3214         pointless cast
3215
3216 Sun Feb 15 22:08:53 2004  Matthias Clasen  <maclas@gmx.de>
3217
3218         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Add 
3219         deprecation note pointing people to GtkComboBox.
3220
3221 Sun Feb 15 02:49:45 2004  Matthias Clasen  <maclas@gmx.de>
3222
3223         * gtk/gtktreednd.c: 
3224         * gtk/gtktreeview.c: Document the tree DND API.
3225
3226         * gtk/gtktreeview.c (gtk_tree_view_unset_rows_drag_source): 
3227         Call gtk_drag_source_unset().  
3228         
3229 Sun Feb 15 00:49:59 2004  Matthias Clasen  <maclas@gmx.de>
3230
3231         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_class_init): 
3232         Make stock_size an uint property, to allow custom icon 
3233         sizes. Also clarify the blurb.  (#130047, Erik Grinaker)
3234
3235 Sat Feb 14 11:05:26 2004  Manish Singh  <yosh@gimp.org>
3236
3237         * configure.in: Remove unnecessary STRIP_* definitions, and GNU
3238         make check.
3239
3240 2004-02-13  Federico Mena Quintero  <federico@ximian.com>
3241
3242         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_add_bookmark):
3243         Duh, duh, duh!  Don't bail out if the bookmarks file doesn't exist
3244         the very first time you try to save one.
3245
3246 2004-02-13  Federico Mena Quintero  <federico@ximian.com>
3247
3248         Fix #129020.
3249
3250         * gtk/gtkfilechooserdialog.c
3251         (set_default_size): New function, sets a reasonable default size
3252         for the window.
3253         (gtk_file_chooser_dialog_realize): New function, call
3254         set_default_size().
3255         (gtk_file_chooser_dialog_style_set): Likewise.
3256         (gtk_file_chooser_dialog_screen_changed): Likewise.
3257
3258         * tests/testfilechooser.c (main): Don't set a default size for the
3259         dialog.
3260
3261 Sat Feb 14 00:05:18 2004  Matthias Clasen  <maclas@gmx.de>
3262
3263         * gtk/gtktreemodelfilter.c (bsearch_elt_with_offset): 
3264         Use do instead of while.  (#134031, Morten Welinder);
3265
3266 Sat Feb 14 00:00:52 2004  Matthias Clasen  <maclas@gmx.de>
3267
3268         * configure.in: Suppress xsltproc and xmlcatalog checks
3269         if enable_man=no.  (#134162, Julio M. Merino Vidal)
3270
3271 Fri Feb 13 23:54:48 2004  Matthias Clasen  <maclas@gmx.de>
3272
3273         * configure.in: Remove checks for sgml2html. It was once
3274         used for building the linuxdoc version of the tutorial.
3275         Nowadays, we use db2html.  (#134164, Julio M. Merino Vidal)
3276
3277 Fri Feb 13 08:17:43 2004  Owen Taylor  <otaylor@redhat.com>
3278
3279         Fix various compilation problems (#134312, David
3280         Hawthorne)
3281
3282         * gtk/gtkscale.c (gtk_scale_get_layout_offsets): Use 
3283         g_return_if_fail(), not g_return_val_if_fail().
3284
3285         * gtk/gtkvscale.c (gtk_vscale_get_layout_offsets): 
3286         * gtk/gtkhscale.c (gtk_hscale_get_layout_offsets): Use 
3287         g_return_if_reached(), not g_return_val_if_reached().
3288         
3289         * gtk/gtkvscale.c (gtk_vscale_expose): Fix the types
3290         of some parameters.
3291
3292         * gtk/gtkhscale.c (gtk_hscale_get_layout_offsets): Remove
3293         extra 'scale' parameter.
3294
3295 Thu Feb 12 21:58:20 2004  Owen Taylor  <otaylor@redhat.com>
3296
3297         Various reentrancy fixes for widgets being destroyed
3298         out of focus-out-event. (#128821, Grant Gayed)
3299
3300         * gtk/gtkwindow.c (_gtk_window_unset_focus_and_default): 
3301         Ref window and widget over callbacks.
3302
3303         * gtk/gtkwidget.c (gtk_widget_hide)
3304           gtk/gtkwidget.c (gtk_widget_set_child_visible):
3305         Ref the widget before calling _gtk_window_unset_focus_and_default(),
3306         since that can call user callbacks.
3307
3308         * gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows):
3309         Do nothing if the widget isn't realized.
3310
3311 Fri Feb 13 01:31:44 2004  Matthias Clasen  <maclas@gmx.de>
3312
3313         * gtk/gtkbutton.c (_gtk_button_paint): Don't draw bevels around
3314         active, RELIEF_NONE buttons that aren't depressed. This improves
3315         the appearance of buttons in notebook tabs.  (#109213, reported
3316         by Benjamin Otte, patch by Rodney Dawes)
3317
3318 Fri Feb 13 01:06:08 2004  Matthias Clasen  <maclas@gmx.de>
3319
3320         * demos/gtk-demo/main.c (read_line): Protect getc_unlocked() by 
3321         HAVE_FLOCKFILE in all cases.  (#134205, Julio M. Merino Vidal)
3322
3323 Fri Feb 13 00:54:59 2004  Matthias Clasen  <maclas@gmx.de>
3324
3325         Fix for #104811, Padraig O'Briain:
3326
3327         * gtk/gtkscale.h:
3328         * gtk/gtkscale.c (_gtk_scale_clear_layout): 
3329         * gtk/gtkscale.c (gtk_scale_get_layout_offsets): 
3330         * gtk/gtkscale.c (gtk_scale_get_layout): New functions to determine the
3331         text and its position from a GtkScale, to make it more accessible. 
3332         * gtk/gtkhscale.c (gtk_hscale_get_layout_offsets):
3333         * gtk/gtkvscale.c (gtk_vscale_get_layout_offsets): Implementations of the 
3334         new GtkScale vfunc.
3335
3336 Thu Feb 12 17:59:52 2004  Owen Taylor  <otaylor@redhat.com>
3337
3338         * gtk/gtkicontheme.c (gtk_icon_theme_get_search_path): 
3339         Remove an extraneous + 1 (#134015, Torsten Schoenfeld)
3340
3341 Thu Feb 12 23:55:08 2004  Matthias Clasen  <maclas@gmx.de>
3342
3343         * gtk/gtktooltips.h:
3344         * gtk/gtktooltips.c (gtk_tooltips_get_info_from_tip_window): New 
3345         function to improve the accessibility of tooltips.  (#114851, 
3346         Padraig O'Briain)
3347
3348 Thu Feb 12 23:16:04 2004  Matthias Clasen  <maclas@gmx.de>
3349
3350         * gtk/gtkcombobox.c (gtk_combo_box_popup): 
3351         * gtk/gtkcombobox.c (gtk_combo_box_popdown): Make these public and
3352         add docs.  (#132847)
3353
3354 Thu Feb 12 11:05:16 2004  Manish Singh  <yosh@gimp.org>
3355
3356         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Assign xtype using
3357         gdk_x11_atom_to_xatom_for_display () when type != GDK_NONE.
3358
3359         * gtk/gtkselection.c (_gtk_selection_request): Use GDK_NONE in
3360         gdk_property_get call instead of 0.
3361
3362         * docs/reference/gdk/tmpl/properties.sgml: Document the above
3363         as GDK_NONE instead of simply 0.
3364
3365 Thu Feb 12 15:46:26 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3366
3367         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Fix up item_area
3368         correctly in RTL mode. (#133984, patch from Semion Chichelnitsky).
3369
3370 Thu Feb 12 02:22:02 2004  Matthias Clasen  <maclas@gmx.de>
3371
3372         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_set_modify_func): 
3373         Correct the docs.
3374
3375 Thu Feb 12 01:17:01 2004  Matthias Clasen  <maclas@gmx.de>
3376
3377         * gtk/gtktreeview.c (gtk_tree_view_enable_model_drag_source): Call
3378         gtk_drag_source_set(), so that things like gtk_drag_set_icon_*() work
3379         for automatic DND.  (#133485, Tommi Komulainen)
3380
3381 Thu Feb 12 00:37:00 2004  Matthias Clasen  <maclas@gmx.de>
3382
3383         * gdk/x11/gdkproperty-x11.c (gdk_property_change): Fix misleading
3384         debug output.
3385
3386 2004-02-11  Federico Mena Quintero  <federico@ximian.com>
3387
3388         * gtk/gtkmessagedialog.c (gtk_message_dialog_map): New ::map()
3389         handler.  If no widget has the focus, try to give it to the
3390         default widget.  If there is no default widget, give it to the
3391         first button.  Fixes the cause for which #59707 was reopened.
3392
3393 2004-02-11  Federico Mena Quintero  <federico@ximian.com>
3394
3395         Fixes #134051.
3396
3397         * gtk/gtkicontheme.c (struct _GtkIconInfo): Remove the ref_count field.
3398         (icon_info_new): Don't initialize the ref_count field.
3399
3400 2004-02-11  Federico Mena Quintero  <federico@ximian.com>
3401
3402         * gtk/gtkicontheme.c (gtk_icon_theme_prepend_search_path): Shift
3403         the array correctly.  Fixes #134055, patch by Tosten Schoenfeld
3404         <kaffeetisch@gmx.de>.
3405
3406 Wed Feb 11 02:23:39 2004  Matthias Clasen  <maclas@gmx.de>
3407
3408         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child): Handle
3409         focus [hv]adjustment correctly when the focus is located deeper
3410         down in the hierarchy.  (#133489)
3411
3412 Wed Feb 11 02:06:38 2004  Matthias Clasen  <maclas@gmx.de>
3413
3414         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Remove 
3415         arbitrary low upper limits on the xpad, ypad, width and height
3416         properties.  (#129696, John Ellis)
3417
3418 Wed Feb 11 01:24:20 2004  Matthias Clasen  <maclas@gmx.de>
3419
3420         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear_attributes): 
3421         Ugh. Don't try to free ints, even if they're stored in pointers.
3422         (#133997, Morten Welinder)
3423
3424 2004-02-10  Federico Mena Quintero  <federico@ximian.com>
3425
3426         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
3427         Free the filters.  Fixes #133547, patch by Morten Welinder
3428         <mortenw@gnome.org>.
3429
3430 Tue Feb 10 12:02:14 2004  Owen Taylor  <otaylor@redhat.com>
3431
3432         * gdk/x11/xsettings-client.c (read_settings): Avoid
3433         triggering an X error when the client->manager_window
3434         is None...makes logs look cleaner.
3435
3436         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Handle
3437         GDK_NONE to mean AnyPropertyType as documented. (Reported 
3438         by Yu Shao)
3439
3440         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window,
3441         gdk_x11_screen_get_window_manager_name): Fix error trap
3442         we've been leaking since 2002... (#129538)
3443
3444 2004-02-10  Federico Mena Quintero  <federico@ximian.com>
3445
3446         Fixes the entry-related part of #133852.
3447
3448         * gtk/gtkfilechooserdefault.c (update_chooser_entry): Don't change
3449         the file part of the entry if the selected item is a folder.
3450
3451 2004-02-10  Federico Mena Quintero  <federico@ximian.com>
3452
3453         Fixes #133995, patch by Morten Welinder <mortenw@gnome.org>.
3454
3455         * tests/prop-editor.c (create_prop_editor): Free the title.
3456         (object_changed): Free the children list.
3457
3458 Tue Feb 10 01:58:55 2004  Matthias Clasen  <maclas@gmx.de>
3459
3460         * gtk/gtkcontainer.c (gtk_container_set_focus_hadjustment): 
3461         * gtk/gtkcontainer.c (gtk_container_set_focus_vadjustment): Document 
3462         these functions.
3463
3464 2004-02-09  Federico Mena Quintero  <federico@ximian.com>
3465
3466         * gtk/gtkfilechooserdefault.c (set_list_model): Request
3467         GTK_FILE_INFO_ALL from the file system model, so that arbitrary
3468         filtering will work.  Perhaps we should have a way of aggregating
3469         info types to the model as filters get installed.
3470
3471 Mon Feb  9 22:22:19 2004  Matthias Clasen  <maclas@gmx.de>
3472
3473         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear_attributes): 
3474         Ugh. Don't try to free ints, even if they're stored in pointers.
3475
3476 2004-02-09  Federico Mena Quintero  <federico@ximian.com>
3477
3478         Fix #132256.
3479
3480         * gtk/gtkfilechooserdefault.c
3481         (gtk_file_chooser_default_get_paths): Read the contents of the
3482         filename entry in both OPEN and SAVE mode.  In multiple-selection
3483         mode, add this to the selection from the file/folder list.
3484         (struct get_paths_closure): Add a path_from_entry field.
3485         (get_paths_foreach): Only add the iterated path if it is not the
3486         same as the path from the entry.
3487
3488 2004-02-09  Federico Mena Quintero  <federico@ximian.com>
3489
3490         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_folder): If
3491         the folder is already open, add the requested info types to it.
3492
3493 Sun Feb  8 01:28:02 2004  Manish Singh  <yosh@gimp.org>
3494
3495         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Add appropriate
3496         type casts for the gtk_window_set_screen() call.
3497
3498 Sun Feb  8 01:44:06 2004  Matthias Clasen  <maclas@gmx.de>
3499
3500         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Make popups 
3501         come up on the same screen as the combo box.  (#133544, 
3502         Morten Welinder)
3503
3504 Fri Feb  6 23:40:24 2004  Jonathan Blandford  <jrb@gnome.org>
3505
3506         * gtk/gtkfilechooserdefault.c (create_file_list): clean up the
3507         packing of the file selector.
3508
3509 Sat Feb  7 01:21:09 2004  Matthias Clasen  <maclas@gmx.de>
3510
3511         * gtk/gtktreemodel.c (gtk_tree_model_base_init): Don't use function 
3512         calls in array initializers, as some compilers seem to hate this.
3513         (#133216, Jonas Jonsson)
3514
3515 Sat Feb  7 00:06:44 2004  Matthias Clasen  <maclas@gmx.de>
3516
3517         * gtk/gtkaccelmap.[hc]: Add change notification for GtkAccelMap,
3518         by on-demand instantiating a singleton object with a "changed" 
3519         signal. 
3520
3521         * gtk/gtkmarshalers.list (VOID:STRING,UINT,FLAGS): Add marshaller
3522         for GtkAccelMap::changed.
3523
3524 Fri Feb  6 23:08:29 2004  Matthias Clasen  <maclas@gmx.de>
3525
3526         * gtk/gtktextbtree.c (_gtk_text_btree_check): 
3527         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear_attributes): 
3528         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear_attributes): 
3529         Actually free the lists. Pointed out by Morten Welinder.
3530         
3531 Fri Feb  6 22:38:54 2004  Matthias Clasen  <maclas@gmx.de>
3532
3533         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Handle character 
3534         positions in UTF-8 strings correctly.  (#133315, Theppitak 
3535         Karoonboonyanan)
3536
3537 2004-02-06  Morten Welinder  <terra@gnome.org>
3538
3539         * gtk/gtktoolbar.c (show_menu): Cleanup using
3540         gtk_menu_attach_to_widget.  Also fixes leak, see #133411.
3541
3542 2004-02-06  Federico Mena Quintero  <federico@ximian.com>
3543
3544         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Free the
3545         list.  Fixes #133546.
3546
3547 2004-02-06  Federico Mena Quintero  <federico@ximian.com>
3548
3549         Fix #132327.
3550
3551         * gtk/gtkfilesystemunix.c (struct _GtkFileSystemUnix): Add a
3552         folder_hash field to keep a list of live folder objects.
3553         (gtk_file_system_unix_init): Create the folder_hash.
3554         (gtk_file_system_unix_finalize): Destroy the folder_hash.
3555         (gtk_file_system_unix_get_folder): Ref and return an existing
3556         folder if we have it around, otherwise return a new folder object.
3557         (struct _GtkFileFolderUnix): Add a field for the parent file system.
3558         (gtk_file_folder_unix_finalize): Remove the folder from the file
3559         system's hash table.
3560         (gtk_file_system_unix_create_folder):  Emit "files-added" on the
3561         newly-created folder's parent.  Fixes #132327.
3562
3563 Fri Feb  6 00:51:57 2004  Matthias Clasen  <maclas@gmx.de>
3564
3565         * gtk/gtkstock.c (builtin_items): Change the labels of the 
3566         ZOOM_100 and ZOOM_FIT stock items to "_Normal Size" and
3567         "Best _Fit", to be HIG compliant.  (#124080, Mariano 
3568         Suárez-Alvarez)
3569
3570 Fri Feb  6 00:45:16 2004  Matthias Clasen  <maclas@gmx.de>
3571
3572         * gtk/gtkcombobox.c (gtk_combo_box_finalize): Add a finalize 
3573         function to plug a few memory leaks.  (#133544, Morten Welinder)
3574
3575 Fri Feb  6 00:15:38 2004  Matthias Clasen  <maclas@gmx.de>
3576
3577         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_mnemonic_activate): 
3578         Support mnemonic_activate here as well.
3579         
3580         * gtk/gtkcombobox.c (gtk_combo_box_mnemonic_activate): Focus
3581         the button, not the tree_view.
3582
3583 Thu Feb  5 23:48:19 2004  Matthias Clasen  <maclas@gmx.de>
3584
3585         * gtk/gtkcombobox.c (gtk_combo_box_mnemonic_activate): Add this
3586         function, to make mnemonic_activate work for combo boxes.
3587         (#133443, Paolo Borelli)
3588
3589 Thu Feb  5 22:05:52 2004  Matthias Clasen  <maclas@gmx.de>
3590
3591         * gtk/gtkfilesystemunix.c (bookmark_list_read): Initialize result
3592         to FALSE.  (#133539, Morten Welinder)
3593
3594 Thu Feb  5 21:36:43 2004  Matthias Clasen  <maclas@gmx.de>
3595
3596         * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): Fix the logic
3597         of the depth one check.  (#133488, Christian Persch)
3598
3599 Thu Feb  5 01:50:19 2004  Matthias Clasen  <maclas@gmx.de>
3600
3601         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_paint): Fix
3602         the drawing of tearoff menu items which don't come first in their
3603         menu.  (#33311)
3604
3605 Thu Feb  5 00:59:08 2004  Matthias Clasen  <maclas@gmx.de>
3606
3607         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Use 
3608         g_completion_complete_utf8(). (#133313, Theppitak Karoonboonyanan)
3609
3610 2004-02-04  Federico Mena Quintero  <federico@ximian.com>
3611
3612         Fix #59707.
3613
3614         * gtk/gtklabel.c (gtk_label_focus): Removed, so we don't ignore
3615         the focus chain.
3616         (gtk_label_button_press): Fix prototype.
3617         (gtk_label_button_release): Likewise.
3618         (gtk_label_motion): Likewise.
3619
3620         * tests/testgtk.c (create_message_dialog): For the dialog with
3621         only GTK_BUTTONS_CLOSE, make GTK_RESPONSE_CLOSE the default.
3622
3623 2004-02-04  Morten Welinder  <terra@gnome.org>
3624
3625         * gtk/gtktoolbar.c (show_menu): Show on the right screen.  (Fixes
3626         bug 133411, apart from the leak.)
3627
3628 Tue Feb  3 13:39:27 2004  Manish Singh  <yosh@gimp.org>
3629
3630         * gtk/gtkadjustment.c (gtk_adjustment_new): pass value in last
3631         in g_object_new, since it depends on lower and upper being set.
3632
3633 2004-02-03  Federico Mena Quintero  <federico@ximian.com>
3634
3635         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): Make the
3636         window not resizable.  Fixes #114032.
3637
3638 2004-02-03  Federico Mena Quintero  <federico@ximian.com>
3639
3640         * gtk/gtkmessagedialog.c (gtk_message_dialog_class_init): Add
3641         documentation for the use_separator style property.
3642
3643 2004-02-03  Federico Mena Quintero  <federico@ximian.com>
3644
3645         Fix #68938.
3646
3647         * gtk/gtkdialog.c (GtkDialogPrivate): New private structure for
3648         GtkDialog; right now it only contains an ignore_separator field.
3649         (gtk_dialog_class_init): Register the private structure.
3650         (gtk_dialog_init): Initialize the priv->ignore_separator field.
3651         (_gtk_dialog_set_ignore_separator): New private function.
3652         (gtk_dialog_set_has_separator): Ignore the setting if appropriate.
3653
3654         * gtk/gtkmessagedialog.c (gtk_message_dialog_class_init): Add a
3655         use_separator style property.
3656         (gtk_message_dialog_style_set): Change the dialog's separator
3657         based on the style property.
3658         (gtk_message_dialog_init): Set the dialog box to ignore the
3659         separator setting.
3660
3661 Tue Feb  3 02:35:09 2004  Matthias Clasen  <maclas@gmx.de>
3662
3663         * gtk/Makefile.am: Build filesystemwin32.c if OS_WIN32 and
3664         also dist gtkfilesystemwin32.[hc].
3665
3666 Tue Feb  3 02:04:44 2004  Matthias Clasen  <maclas@gmx.de>
3667
3668         * gtk/gtklabel.c (gtk_label_ensure_layout): Right-justify labels
3669         in rtl mode.  (#129071, chinen@jp.ibm.com)
3670
3671 Tue Feb  3 02:01:25 2004  Matthias Clasen  <maclas@gmx.de>
3672
3673         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current): Exchange the
3674         meaning GTK_MENU_DIR_PARENT/CHILD and GTK_MENU_DIR_PREV/NEXT in rtl
3675         mode.  (#107528)
3676
3677 Tue Feb  3 01:38:06 2004  Matthias Clasen  <maclas@gmx.de>
3678
3679         Clip narrow columns in rtl-oriented tree views (#128089,  
3680         chinen@jp.ibm.com):
3681         
3682         * gtk/gtkstyle.c (gtk_default_draw_option): 
3683         * gtk/gtkstyle.c (gtk_default_draw_check): Clip to the 
3684         given area.
3685
3686         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action): 
3687         Use the right clip area when calling gtk_cell_renderer_render().
3688         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_cell_draw_focus): 
3689         Use the right clip area when calling gtk_paint_focus().
3690         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render): 
3691         Use the right clip area when calling gtk_paint_toggle() or
3692         gtk_paint_check().
3693         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): 
3694         Clip to the expose_area when drawing the background rectangle.
3695         
3696 Tue Feb  3 00:14:36 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3697
3698         * gdk/x11/gdkgeometry-x11.c (queue_item_free, gdk_window_queue):
3699         Use a weak reference instead of ref()/unref(). (#60857, reported
3700         by Joshua N Pritikin)
3701
3702         * gdk/gdkimage.c (scratch_image_info_for_depth): Formatting fix.
3703
3704 Tue Feb  3 00:15:17 2004  Matthias Clasen  <maclas@gmx.de>
3705
3706         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add 
3707         init_hadjust_value and prev_width.
3708         * gtk/gtktreeview.c (gtk_tree_view_init): Initialize 
3709         them here.
3710         * gtk/gtktreeview.c (gtk_tree_view_update_size): ...and here.
3711         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): Use them
3712         here to properly handle the initial position of rtl-oriented
3713         tree views.  (#127581, chinen@jp.ibm.com)
3714
3715 2004-01-20  Federico Mena Quintero  <federico@ximian.com>
3716
3717         Fix #130846, reported by R. McFarland <rwmcfa1@neces.com>.
3718
3719         * gtk/gtktreeview.c (gtk_tree_view_button_press): Return TRUE when
3720         we handle an event in the colums, and FALSE at the end if the
3721         event is not handled at all.
3722
3723 Mon Feb  2 23:41:48 2004  Matthias Clasen  <maclas@gmx.de>
3724
3725         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_changed): 
3726         Don't access the level after removing the node, since that may
3727         kill the level.  (#132615, Crispin Flowerday)
3728
3729 2004-02-02  Tor Lillqvist  <tml@iki.fi>
3730
3731         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): Set the cursor
3732         in all cases. If no grab cursor specified, use the grabbing
3733         window's cursor. If the grabbing window has no cursor, use the
3734         default arrow cursor. (#118025)
3735
3736 Mon Feb  2 22:05:36 2004  Matthias Clasen  <maclas@gmx.de>
3737
3738         * gtk/gtkseparatormenuitem.c (gtk_separator_menu_item_init): The
3739         latest in menu separation technology.
3740
3741 Mon Feb  2 19:04:17 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3742
3743         * gdk/x11/gdkwindow-x11.c: Assume gravity works. (Anything else
3744         we have to take our chances with).
3745         
3746         (Bug 97510)
3747
3748 Mon Feb  2 18:45:28 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3749
3750         Fix bug 110224.
3751
3752         * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display):
3753         Remove unused variable 'result'
3754
3755         * gdk/x11/xsettings-client.[ch]: Add new set_grab/ungrab_func() functions.
3756
3757         * gdk/x11/gdkevents-x11.c (_gdk_x11_events_init_screen): Use them
3758         here.
3759
3760 Mon Feb  2 14:32:32 2004  Pablo Saratxaga  <pablo@mandrakesoft.com>
3761
3762         * configure.in po/uz*.po: changed default for Uzbek; now just "uz"
3763         is in cyrillic and "uz@Latn" for latin; "uz@Cyrl" has been removed
3764
3765 Sun Feb  1 16:34:07 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3766
3767         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Only start
3768         sliding when using the new API.
3769
3770 Sun Feb  1 16:03:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3771
3772         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Make sure
3773         item_area is positioned correctly. Fix #133070, reported by Jeroen
3774         Zwartepoorte.
3775
3776 Sat Jan 31 23:13:43 2004  Matthias Clasen  <maclas@gmx.de>
3777
3778         * gtk/gtktextchild.c (gtk_text_child_anchor_finalize): Don't
3779         crash when finalizing an unused GtkTextChildAnchor.  (#132260,
3780         muppet)
3781
3782 Sat Jan 31 22:41:57 2004  Matthias Clasen  <maclas@gmx.de>
3783
3784         * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Correct
3785         the documentation for new_order.  (#124790, Tim-Philipp Müller)
3786
3787 Sat Jan 31 22:38:07 2004  Matthias Clasen  <maclas@gmx.de>
3788
3789         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width): 
3790         Reset use_resized_width when setting fixed_width.  (#108612, 
3791         Felipe Heidrich) 
3792
3793 Sat Jan 31 16:27:44 2004  Matthias Clasen  <maclas@gmx.de>
3794
3795         * gtk/gtkmain.c (gtk_key_snooper_remove): Don't leak the
3796         GtkKeySnooperData.  (#132038, R. McFarland)
3797
3798 2004-01-30  Federico Mena Quintero  <federico@ximian.com>
3799
3800         Fixes #132975.
3801
3802         * gtk/gtkfilesystem.c (gtk_file_system_make_path): Return NULL,
3803         not FALSE.
3804         (gtk_file_system_volume_render_icon): Likewise.
3805
3806         * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_make_path):
3807         Likewise.
3808
3809         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Return 0,
3810         not FALSE.
3811
3812         * gtk/gtktoolbar.c (gtk_toolbar_get_drop_index): Return -1, not
3813         FALSE.
3814
3815         * gtk/gtktextiter.c (gtk_text_iter_get_chars_in_line): Return 0,
3816         not FALSE.
3817         (gtk_text_iter_get_bytes_in_line): Likewise.
3818
3819         * gdk/x11/gdkcursor-x11.c (gdk_display_get_default_cursor_size):
3820         Likewise.
3821
3822         * gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Return FALSE, not
3823         0.
3824
3825 2004-01-30  Not Zed  <NotZed@Ximian.com>
3826
3827         Fixes #132929.
3828
3829         * gtk/gtktreeview.c (cancel_arrow_animation): remove the timeout
3830         handler when we clear the timeout id.
3831
3832 2004-01-30  Federico Mena Quintero  <federico@ximian.com>
3833
3834         Fix #129872, based on a patch by Jan Arne Petersen
3835         <jpetersen@uni-bonn.de>
3836
3837         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_list_bookmarks):
3838         Implement.
3839         (gtk_file_system_unix_add_bookmark): Implement.
3840         (gtk_file_system_unix_remove_bookmark): Implement.
3841
3842 2004-01-29  Federico Mena Quintero  <federico@ximian.com>
3843
3844         Fixes #132693.
3845
3846         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_parent): Don't
3847         use filename_from_path().  Also, check that the filename is
3848         absolute.
3849         (gtk_file_system_unix_get_folder): Likewise.
3850         (gtk_file_system_unix_create_folder): Likewise.
3851         (gtk_file_system_unix_make_path): Likewise.
3852         (gtk_file_system_unix_parse): Likewise.
3853         (gtk_file_folder_unix_get_info): Likewise.
3854         (filename_from_path): Removed.
3855
3856 2004-01-30  Federico Mena Quintero  <federico@ximian.com>
3857
3858         * gtk/gtkcalendar.c (arrow_action): Remove C++ comment; reported
3859         by Damien Carbery <damien.carbery@sun.com>.  Fixes #132956.
3860
3861 Fri Jan 30 11:37:37 2004  Owen Taylor  <otaylor@redhat.com>
3862
3863         * gdk/x11/gdkdrawable-x11.c: Revert changes from
3864         #113476 and go back to using XftDrawSetClip, because
3865         XftDrawSetClipRectangles is buggy in XFree86-4.3.
3866
3867 Thu Jan 29 18:08:06 2004  Owen Taylor  <otaylor@redhat.com>
3868
3869         * gtk/gtktextlayout.c (line_display_iter_to_index)
3870         * gtk/gtktextlayout.c (line_display_index_to_iter): Only
3871         adjust the preedit position for lines that include the
3872         preedit string. (#132353, Yao Zhang). How the heck
3873         did this work as well as it did?!?!
3874
3875         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): 
3876         Reverse change to change of XNFilterEvents event mask from
3877         #110493 -- it's documented and in the Xlib code an
3878         unsigned long. 
3879         
3880         * modules/input/gtkimcontextxim.c (preedit_start_callback): 
3881         Return -1 rather than void to indicate no length limit.
3882         (#129548)
3883
3884 Fri Jan 30 00:45:46 2004  Matthias Clasen  <maclas@gmx.de>
3885
3886         * gtk/gtkadjustment.c: Add properties to GtkAdjustment.
3887         (#64601, Murray Cumming)
3888
3889 Fri Jan 30 00:13:46 2004  Matthias Clasen  <maclas@gmx.de>
3890
3891         * gtk/gtkcombo.c (gtk_combo_set_popdown_strings): Allow NULL
3892         for strings to clear the list.  (#105386, Marco Pesenti Gritti)
3893         
3894 2004-01-28  Richard Hult  <richard@imendio.com>
3895
3896         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size):
3897         Free font_desc.  Fixes #132805.
3898
3899 2004-01-29  Federico Mena Quintero  <federico@ximian.com>
3900
3901         * gtk/gtkiconfactory.c (render_icon_name_pixbuf): Free the GError.
3902         Patch provided by Christian Persch <chpe@stud.uni-saarland.de>
3903         Fixes #132574.
3904
3905 Thu Jan 29 11:00:18 2004  Owen Taylor  <otaylor@redhat.com>
3906
3907         * gtk/gtkselection.c (gtk_selection_default_handler): 
3908         nul-terminate the target atoms. (#132656, Christian Persch)
3909
3910 Thu Jan 29 00:59:03 2004  Matthias Clasen  <maclas@gmx.de>
3911
3912         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
3913         Don't leak path if we bail out early.  (#132505, Christian Persch)
3914
3915 Thu Jan 29 00:48:47 2004  Matthias Clasen  <maclas@gmx.de>
3916
3917         * gtk/gtkactiongroup.c (gtk_action_group_add_toggle_actions_full):
3918         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): Do
3919         reference counting on the user_data that is shared between
3920         multiple signal handlers, to avoid calling the destroy notify
3921         multiple times.  (#132447, Adam Hooper)
3922
3923 2004-01-28  Hans Breuer  <hans@breuer.org>
3924
3925         * gtk/stock-icons/stock_network_(16|24).png : new GTK_STOCK_NETWORK ...
3926           gtk/gtkstock.[hc] : ... define ...
3927           gtk/gtkiconfactory.c : ... register ...
3928           gtk/stock-icons/Makefile.am gtk/stock-icons/makefile.msc : ... compile ...
3929         * gtk/gtkfilesystemwin32.c : ... and use. Also adapt to recent 
3930         IFace changes.
3931
3932         * gtk/gtk.def : added a bunch of new exported symbols
3933
3934         * tests/testfilechooser.c (no_backup_files_filter) : don't crash
3935         on filter_info->display_name being NULL
3936
3937         * tests/testgtk.c : make testgtk --bench=all work again
3938
3939 Wed Jan 28 21:40:47 2004  Matthias Clasen  <maclas@gmx.de>
3940
3941         * gtk/gtkentrycompletion.c (gtk_entry_completion_action_data_func):
3942         Don't leak string.  (#132482, Christian Persch)
3943
3944 Tue Jan 27 18:45:47 2004  Manish Singh  <yosh@gimp.org>
3945
3946         * m4macros/gtk-2.0.m4: quote AC_DEFUN macro names so automake
3947         1.8 won't whine at us.
3948
3949 2004-01-28  Tor Lillqvist  <tml@iki.fi>
3950
3951         * gdk/win32/gdkevents-win32.c (synthesize_leave_event,
3952         synthesize_enter_event): Don' generate enter or leave events if
3953         the pointer is grabbed with owner_events off, and the grab event
3954         mask doesn't ask for them. (#129242)
3955
3956         (gdk_event_translate): Ditto for focus change events.
3957
3958 2004-01-27  Federico Mena Quintero  <federico@ximian.com>
3959
3960         Fix #132314.
3961
3962         * gtk/gtkfilesystem.h: Removed the #ifdef-ed out, old icon API.
3963
3964         * gtk/gtkfilesystem.c: Likewise.
3965
3966         * gtk/gtkfilesystemunix.c (filename_get_info): Removed the old
3967         icon-type code.
3968         (gtk_file_system_unix_render_icon): Moved the icon-rendering code
3969         from GtkFileInfo to here.
3970         (gtk_file_system_unix_volume_render_icon): Implement.
3971
3972 2004-01-28  Changwoo Ryu  <cwryu@debian.org>
3973
3974         * modules/input/imhangul-defs.h: 
3975         * modules/input/imhangul.c:
3976         * modules/input/Makefile.am: Remove broken hangul input module.
3977         
3978 Tue Jan 27 01:56:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3979
3980         * gtk/gtktoolbar.c: Remove obsolete comment.
3981
3982         * gtk/gtktoolbar.c (DEFAULT_SPACE_SIZE, SPACE_LINE_START, 
3983         SPACE_LINE_END): Make separators wider and taller, so they are
3984         easier to pick up when editing the toolbar.
3985
3986         * gtk/gtktoolbar.c (slide_idle_handler): Add a comment, simplify
3987         a bit, 
3988
3989         * gtk/gtktoolbar.c (rect_within): Formatting fix
3990
3991         * gtk/gtktoolbar.c (gtk_toolbar_set_drop_highlight_item): Make
3992         sliding feel more responsive by only restarting sliding when the
3993         placeholder actually changes its goal allocation.
3994
3995 Tue Jan 27 02:00:37 2004  Matthias Clasen  <maclas@gmx.de>
3996
3997         * gtk/gtktreeitem.c (gtk_tree_item_add_pixmaps): Avoid a 
3998         compiler warning.  (#122725, Kjartan Maraas)
3999         
4000 Tue Jan 27 01:46:54 2004  Matthias Clasen  <maclas@gmx.de>
4001
4002         Make menus work better on Xinerama (#126150):
4003         
4004         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Calculate the 
4005         monitor_num on the screen of the menu, not of the attach widget.
4006
4007         * gtk/gtkmenu.c (menu_change_screen): Forget the stored monitor_num. 
4008         (gtk_menu_window_size_request): Remember the monitor_num.
4009
4010 2004-01-26  Federico Mena Quintero  <federico@ximian.com>
4011
4012         Fix #105497; constify uses of GdkColor.
4013
4014         * gdk/gdkgc.c (gdk_gc_set_rgb_fg_color): Constify.
4015         (gdk_gc_set_rgb_bg_color): Constify.
4016         (gdk_gc_set_foreground): Constify.
4017
4018         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): Constify.
4019         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Constify.
4020         * gdk/linux-fb/gdkcursor-fb.c (gdk_cursor_new_from_pixmap): Constify.
4021
4022         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_create_from_data): Constify.
4023         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data): Constify.
4024         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_create_from_data): Constify.
4025
4026         * gdk/x11/gdkwindow-x11.c (gdk_window_set_background): Constify.
4027         * gdk/win32/gdkwindow-win32.c (gdk_window_set_background): Constify.
4028         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_background): Constify.
4029
4030         * gdk/gdkpango.c (gdk_draw_layout_line_with_colors): Constify.
4031         (gdk_draw_layout_with_colors): Constify.
4032
4033         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf): Constify.
4034         (gdk_pixmap_colormap_create_from_xpm): Constify.
4035         (gdk_pixmap_create_from_xpm): Constify.
4036         (gdk_pixmap_colormap_create_from_xpm_d): Constify.
4037         (gdk_pixmap_create_from_xpm_d): Constify.
4038
4039         * gtk/gtkcellview.c (gtk_cell_view_set_background_color): Constify.
4040
4041         * gtk/gtkclist.c (gtk_clist_set_foreground): Constify.
4042         (gtk_clist_set_background): Constify.
4043
4044         * gtk/gtkcolorbutton.c (gtk_color_button_new_with_color): Constify.
4045         (gtk_color_button_set_color): Constify.
4046
4047         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_color):
4048         Constify and add a check for color != NULL.
4049         (gtk_color_selection_get_current_color): Add a check for color != NULL.
4050         (gtk_color_selection_set_previous_color): Constify and add a check
4051         for color != NULL.
4052         (gtk_color_selection_get_previous_color): Add a check for color != NULL.
4053
4054         * gtk/gtkctree.c (gtk_ctree_node_set_foreground): Constify.
4055         (gtk_ctree_node_set_background): Constify.
4056
4057         * gtk/gtktext.c (gtk_text_insert): Constify.
4058         (insert_text_property): Constify.
4059         (text_properties_equal): Constify.
4060         (new_text_property): Constify.
4061
4062         * gtk/gtkwidget.c (gtk_widget_modify_color_component): Constify.
4063         (gtk_widget_modify_fg): Constify.
4064         (gtk_widget_modify_bg): Constify.
4065         (gtk_widget_modify_text): Constify.
4066         (gtk_widget_modify_base): Constify.
4067
4068 2004-01-26  Christian Rose  <menthos@menthos.com>
4069
4070         * configure.in: Added "mi" to ALL_LINGUAS.
4071
4072 2004-01-25  Tor Lillqvist  <tml@iki.fi>
4073
4074         * gdk/win32/gdkproperty-win32.c (gdk_property_delete): If the
4075         WM_TRANSIENT_FOR property is being deleted, set the owner of the
4076         window to the root window (i.e., effectively unset it). (#132411)
4077
4078         * gdk/win32/gdkprivate-win32.h
4079         * gdk/win32/gdkglobals-win32.c
4080         * gdk/win32/gdkmain-win32.c: Declare, define and initialize
4081         _wm_transient_for, a GdkAtom for WM_TRANSIENT_FOR.
4082
4083         * acconfig.h: Remove HAVE_WINSOCK_H, not used any longer.
4084
4085 Sun Jan 25 15:14:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4086
4087         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Base the decision
4088         to map/unmap items on whether they are actually allocated outside
4089         the toolbar, not on whether that will eventually happen. Improves
4090         animation in the presence of overflown items.
4091
4092         * gtk/gtktoolbar.c (gtk_toolbar_begin_sliding): Add a
4093         queue_resize() to so that the items will get their new goal
4094         values and the idle handler will not immediately return FALSE.
4095
4096         * gtk/gtktoolbar.c (slide_idle_handler): simplify the logic and
4097         make sure that a placeholder becoming invisible doesn't cause a
4098         return TRUE.
4099
4100         * gtk/gtktoolbar.c (get_item_size): Don't special case
4101         placeholders here.
4102
4103 Sat Jan 24 23:17:27 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4104
4105         * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): Only
4106         try to pack icon if there actually is one.
4107
4108         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Make sure
4109         OVERFLOWN items get an allocation even when they are
4110         unmapped. This ensures they will slide in properly.
4111
4112         * gtk/gtktoolbar.c (slide_idle_handler): Make sure we return TRUE
4113         when there are overflown items that need to slide in. Also add
4114         comments and make formatting more readable.
4115
4116 Sat Jan 24 17:38:48 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4117
4118         * gtk/gtkradiotoolbutton.c (gtk_radio_tool_button_class_init):
4119         Add a write-only property ::group to be consistent with
4120         GtkRadioAction and GtkRadioButton. (#132159, Patch from Olivier
4121         Andrieu)
4122
4123 Fri Jan 23 23:46:12 2004  Matthias Clasen  <maclas@gmx.de>
4124
4125         * gtk/gtkfontbutton.c (gtk_font_button_label_use_font): Don't leak the 
4126         font description.  (#132168)
4127
4128 2004-01-23  Federico Mena Quintero  <federico@ximian.com>
4129
4130         Fix #132247.
4131
4132         * gtk/gtkfilechooserdefault.c (set_select_multiple): Handle folder
4133         mode.
4134         (set_select_multiple): Optionally notify about changes to the
4135         select-multiple property.
4136         (list_selection_changed): Change the condition for the editable row to
4137         test for save mode; this is more clear than testing for not being
4138         in multiple selection mode.
4139         (gtk_file_chooser_default_get_paths): Get impl->action directly
4140         rather than calling gtk_file_chooser_get_action().
4141         (entry_activate): Likewise.
4142         (set_select_multiple): Annotate about #133255.
4143         (update_chooser_entry): Likewise.
4144         (check_preview_change): Likewise.
4145         (tree_selection_changed): Likewise.
4146
4147 Fri Jan 23 14:56:18 2004  Jonathan Blandford  <jrb@gnome.org>
4148
4149         * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): Don't crash
4150         when there are no columns, or all columns are hidden, #131402
4151
4152 Fri Jan 23 16:58:28 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4153
4154         * gtk/gtkmenu.c (DEFAULT_POPUP_DELAY): Changing to 200 was a
4155         mistake. Change back to 225.
4156
4157 Thu Jan 22 18:46:05 2004  Owen Taylor  <otaylor@redhat.com>
4158
4159         * === Released 2.3.2 ===
4160
4161 Thu Jan 22 18:45:26 2004  Owen Taylor  <otaylor@redhat.com>
4162
4163         * gtk/gtkicontheme.c: Patch from Christian Neumair
4164         to make warning string more translator friendly.
4165
4166         * gtk/gtktreemodelfilter.h gtkseparatortoolitem.[ch]
4167         gtk/gtktoolbar.c: Parameter name fixes to keep gtk-doc
4168         happy.
4169
4170         * configure.in: Require GLib-2.3.2, version 2.3.2,
4171         interface age 0, binary age 302.
4172
4173         * NEWS: Organized, added some names.
4174
4175 Thu Jan 22 16:59:36 2004  Jonathan Blandford  <jrb@gnome.org>
4176
4177         * gtk/gtkliststore.c (gtk_list_store_reorder): Doc fix.
4178
4179 2004-01-22  Federico Mena Quintero  <federico@ximian.com>
4180
4181         * gtk/gtkwidget.c (gtk_widget_class_init): Added documentation for
4182         GtkWidget::popup_menu.
4183
4184 Thu Jan 22 21:45:24 2004  Matthias Clasen  <maclas@gmx.de>
4185
4186         * gtk/gtkmenu.c (gtk_menu_remove): Remove the attach 
4187         info after calling gtk_menu_do_remove(), since that function
4188         uses the attach info. Doh!
4189
4190         * gtk/gtkmenu.c (gtk_menu_do_remove): Don't check priv->columns 
4191         for being 1 directly after setting it to 0.
4192
4193 Thu Jan 22 21:38:52 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4194
4195         * NEWS: Updates
4196
4197 2004-01-22  Alexander Larsson  <alexl@redhat.com>
4198
4199         * gdk/x11/gdkwindow-x11.c (WINDOW_IS_TOPLEVEL):
4200         Fix typo
4201
4202 2004-01-21  Federico Mena Quintero  <federico@ximian.com>
4203
4204         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
4205         Free the path fields.
4206
4207         * gtk/gtkfilesystemmodel.c (gtk_file_system_model_finalize): Free
4208         the root_path, reported by <scott@asofyet.org>
4209         (gtk_file_system_model_finalize): Unref the file system.
4210
4211         * gtk/gtkfilefilter.c (filter_rule_free): default:
4212         g_assert_not_reached().
4213         (gtk_file_filter_finalize): Free the filter->name, reported by
4214         <scott@asofyet.org>
4215         (gtk_file_filter_finalize): Free the rules list.
4216
4217 Wed Jan 21 18:10:40 2004  Jonathan Blandford  <jrb@gnome.org>
4218
4219         * gtk/gtkcolorbutton.c (gtk_color_button_set_color):redraw the
4220         color button when an alpha is set.
4221         (gtk_color_button_set_alpha): redraw the color button when an
4222         alpha is set.
4223
4224 Wed Jan 21 23:27:14 2004  Matthias Clasen  <maclas@gmx.de>
4225
4226         Fix #131869: 
4227         
4228         * gtk/gtkaction.c (_gtk_action_emit_activate): Hold
4229         a reference to the group while emitting the signals.
4230
4231         * gtk/gtkactiongroup.c (gtk_action_group_init): Use a 
4232         destroy notify which does not only unref, but also resets
4233         the action_group property of the action.
4234
4235 2004-01-20  Federico Mena Quintero  <federico@ximian.com>
4236
4237         * NEWS: Added details about GtkFileChooser changes.
4238
4239 2004-01-20  Federico Mena Quintero  <federico@ximian.com>
4240
4241         Fix #99425, add accessor functions for GtkPaned's children.
4242
4243         * gtk/gtkpaned.c (gtk_paned_get_child1): New function.
4244         (gtk_paned_get_child2): New function.
4245
4246 Tue Jan 20 23:49:52 2004  Matthias Clasen  <maclas@gmx.de>
4247
4248         * NEWS: Start of 2.3.2 section.
4249
4250 Tue Jan 20 22:11:31 2004  Matthias Clasen  <maclas@gmx.de>
4251
4252         Fixes for #130370, based on a patch by Michael Meeks:
4253         
4254         * gtk/gtkmenu.c (gtk_menu_do_remove): New auxiliary function to
4255         adjust cell positions and recalculate row and column counts after
4256         removing an item.
4257
4258         * gtk/gtkmenu.c (gtk_menu_remove): Call gtk_menu_do_remove.
4259
4260         * gtk/gtkmenu.c (gtk_menu_do_insert): Don't leave empty rows when
4261         appending items.
4262
4263         * gtk/gtkmenu.c (gtk_menu_attach): Don't call gtk_menu_shell_append,
4264         to avoid an unintended recursion.
4265
4266 2004-01-19  Federico Mena Quintero  <federico@ximian.com>
4267
4268         Fix #131418.
4269
4270         * gtk/gtkfilechooserdefault.c (set_select_multiple): New helper
4271         function.
4272         (gtk_file_chooser_default_set_property): Use
4273         set_select_multiple().  Also, re-set this mode to single if the
4274         file chooser is set to Save mode.
4275         (entry_activate): Handle the case where the entry is completely
4276         empty *and* its current folder does exist.  Also, there is need to
4277         test for select_multiple here now that we ensure that it won't
4278         happen during Save mode.
4279
4280 Sun Jan 18 15:25:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4281
4282         * gtk/gtktoolbar.[ch]: Add _gtk_toolbar_paint_space_line(),
4283         _gtk_toolbar_get_default_space_size ();
4284
4285         * gtk/gtkseparatortoolitem.c (gtk_separator_tool_item_expose,
4286         get_space_size): Use them here.
4287
4288 Sun Jan 18 13:16:34 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4289
4290         * tests/testgtk.c (create_toolbar): Set a small size request and
4291         make the window resizable, to test mapping/unmapping of buttons.
4292
4293         * gtk/gtktoolbar.c (gtk_toolbar_remove_content,
4294         gtk_toolbar_insert_tool_item): remove these functions.
4295
4296         * gtk/gtktoolbar.c (gtk_toolbar_show_all,
4297         toolbar_content_show_all, gtk_toolbar_hide_all,
4298         toolbar_content_hide_all): New functions. 
4299
4300         Ignore show_all/hide_all for buttons created in compatibility mode.
4301
4302         * gtk/gtktoolbar.c (internal_insert_element, gtk_toolbar_show_all,
4303         gtk_toolbar_hide_all): Make sure buttons are ignored by
4304         gtk_toolbar_show_all() and gtk_toolbar_hide_all().
4305         
4306         * gtk/gtktoolbar.c: s/regular_widget/compatibility/g
4307
4308         * gtk/gtktoolbar.c (struct _ToolbarContent): Allocate
4309         GtkToolbarChild inline. Get rid of GtkToolbarChildSpace.
4310
4311         * gtk/gtktoolbar.c (toolbar_content_expose): Fix bug where widget
4312         could become NULL.
4313
4314         * gtk/gtktoolbar.c (gtk_toolbar_add): Append new tool items
4315         instead of prepending them.
4316
4317         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Use the same
4318         'elapsed' for all items.
4319
4320         * gtk/gtktoolbar.c (struct _GtkToolbarPrivate): Turn booleans
4321         into bitfields.
4322
4323         * gtk/gtktoolbar.c: Many formatting fixes
4324         
4325 Sun Jan 18 01:51:12 2004  Matthias Clasen  <maclas@gmx.de>
4326
4327         * configure.in: Add the necessary magic to create
4328         po-properties/Makefile.
4329
4330 Sat Jan 17 23:05:52 2004  Matthias Clasen  <maclas@gmx.de>
4331
4332         The second part of the fix for #114351 (see also 
4333         gdk-pixbuf/ChangeLog and po/ChangeLog):
4334
4335         * Makefile.am (SUBDIRS): Add po-properties.
4336
4337         * configure.in (AC_CONFIG_FILES): Add po-properties/Makefile.in 
4338
4339         * gdk/gdkintl.h (P_): 
4340         * gtk/gtkintl.h (P_): Use translation domain gtk20-properties. 
4341
4342         * gtk/gtkmain.c (gtk_parse_args): Call bindtextdomain and
4343         bind_textdomain_codeset for gtk20-properties as well.
4344
4345 Sat Jan 17 22:00:07 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4346
4347         * gtk/gtktoolbar.c: 
4348
4349         Fix rest of #128678: Implement all the toolbar_content()
4350         methods for the old API case.
4351
4352 Sat Jan 17 16:53:08 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4353
4354         * gtk/gtktoolbar.c: 
4355
4356         Phase 1 of fixing #128678: Only access ToolbarContent through a
4357         set of new functions:
4358
4359         toolbar_content_expose, toolbar_content_visible,
4360         toolbar_content_size_request, toolbar_content_is_homogeneous,
4361         toolbar_content_get_child_requisition,
4362         toolbar_content_is_placeholder, toolbar_content_disappearing,
4363         toolbar_content_get_state, toolbar_content_child_visible,
4364         toolbar_content_get_goal_allocation,
4365         toolbar_content_get_allocation,
4366         toolbar_content_set_start_allocation,
4367         toolbar_content_get_start_allocation, toolbar_content_get_expand,
4368         toolbar_content_set_goal_allocation,
4369         toolbar_content_set_child_visible, toolbar_content_size_allocate,
4370         toolbar_content_set_state, toolbar_content_get_widget,
4371         toolbar_content_set_disappearing,
4372         toolbar_content_set_size_request,
4373         toolbar_content_toolbar_reconfigured,
4374         toolbar_content_retrieve_menu_item, 
4375         toolbar_content_new_tool_item, toolbar_content_destroy,
4376         toolbar_content_is_separator
4377
4378         Also fix #127092.
4379         
4380 Sat Jan 17 12:55:13 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4381
4382         * gtk/gtktoolitem.c (gtk_tool_item_finalize): don't leak the menu
4383         item ID.
4384
4385 Sat Jan 17 12:37:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4386
4387         * gtk/gtktoolbar.c (gtk_toolbar_finalize): Don't leak the
4388         overflow menu.
4389         
4390         * gtk/gtktoolbar.h (struct _GtkToolbar): Make some fields public. 
4391         [#127726]
4392
4393 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
4394
4395         * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModel): Added a
4396         has_editable field.
4397         (_gtk_file_system_model_add_editable): New function.
4398         (_gtk_file_system_model_remove_editable): New function.
4399         (gtk_file_system_model_get_value): Return appropriate values for
4400         the temporary editable row.
4401         (_gtk_file_system_model_get_info): Handle the editable row.
4402         (_gtk_file_system_model_get_path): Likewise.
4403
4404         * gtk/gtkfilechooserdefault.c (shortcuts_append_bookmarks):
4405         Removed an unused variable.
4406         (toolbar_button_new): Optionally show the button.
4407         (up_button_clicked_cb): Renamed from up_button_cb(), fixed prototype.
4408         (toolbar_create): Add a "New Folder" button for Save mode.
4409         (error_building_filename_dialog): New helper function.
4410         (gtk_file_chooser_default_get_paths): Use error_building_filename_dialog().
4411         (create_file_list): Connect to the "edited" signal of the text
4412         cell renderer.  Store the name column and text renderer in the
4413         impl structure.
4414         (renderer_edited_cb): New callback.
4415         (gtk_file_chooser_default_set_property): Show/hide the "New
4416         folder" button when the save action changes.
4417         (COMPARE_DIRECTORIES): Allow the info values to be NULL.
4418         (COMPARE_DIRECTORIES): Duh, use the list_model, not the
4419         tree_model.
4420         (get_list_file_info): Likewise!
4421         (list_icon_data_func): Handle the path being NULL.
4422         (new_folder_button_clicked): New callback.
4423         (list_name_data_func): If we are on the editable row, set the text
4424         to "Type name of new folder".
4425         (list_selection_changed): Handle the editable row.
4426         (list_mtime_data_func): Likewise.
4427
4428         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_make_path): Return
4429         NULL, not FALSE.
4430         (gtk_file_system_unix_create_folder): Test the result of mkdir() correctly.
4431
4432 Fri Jan 16 23:59:01 2004  Matthias Clasen  <maclas@gmx.de>
4433
4434         The first part of the fix for #114351 (see also 
4435         gdk-pixbuf/ChangeLog and po/ChangeLog):
4436         
4437         * gtk/gtkintl.h: 
4438         * gdk/gdkintl.h: Define P_() for property blurbs and nicks.
4439
4440         * gdk/gdkdisplaymanager.c:
4441         * modules/input/gtkimcontextxim.c:
4442         * gtk/*.c:  Mark property blurbs and nicks with P_().
4443         
4444 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
4445
4446         Fix #130969.
4447
4448         * gtk/gtkcellrenderer.h (struct _GtkCellRendererClass): Added an
4449         editing_canceled signal.
4450
4451         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Create the
4452         "editing-canceled" signal.
4453         (gtk_cell_renderer_editing_canceled): New function.
4454
4455         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done):
4456         Call gtk_cell_renderer_editing_canceled().
4457
4458 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
4459
4460         * gtk/gtkfilechooserdefault.c
4461         (gtk_file_chooser_default_set_property): Do not allow setting
4462         select_multiple when in Save mode.
4463         (set_list_model): No need to nullify the list_model and
4464         sort_model.
4465         (gtk_file_chooser_default_get_paths): Handle folder mode as well.
4466         (get_paths_foreach): Likewise.
4467
4468         * gtk/gtkfilechooser.c (gtk_file_chooser_get_filename): Clarify
4469         documentation about folder mode.
4470         (gtk_file_chooser_get_uri): Likewise.
4471
4472 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
4473
4474         * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): New
4475         get_volume_for_path() method.
4476         (struct _GtkFileSystemIface): Finally removed the list_roots() and
4477         get_root_info() methods, and the "roots-changed" signal.
4478
4479         * gtk/gtkfilesystem.c (gtk_file_system_get_volume_for_path): New
4480         function.
4481         (gtk_file_system_list_roots): Removed.
4482         (gtk_file_system_get_root_info): Removed.
4483
4484         * gtk/gtkfilesystemunix.c
4485         (gtk_file_system_unix_get_volume_for_path): Implement.
4486         (get_root_volume): New helper function.
4487         (gtk_file_system_unix_list_volumes): Use get_root_volume().
4488         (gtk_file_system_unix_list_roots): Removed.
4489         (gtk_file_system_unix_get_root_info): Removed.
4490
4491         * gtk/gtkfilesystemmodel.c (_gtk_file_system_model_new): Don't
4492         accept a NULL root_path.
4493         (struct _GtkFileSystemModel): Add a field to remember the
4494         root_path.
4495         (_gtk_file_system_model_new): Store the root_path in the model
4496         structure.
4497         (find_and_ref_path): Stop going up the hierarchy at the root_path
4498         of the model.  Also, don't return prematurely when walking up the
4499         hierarchy.
4500
4501         * gtk/gtkfilechooserdefault.c (create_file_list): Sigh, restore
4502         the rules_hint.
4503         (struct _GtkFileChooserDefault): Added a current_volume_path field.
4504         (set_tree_model): New function; create the folder tree model here.
4505         (create_folder_tree): Don't create the model here.
4506         (set_list_model): Set the show_hidden flag on the list model.
4507
4508 Fri Jan 16 00:04:43 2004  Matthias Clasen  <maclas@gmx.de>
4509
4510         * gtk/gtknotebook.h:
4511         * gtk/gtknotebook.c (gtk_notebook_append_page): 
4512         * gtk/gtknotebook.c (gtk_notebook_append_page_menu): 
4513         * gtk/gtknotebook.c (gtk_notebook_prepend_page): 
4514         * gtk/gtknotebook.c (gtk_notebook_prepend_page_menu): 
4515         * gtk/gtknotebook.c (gtk_notebook_insert_page): 
4516         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): Return the
4517         index of the newly inserted page.  (#130986, Olexiy Avramchenko) 
4518
4519 Thu Jan 15 23:17:14 2004  Matthias Clasen  <maclas@gmx.de>
4520
4521         * gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): Inserting
4522         a 'newly-allocated' to hint that the list should be freed after
4523         use.
4524
4525 Wed Jan 14 18:01:52 2004  Jonathan Blandford  <jrb@gnome.org>
4526
4527         * gtk/gtktreeview.c (gtk_tree_view_button_press): move grab_focus
4528         to after handling the button presses in the TreeView to avoid
4529         getting multiple selection_changes()
4530
4531 Wed Jan 14 21:16:20 2004  Matthias Clasen  <maclas@gmx.de>
4532
4533         * gtk/gtkimcontext.c: Documentation fix.  (#131335, Theppitak 
4534         Karoonboonyanan)
4535
4536 Wed Jan 14 21:00:49 2004  Matthias Clasen  <maclas@gmx.de>
4537
4538         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
4539         Don't leak name and stock_id.  (#131358, Morten Welinder)
4540
4541 Wed Jan 14 13:07:30 GMT 2004  Tony Gale <gale@gtk.org>
4542
4543         * docs/faq/gtk-faq.sgml: Updates to Section 5
4544
4545 Wed Jan 14 02:34:57 2004  Matthias Clasen  <maclas@gmx.de>
4546
4547         * gtk/gtkradioaction.c: Add a writable group property to align
4548         with the GtkRadioButton API.  (#129166, Olivier Andrieu) 
4549
4550 Tue Jan 13 14:48:27 GMT 2004  Tony Gale <gale@gtk.org>
4551
4552         * docs/faq/gtk-faq.sgml: Update info on using autoconf
4553
4554 Mon Jan 12 23:40:34 2004  Matthias Clasen  <maclas@gmx.de>
4555
4556         * tests/testmerge.c: Adjust to the new connect_proxy signals.
4557
4558         * gtk/gtkuimanager.c
4559         * gtk/gtkactiongroup.c
4560         * gtk/gtkaction.c: Move the connect_proxy and disconnect_proxy signals
4561         from GtkAction to GtkActionGroup and proxy it on GtkUIManager. This
4562         removes the confusion between the disconnect_/connect_proxy signals 
4563         and the (unrelated) virtual functions of the same name and aligns
4564         the setup with the pre_/post_activate signals.
4565
4566 2004-01-12  Jody Goldberg <jody@gnome.org>
4567
4568         * gtk/gtkaction.c (connect_proxy) : only connect activate for menus
4569           with no submenus otherwise it looks like we activate every time a
4570           submenu opens.
4571
4572 2004-01-12  Jody Goldberg <jody@gnome.org>
4573
4574         * gtk/gtkuimanager.c: Remove accidentially committed debug spew.
4575
4576 Sun Jan 11 01:55:07 2004  Matthias Clasen  <maclas@gmx.de>
4577
4578         * gtk/gtkaccelmap.c: Remove accidentally committed notification stuff. 
4579         (gtk_accel_map_lock_path): 
4580         (gtk_accel_map_unlock_path): Path locking can now be nested, a missing
4581         entry is silently created during lock_path(), and treated as an error 
4582         during unlock_path(). These changes have been requested by Tim Janik.
4583
4584 2004-01-10  Jody Goldberg <jody@gnome.org>
4585
4586         * gtk/gtkuimanager.c (d) : Add a debug macro to quiet the spew.
4587         s/merge_signals/ui_manager_signals/ for readability.
4588         (gtk_ui_manager_class_init) : add pre_activate and post_activate
4589           signals.
4590         (cb_proxy_pre_activate) : new.
4591         (cb_proxy_post_activate) : new.
4592         (gtk_ui_manager_insert_action_group) : connect the proxies for
4593           GtkActionGroup::pre/post_activate
4594         (gtk_ui_manager_remove_action_group) : disconnect them.
4595
4596         * gtk/gtkactiongroup.c (gtk_action_group_class_init) : add
4597           'sensitive', and 'visible' properties.  Also add pre_activate and
4598           post_activate signals to help deal with activations at a higher
4599           level (eg GtkUIManager)
4600         (gtk_action_group_init) : init sensitive and visible
4601         (gtk_action_group_set_property) : add sensitive and visible
4602         (gtk_action_group_get_property) : add sensitive and visible
4603         (gtk_action_group_get_sensitive) : new.
4604         (gtk_action_group_get_visible) : new.
4605         (cb_set_action_sensitivity) : new with minor optimization that only
4606           signals sensitivity changes if the action could possibly change.
4607         (cb_set_action_visiblility) : ditto.
4608         (gtk_action_group_set_sensitive) : new.  walk the actions directly
4609           rather than using notify::sensitive because that is simpler, easier
4610           to read, and more efficient.
4611         (gtk_action_group_set_visible) : ditto.
4612         (gtk_action_group_add_action) : Each action can only be in 1 group,
4613           set GtkAction::action_group.
4614         (gtk_action_group_remove_action) : clear it.
4615         (gtk_action_group_add_toggle_actions_full) : warning suppression.
4616         (gtk_action_group_add_radio_actions_full) : warning suppression.
4617         (_gtk_action_group_emit_pre_activate) : new protected routine for use
4618           by GtkAction.
4619         (_gtk_action_group_emit_post_activate) : ditto.
4620
4621         * gtk/gtkaction.c (gtk_action_class_init) : add 'action_group' property.
4622         (gtk_action_init) : initialize it.
4623         (gtk_action_get_property) : get.
4624         (gtk_action_set_property) : set it via
4625         (gtk_action_set_action_group) : new function.
4626         (gtk_action_sync_sensitivity) : new routine to sync proxy sensitivity
4627           with the logical sensitivity (action & group) rather than the simple
4628           action::sensitivity.
4629         (gtk_action_sync_visible) : use gtk_action_is_visible to handle
4630           logical visibility (action & group) rather than the simple
4631           action::visible.  Use widget show/hide directly.
4632         (connect_proxy) : handle the custom sensitivity handler.
4633           Make the TOOL_BUTTON signals more general and support TOOL_ITEM
4634           directly, with special cases for TOOL_BUTTON.  Still not especially
4635           good it might be useful to handle label/use_underline by parmspec
4636           lookup.  Those are likely to be implemented by custom types, and are
4637           assumed to exist in GtkToolItem.
4638         (disconnect_proxy) : disconnect the new sensitivity handler.
4639         (_gtk_action_emit_activate) : add pre/post signals.
4640         (gtk_action_activate) : use logical sensitivity.
4641         (gtk_action_is_sensitive) : logical sensitivity.
4642         (gtk_action_get_sensitive) : actual sensitivity.
4643         (closure_accel_activate) : use logical sensitivity.
4644
4645 Fri Jan  9 22:23:45 2004  Matthias Clasen  <maclas@gmx.de>
4646
4647         * gtk/gtkuimanager.c: Introduce a new parser state for 
4648         accelerator elements to avoid misparsing files containing 
4649         such elements.  (#131035, Morten Welinder)
4650
4651 Fri Jan  9 11:58:47 2004  Manish Singh  <yosh@gimp.org>
4652
4653         * gdk-pixbuf/gdk-pixbuf-io.c: #include <unistd.h> for unlink()
4654
4655 Fri Jan  9 15:28:21 GMT 2004  Tony Gale <gale@gtk.org>
4656
4657         * docs/faq/gtk-faq.sgml: update GtkEntry filter code example
4658
4659 Fri Jan  9 00:34:57 2004  Matthias Clasen  <maclas@gmx.de>
4660
4661         * gtk/gtkuimanager.h:
4662         * gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): New function to
4663         obtain a list of toplevel widgets constructed by the ui manager.
4664
4665         * gtk/gtkuimanager.h (GtkUIManagerItemType): Change to flags, so that 
4666         the values can be combined for gtk_ui_manager_get_toplevels().
4667
4668         * tests/testmerge.c: Add a "Dump toplevels" button to test 
4669         gtk_ui_manager_get_toplevels().
4670
4671 Wed Jan  7 23:20:06 2004  Matthias Clasen  <maclas@gmx.de>
4672
4673         * demos/gtk-demo/Makefile.am (demos): Add entry_completion.c
4674         
4675         * demos/gtk-demo/entry_completion.c: New demo for GtkEntryCompletion 
4676         by Anders Carlsson  (#130464).
4677
4678 Wed Jan  7 23:07:28 2004  Matthias Clasen  <maclas@gmx.de>
4679
4680         * gtk/gtkmain.h: 
4681         * gtk/gtkmain.c (gtk_events_pending): Change the return value from 
4682         gint to gboolean.  (#130718, reported by Johannes Weißl)
4683
4684 Wed Jan  7 23:03:32 2004  Matthias Clasen  <maclas@gmx.de>
4685
4686         * gtk/gtkactiongroup.h: 
4687         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
4688         Remove the redundant name and stock_id parameters, adjust all callers.
4689
4690 Wed Jan  7 22:20:20 2004  Matthias Clasen  <maclas@gmx.de>
4691
4692         * gtk/gtkaction.h: 
4693         * gtk/gtkaction.c (gtk_action_new):  
4694         * gtk/gtktoggleaction.h: 
4695         * gtk/gtktoggleaction.c (gtk_toggle_action_new): 
4696         * gtk/gtkradioaction.h: 
4697         * gtk/gtkradioaction.c (gtk_radio_action_new): Add creation 
4698         functions for actions.
4699
4700         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): 
4701         (gtk_action_group_add_toggle_actions_full): 
4702         (gtk_action_group_add_radio_actions_full): and use the
4703         new functions here.  (#125322, Patch by Jeff Frank)
4704
4705 Wed Jan  7 21:42:49 2004  Matthias Clasen  <maclas@gmx.de>
4706
4707         * gtk/gtkaccelmap.c (gtk_accel_map_lock_path): Fix grammar of 
4708         docs.
4709
4710 2004-01-07  Jan Arne Petersen  <jpetersen@uni-bonn.de>
4711
4712         * gtk/gtkfilechooserdefault.c: (shortcuts_insert_path),
4713         (shortcuts_append_home), (shortcuts_append_desktop),
4714         (shortcuts_append_paths), (shortcuts_add_volumes),
4715         (shortcuts_append_bookmarks), (create_shortcuts_model),
4716         (gtk_file_chooser_default_add_shortcut_folder): add REMOVABLE column
4717         to the shortcuts_model.
4718
4719         (remove_bookmark_button_clicked_cb),
4720         (bookmarks_check_remove_sensitivity): use REMOVABLE column to check if
4721         bookmarks can be removed. Fixes #129873
4722
4723 Wed Jan  7 02:50:55 2004  Matthias Clasen  <maclas@gmx.de>
4724
4725         * demos/testpixbuf-save.c: Make s, S, Control-S, p, P, Control-P,
4726         i, I, Control-I test gdk_pixbuf_save(), gdk_pixbuf_save_to_buffer()
4727         and gdk_pixbuf_save_to_callback() with jpeg, png and ico formats, 
4728         respectively. Tests #82203.
4729
4730 2004-01-06  Federico Mena Quintero  <federico@ximian.com>
4731
4732         * gtk/gtkfilesel.c (gtk_file_selection_create_dir_confirmed): Use
4733         0777 as the mode for mkdir() and let the umask do the right
4734         thing.  Fixes #121819.
4735
4736         * gtk/gtkfilesystemunix.c (filename_is_root): g_path_skip_root()
4737         can return NULL; handle this.  Fixes #129565.
4738
4739 2004-01-06  Alexander Winston  <alexander.winston@comcast.net>
4740
4741         * gtk/gtkfilesel.c: (gtk_file_selection_delete_file): Removed space
4742         that proceeded the end-of-sentence punctuation. Fixes: #130353.
4743
4744 2004-01-06  Jody Goldberg <jody@gnome.org>
4745
4746         * gtk/gtktoolitem.c (gtk_tool_item_set_property) : Call 
4747           gtk_tool_item_set_visible_vertical for PROP_VISIBLE_VERTICAL.
4748
4749 2004-01-05  Federico Mena Quintero  <federico@ximian.com>
4750
4751         * gtk/gtkfilechooserdefault.c (shortcuts_append_bookmarks): Oops,
4752         call shortcuts_add_bookmarks() here.
4753         (remove_bookmark_button_clicked_cb): Ahem, fetch the selected
4754         iter.
4755         (shortcuts_append_paths): Don't display error dialogs here.
4756         (create_file_list): Remove the @#$% rules hint.
4757
4758 2004-01-05  Federico Mena Quintero  <federico@ximian.com>
4759
4760         * gtk/gtkfilechooserdefault.c (toolbar_button_new): New helper
4761         function.
4762         (toolbar_create): Do not use a toolbar widget, just an hbox
4763         instead.  Add the bookmarks buttons and the current folder label
4764         here.
4765         (create_filename_entry_and_filter_combo): Create the filter combo
4766         here.
4767         (filter_create): Don't show the filter combo initially.
4768         (up_button_cb): Renamed from toolbar_up_cb().
4769         (create_shortcuts_buttons): Removed.
4770
4771 2004-01-05  Murray Cumming  <murrayc@usa.net>
4772
4773         * gdk/gdkimage.h: Added <public> documentation to the struct, as
4774         suggested by Owen Taylor.
4775
4776 2004-01-05  Jody Goldberg <jody@gnome.org>
4777
4778         * gtk/gtkiconfactory.c (get_default_icons) : add stock indent, unindent
4779           I would have prefered outdent, but compatibility seems more
4780           important.
4781         * gtk/gtkstock.c (builtin_items) : ditto.
4782         * gtk/gtkstock.h : ditto.
4783         * gtk/stock-icons/Makefile.am : ditto.
4784         * gtk/stock-icons/stock_text_indent_16.png :
4785         * gtk/stock-icons/stock_text_indent_24.png :
4786         * gtk/stock-icons/stock_text_unindent_16.png :
4787         * gtk/stock-icons/stock_text_unindent_24.png : from gnome-icon-theme
4788
4789 Sun Jan  4 15:29:04 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4790
4791         * gtk/gtkradiotoolbutton.[ch]
4792         (gtk_radio_tool_button_new_with_stock_from_widget): Change API so
4793         group is a GtkRadioButton, not a GtkWidget.
4794
4795 2004-01-04  Hans Breuer  <hans@breuer.org>
4796
4797         * gdk/win32/gdkwindow-win32.c : use SWP_NOACTIVATE in 
4798         gdk_window_set_keep_(above|below) to make DND work again.
4799         Thanks to Alif Wahid for noticing.
4800
4801         * gdk/gdk.def : update externals
4802
4803         * gtk/gtkfilesystemwin32.c : adapt to GtkFileSystemIFace changes
4804
4805         * gtk/gtk-stock.[hc] gtk/gtkiconfactory.c 
4806           gtk/stock-icons/Makefile.am gtk/stock-icons/makefile.msc :
4807           gtk/stock-icons/stock_harddisk_16.png 
4808           gtk/stock-icons/stock_harddisk_24.png 
4809         Harddisk stock icons for file system implementations. Beside
4810         FLOPPY and CDROM there is now HARDDISK, probably some 
4811         GTK_STOCK_NETWORK would be useful, but I could not find one.
4812
4813 Sat Jan  3 11:39:42 2004  Manish Singh  <yosh@gimp.org>
4814
4815         * gtk/gtkclipboard.c: Update freedesktop.org clipboard doc link.
4816         Patch from Andrew Moise (#130462).
4817
4818 2004-01-01  Jody Goldberg <jody@gnome.org>
4819
4820         * gtk/gtkaction.c (_GtkActionPrivate) : add visible_horizontal,
4821           visible_vertical.
4822         (gtk_action_class_init) : here.
4823         (gtk_action_init) : here.
4824         (gtk_action_set_property) : here.
4825         (gtk_action_get_property) : here.
4826         (connect_proxy) : and here.
4827
4828 2003-12-30  Jody Goldberg <jody@gnome.org>
4829
4830         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel) :  new
4831           utility routine for use in derived GtkActions with the replicated code
4832           from.
4833         (gtk_action_group_add_actions_full) : here.
4834         (gtk_action_group_add_toggle_actions_full) : here.
4835         (gtk_action_group_add_radio_actions_full) : and here.
4836
4837 2004-01-01  Taneem Ahmed  <taneem@bengalinux.org>
4838
4839         * configure.in: Added "bn" to ALL_LINGUAS.
4840
4841 2004-01-01  Taneem Ahmed  <taneem@bengalinux.org>
4842
4843         * bn.po: Added Bangla translation by 
4844         of Ankur group <gnome-translation@bengalinux.org>.
4845
4846 Fri Jan  2 02:50:11 2004  Matthias Clasen  <maclas@gmx.de>
4847
4848         * gtk/gtkcalendar.c (gtk_calendar_compute_days): 
4849         * gtk/gtkcalendar.c (gtk_calendar_paint_day_names): 
4850         * gtk/gtkcalendar.c (gtk_calendar_init): Changes to support 
4851         week_start values other than 0 and 1, e.g. 6 will let weeks start
4852         on Saturday.  (#130349, Roozbeh Pournader) 
4853
4854 2003-12-31 13:49 Daniel Rogers <dsrogers@phasevelocity.org>
4855
4856         * gdk/x11/gdkinput-x11.c: (gdk_input_translate_coordinates)
4857         
4858         Fix to allow reasonable pointer behavior in window mode when an
4859         extended input device reports an incorrect resolution of 0.  Fixes
4860         bug #123546
4861         
4862 2003-12-31  Christian Neumair  <chris@gnome-de.org>
4863
4864         * gdk-pixbuf/gdk-pixdata.c: (gdk_pixbuf_from_pixdata):
4865         * gtk/gtkfilechooserdefault.c: (list_size_data_func): Use ngettext for
4866         plurals (#123847).
4867
4868 Wed Dec 31 02:05:39 2003  Matthias Clasen  <maclas@gmx.de>
4869
4870         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): 
4871         (gtk_action_group_add_toggle_actions_full):
4872         (gtk_action_group_add_radio_actions_full): Pull accelerator key
4873         from the stock item if stock_id is given, but accelerator 
4874         not.  (Noticed by Jeff Franks and Jody Goldberg)
4875
4876         * tests/testmerge.c: Remove the accelerator from the "Open" entry
4877         to test the above change.
4878         
4879 2003-12-29  Federico Mena Quintero  <federico@ximian.com>
4880
4881         Make show_all() work for the extra and preview widgets; reported
4882         by Paolo Maggi.
4883
4884         * gtk/gtkfilechooserdefault.c (set_preview_widget): show_all() the
4885         preview widget.
4886         (set_extra_widget): show_all() the extra widget.
4887
4888 Mon Dec 29 12:22:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4889
4890         * gtk/gtkuimanager.c (do_updates): 
4891         * gtk/gtktoolbar.c (slide_idle_handler): 
4892         * gtk/gtkdnd.c (gtk_drag_update_idle): 
4893
4894         Add GDK_THREADS_ENTER()/GDK_THREADS_LEAVE() pairs around idle
4895         functions. (#130157, patch from Olexiy Avramchenko).
4896         
4897 2003-12-29  Anders Carlsson  <andersca@gnome.org>
4898
4899         * gtk/gtkradiotoolbutton.c:
4900         * gtk/gtkradiotoolbutton.h:
4901         * gtk/gtkseparatortoolitem.c:
4902         * gtk/gtkseparatortoolitem.h:
4903         * gtk/gtktoggletoolbutton.c:
4904         * gtk/gtktoggletoolbutton.h:
4905         * gtk/gtktoolbar.c:
4906         * gtk/gtktoolbar.h:
4907         * gtk/gtktoolbutton.c:
4908         * gtk/gtktoolbutton.h:
4909         * gtk/gtktoolitem.c:
4910         * gtk/gtktoolitem.h:
4911         Update my e-mail address.
4912         
4913 Mon Dec 29 01:36:22 2003  Matthias Clasen  <maclas@gmx.de>
4914
4915         * gtk/gtkaccelmap.[hc]: (gtk_accel_map_lock_path, 
4916         gtk_accel_map_unlock_path): Add a way to lock individual accelerator
4917         paths.  (#73207, reported by Havoc Pennington)
4918
4919 Sat Dec 27 23:17:56 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4920
4921         * gtk/gtktoolbar.c (slide_idle_handler): use CHILD_VISIBLE
4922         instead of VISIBLE to determine whether we should stop
4923         sliding. (#130018, reported by Christian Persch).
4924
4925 Fri Dec 26 23:24:35 2003  Matthias Clasen  <maclas@gmx.de>
4926
4927         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
4928         Don't use first_action without initializing it if n_entries is 0.
4929
4930 Thu Dec 25 00:26:34 2003  Matthias Clasen  <maclas@gmx.de>
4931
4932         * gdk/x11/gdkcursor-x11.c (gdk_display_get_default_cursor_size):
4933         Add the missing _get_ to the name of the non-Xcursor version of
4934         this function.  (noticed by Torsten Schoenfeld)
4935
4936 Tue Dec 23 22:34:50 2003  Manish Singh  <yosh@gimp.org>
4937
4938         * gtk/gtkicontheme.h: fix GTK_TYPE_ICON_INFO macro, reported by
4939         muppet.
4940
4941 2003-12-24  Jody Goldberg <jody@gnome.org>
4942
4943         * gtk/gtkactiongroup.h : Add some const to the char * in
4944           GtkActionEntry*.  We're reccomending people pass static strings to
4945           them, and not freeing them.  This stems to flood of warnings that
4946           result.
4947         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full) : change
4948           temp vars to const to match above.
4949         (gtk_action_group_add_toggle_actions_full) : ditto.
4950         (gtk_action_group_add_radio_actions_full) : ditto.
4951
4952 Wed Dec 24 01:12:53 2003  Matthias Clasen  <maclas@gmx.de>
4953
4954         * gtk/gtkclipboard.[hc]: Add GtkClipboardTargetReceivedFunc,
4955         gtk_clipboard_request_targets() and 
4956         gtk_clipboard_wait_for_targets().  (#101774, Dom Lachowicz)
4957
4958 Mon Dec 22 00:40:39 2003  Matthias Clasen  <maclas@gmx.de>
4959
4960         * gtk/gtkcalendar.c (gtk_calendar_paint_arrow): Use 
4961         gtk_paint_arrow instead of draw_arrow_left/draw_arrow_right.
4962         * gtk/gtkcalendar.c (draw_arrow_left):
4963         (draw_arrow_right): Removed. 
4964         * gtk/gtkcalendar.c (gtk_calendar_realize_arrows): 
4965         * gtk/gtkcalendar.c (gtk_calendar_state_changed): Set the
4966         arrow_state to GTK_STATE_INSENSITIVE if the calendar is 
4967         insensitive.  (#97376)
4968
4969 Sun Dec 21 23:17:01 2003  Matthias Clasen  <maclas@gmx.de>
4970
4971         * gtk/gtkuimanager.c (update_node): 
4972         (update_smart_separators): 
4973         (_gtk_menu_is_empty): 
4974         (find_menu_position): 
4975         * gtk/gtktreeview.c (gtk_tree_view_search_dialog_destroy): 
4976         * gtk/gtkcombobox.c (gtk_combo_box_relayout_item): 
4977         (gtk_combo_box_relayout): Fix memory leaks caused by the
4978         failure to free the result of gtk_container_get_children().
4979
4980 Sun Dec 21 17:34:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4981
4982         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): Set the right
4983         properties when the window becomes a toplevel. When a window that
4984         was previously a toplevel becomes a toplevel again, restore its
4985         window type. Also make sure the focus window is removed from the
4986         XID hash when it is destroyed. (#117579, reported by Morten
4987         Welinder, patch reviewed by Owen Taylor).
4988
4989 Sun Dec 21 01:54:40 2003  Matthias Clasen  <maclas@gmx.de>
4990
4991         * gtk/gtkmenushell.h: 
4992         * gtk/gtkmenushell.c (gtk_menu_shell_cancel): New function 
4993         to emit the "cancel" signal on a menu shell.
4994
4995         * gtk/gtkmenu.c (gtk_menu_key_press): 
4996         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu): 
4997         * gtk/gtkmenubar.c (_gtk_menu_bar_cycle_focus): Use the 
4998         new function instead of directly emitting the 
4999         signal.  (#81803, Owen Taylor)
5000
5001 Sun Dec 21 00:39:50 2003  Matthias Clasen  <maclas@gmx.de>
5002
5003         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
5004         Fix the "language_set" blurb.  
5005         
5006 Sat Dec 20 22:06:03 2003  Kristian Rietveld  <kris@gtk.org>
5007
5008         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): do not invalidate
5009         all of treeview when resizing (#110074, patch from Soeren Sandmann).
5010
5011 Fri Dec 19 23:36:00 2003  Kristian Rietveld  <kris@gtk.org>
5012
5013         Fixes #108458.
5014
5015         * gtk/gtkcelllayout.[ch]: added a reorder method.
5016
5017         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_layout_init),
5018         (gtk_tree_view_column_cell_layout_reorder): implement reorder.
5019
5020         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_init),
5021         (gtk_cell_view_cell_layout_reorder): ditto.
5022
5023         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_init),
5024         (gtk_combo_box_cell_layout_reorder): ditto.
5025
5026         * gtk/gtkentrycompletion.c (gtk_entry_completion_cell_layout_init),
5027         (gtk_entry_completion_reorder): ditto.
5028
5029 Fri Dec 19 22:18:19 2003  Kristian Rietveld  <kris@gtk.org>
5030
5031         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): use strstr
5032         instead of strcmp (#117127, suggestion from Soeren Sandmann).
5033
5034 Fri Dec 19 21:52:46 2003  Kristian Rietveld  <kris@gtk.org>
5035
5036         * gtk/gtkmenu.c (gtk_menu_do_insert): move item insertion logic
5037         here from gtk_menu_real_insert(),
5038         (gtk_menu_real_insert): just call gtk_menu_do_insert(),
5039         (gtk_menu_reorder_child): run _do_insert after inserting the child
5040         (unbreaks _reorder_child, reported by Tim Janik).
5041
5042 2003-12-19  Federico Mena Quintero  <federico@ximian.com>
5043
5044         * gtk/gtkfilechooserdefault.c (list_mtime_data_func): Use
5045         g_date_strftime() for UTF-8 correctness; use Julian dates to
5046         simplify the function.
5047
5048 Fri Dec 19 01:47:34 2003  Matthias Clasen  <maclas@gmx.de>
5049
5050         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): 
5051         Test extra_width, not extra_height, when determining whether to
5052         set extra_width.  (#129647, Jan Arne Petersen)
5053
5054 Fri Dec 19 01:35:34 2003  Matthias Clasen  <maclas@gmx.de>
5055
5056         Fix the behaviour of insensitive actions, which was broken
5057         when gtk_action_activate() was changed to pay attention to 
5058         sensitivity  (#129557, Christian Persch)
5059         
5060         * gtk/gtkaction.h: 
5061         * gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
5062         function to emit an activate signal without regard to sensitivity.
5063
5064         * gtk/gtkradioaction.c: 
5065         * gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
5066         instead of gtk_action_activate().
5067
5068 2003-12-18  Jody Goldberg <jody@gnome.org>
5069
5070         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon)) : Add a sanity test
5071           to ensure that the base hicolor theme is installed.  Silently
5072           failing to produce icons that apps assume exist in the theme seems
5073           like a bad idea.
5074
5075 Thu Dec 18 19:13:12 2003  Kristian Rietveld  <kris@gtk.org>
5076
5077         Fixes #110249, reworked patch from Joshua N Pritikin.
5078
5079         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_type),
5080         (gtk_tree_model_sort_tree_drag_source_init),
5081         (gtk_tree_model_sort_row_draggable),
5082         (gtk_tree_model_sort_drag_data_get),
5083         (gtk_tree_model_sort_drag_data_delete): implement GtkTreeDragSource.
5084
5085         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_get_type),
5086         (gtk_tree_model_filter_tree_drag_source_init),
5087         (gtk_tree_model_filter_row_draggable),
5088         (gtk_tree_model_filter_drag_data_get),
5089         (gtk_tree_model_filter_drag_data_delete): ditto.
5090
5091 Thu Dec 18 18:01:01 2003  Kristian Rietveld  <kris@gtk.org>
5092
5093         * gtk/gtktreeview.c (gtk_tree_view_class_init): add key bindings
5094         for "*" and "/" (expand/collapse all). (#110195, reported by
5095         Calum Benson).
5096
5097 Thu Dec 18 17:52:56 2003  Kristian Rietveld  <kris@gtk.org>
5098
5099         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
5100         clear the extra_attrs list if we set "text" after "markup".
5101         (Fixes #121933, Federico Mena Quintero).
5102
5103 2003-12-18  Alexander Larsson  <alexl@redhat.com>
5104
5105         * gtk/gtkicontheme.c (gtk_icon_info_get_embedded_rect):
5106         Fix typo that used the wrong x/y values for the x1, y1 point
5107         (#129605)
5108
5109 Thu Dec 18 01:41:50 2003  Kristian Rietveld  <kris@gtk.org>
5110
5111         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init),
5112         (gtk_cell_renderer_text_finalize),
5113         (gtk_cell_renderer_text_get_property),
5114         (gtk_cell_renderer_text_set_property), (get_layout): added language
5115         and language_set properties like GtkTextTag has. (#103800, reported
5116         by Owen Taylor).
5117
5118 Thu Dec 18 01:37:59 2003  Matthias Clasen  <maclas@gmx.de>
5119
5120         * gtk/gtkwidget.c (gtk_widget_activate): Correct misleading docs.
5121         * gtk/gtkbutton.c (gtk_button_class_init): Add docs for the 
5122         "activate" signal.  (#129358, Ka-Hing Cheung)
5123
5124 Thu Dec 18 01:21:59 2003  Kristian Rietveld  <kris@gtk.org>
5125
5126         * gtk/gtktreeview.c (gtk_tree_view_class_init): Jonathan got
5127         the logical flag backwards in the expand_collapse_cursor_row
5128         bindings, fixing.
5129         (gtk_tree_view_real_expand_collapse_cursor_row): invert expand
5130         flag when !logical and in RTL. (Fixes #107527, reported by
5131         Noah Levitt).
5132
5133 Thu Dec 18 01:10:16 2003  Kristian Rietveld  <kris@gtk.org>
5134
5135         * gtk/gtktreeview.c (gtk_tree_view_button_press): only start
5136         editing when activated by the left mouse button. (#106869,
5137         patch from Evan Martin).
5138
5139 Thu Dec 18 00:57:18 2003  Kristian Rietveld  <kris@gtk.org>
5140
5141         Migrating all cell renderers to use the new instance private data
5142         construction.
5143
5144         * gtk/gtktreeprivate.h: remove GtkCellRendererInfo, as it is no
5145         longer being used.
5146
5147         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init),
5148         (gtk_cell_renderer_class_init), (gtk_cell_renderer_get_property),
5149         (set_cell_bg_color), (gtk_cell_renderer_render): remove old
5150         GtkCellRendererInfo handling, migrate to instance private data.
5151
5152         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done),
5153         (gtk_cell_renderer_text_start_editing): moved focus_out_id
5154         from GtkCellRendererInfo to text renderer private data.
5155
5156         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_init),
5157         (gtk_cell_renderer_pixbuf_class_init),
5158         (gtk_cell_renderer_pixbuf_finalize),
5159         (gtk_cell_renderer_pixbuf_get_property),
5160         (gtk_cell_renderer_pixbuf_set_property),
5161         (gtk_cell_renderer_pixbuf_create_stock_pixbuf),
5162         (gtk_cell_renderer_pixbuf_get_size), (gtk_cell_renderer_pixbuf_render):
5163         migrate to instance private data.
5164
5165         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init),
5166         (gtk_cell_renderer_toggle_get_property),
5167         (gtk_cell_renderer_toggle_set_property),
5168         (gtk_cell_renderer_toggle_render): migrate to instance private data.
5169
5170 Thu Dec 18 00:24:32 2003  Kristian Rietveld  <kris@gtk.org>
5171
5172         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init),
5173         (gtk_cell_renderer_text_get_property),
5174         (gtk_cell_renderer_text_set_property), (get_layout): add a
5175         single-paragraph-mode property, use private instance data.
5176         (Fixes #114943, reported by Morten Welinder).
5177
5178 Thu Dec 18 00:07:01 2003  Kristian Rietveld  <kris@gtk.org>
5179
5180         * gtk/gtktreemodel.h (gtk_tree_path_new_root),
5181         (gtk_tree_model_get_iter_root): now deprecated (#106953, reported
5182         by Matthias Clasen).
5183
5184 Wed Dec 17 23:50:56 2003  Kristian Rietveld  <kris@gtk.org>
5185
5186         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
5187         if we set a new stock_id and there was a previous stock_id, unref
5188         the pixbuf (since it was used to renderer the previous stock_id
5189         and stock_id might have been set to NULL now). (Fixes #122966).
5190
5191 2003-12-17  Marco Pesenti Gritti  <marco@gnome.org>
5192
5193         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_get_iter):
5194
5195         Check that index is not bigger than level array length
5196         also when depth is 1. Now get_iter_first correctly return
5197         FALSE when the model is empty (#129411).
5198
5199 Wed Dec 17 23:31:19 2003  Kristian Rietveld  <kris@gtk.org>
5200
5201         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): only
5202         try to strcmp or strlen if we managed to normalize and casefold
5203         the string correctly. Fixes crashes with non-UTF8 strings.
5204         (#121617, Patch from Tim-Philipp Müller).
5205
5206 Wed Dec 17 23:20:23 2003  Matthias Clasen  <maclas@gmx.de>
5207
5208         * gtk/gtkexpander.c (gtk_expander_animation_timeout): Add missing
5209         GDK_THREADS_ENTER()/GDK_THREADS_LEAVE().
5210         * gtk/gtkcalendar.c, gtk/gtkclist.c, gtk/gtkexpander.c, 
5211         gtk/gtklist.c, gtk/gtknotebook.c, gtk/gtkselection.c, 
5212         gtk/gtkspinbutton.c: Cast second argument to g_timeout_add() to
5213         GSourceFunc instead of GtkFunction.  (#129525, Olexiy Avramchenko) 
5214
5215 Wed Dec 17 23:16:45 2003  Kristian Rietveld  <kris@gtk.org>
5216
5217         * gtk/gtktreeview.c (gtk_tree_view_button_press): fix compile warning.
5218         (#122727, patch from Kjartan Maraas).
5219
5220 Wed Dec 17 21:23:01 2003  Kristian Rietveld  <kris@gtk.org>
5221
5222         Yay! Fixed height mode! Hooray! (Part 2 of #80868).
5223
5224         * gtk/gtktreeview.c (gtk_tree_view_class_init),
5225         (gtk_tree_view_init), (gtk_tree_view_set_property),
5226         (gtk_tree_view_get_property), (gtk_tree_view_set_model): add a
5227         fixed_height_mode property,
5228         (intialize_fixed_height_mode), (do_validate_rows),
5229         (column_sizing_notify), (gtk_tree_view_set_fixed_height_mode),
5230         (gtk_tree_view_style_set), (gtk_tree_view_row_changed),
5231         (gtk_tree_view_row_inserted), (gtk_tree_view_remove_column),
5232         (gtk_tree_view_insert_column): implement fixed height mode,
5233         (gtk_tree_view_append_column), (gtk_tree_view_insert_column),
5234         (gtk_tree_view_insert_column_with_attributes),
5235         (gtk_tree_view_insert_column_with_data_func): update docs.
5236
5237         * gtk/gtktreeprivate.h: add two fields to GtkTreePrivate.
5238
5239 2003-12-07  Murray Cumming  <murrayc@usa.net>
5240  
5241         * gtk/gtktreemodel.c:
5242         (row_inserted_marshal, row_deleted_marshal, rows_reorderered_marshal)
5243         Actually call the default signal handlers instead of calling the
5244         marshallers themselves in an endless loop. These default signal handler
5245         callbacks are not actually set so this is only noticed by gtkmm at
5246         the moment. Bug 123923.
5247
5248 2003-12-16  Federico Mena Quintero  <federico@ximian.com>
5249
5250         * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Added a
5251         "volumes-changed" signal.  Added the following methods:
5252                 list_volumes
5253                 volume_free
5254                 volume_get_base_path
5255                 volume_get_is_mounted
5256                 volume_mount
5257                 volume_get_display_name
5258                 volume_render_icon
5259
5260         * gtk/gtkfilesystem.c (gtk_file_system_base_init): Create the
5261         "volumes-changed" signal.
5262         (gtk_file_system_list_volumes): New function.
5263         (gtk_file_system_volume_free): New function.
5264         (gtk_file_system_volume_get_base_path): New function.
5265         (gtk_file_system_volume_get_is_mounted): New function.
5266         (gtk_file_system_volume_mount): New function.
5267         (gtk_file_system_volume_get_display_name): New function.
5268         (gtk_file_system_volume_render_icon): New function.
5269
5270         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_free): Implement.
5271         (gtk_file_system_unix_volume_get_base_path): Implement.
5272         (gtk_file_system_unix_volume_get_is_mounted): Implement.
5273         (gtk_file_system_unix_volume_mount): Implement.
5274         (gtk_file_system_unix_volume_get_display_name): Implement.
5275         (gtk_file_system_unix_volume_render_icon): Implement.
5276
5277         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
5278         Added a field for the "volumes-changed" signal connection.
5279         (gtk_file_chooser_default_set_property): Connect to
5280         "volumes-changed" on the file system.
5281         (gtk_file_chooser_default_finalize): Disconnect from
5282         "volumes-changed".
5283
5284         * gtk/gtkfilechooserdefault.c (shortcuts_remove_rows): New helper
5285         function.
5286         (shortcuts_get_index): New helper function.
5287         (shortcuts_insert_path): Can now insert volumes as well as paths.
5288         (shortcuts_append_paths): Don't take is_file_system_root.
5289         (shortcuts_add_volumes): New function.
5290         (shortcuts_append_file_system_roots): Removed.
5291         (create_shortcuts_model): Use shortcuts_add_volumes().
5292         (remove_bookmark_button_clicked_cb): Check that the index is
5293         within range.
5294         (bookmarks_check_add_sensitivity): Take volumes into account.
5295         (shortcuts_get_selected_index): New helper function.
5296         (remove_bookmark_button_clicked_cb): Use
5297         shortcuts_get_selected_index().
5298         (bookmarks_check_remove_sensitivity): Likewise.
5299         (shortcuts_select_func): Likewise.
5300         (shortcuts_row_activated_cb): Handle volumes as well as normal
5301         paths.
5302         (shortcuts_activate_volume): New function.
5303         (struct _GtkFileChooserDefault): Removed the bookmarks_set and
5304         bookmarks_iter fields.
5305         (shortcuts_append_bookmarks): Use shortcuts_remove_rows().
5306         (bookmarks_changed_cb): Use shortcuts_add_bookmarks().
5307         (remove_bookmark_rows): Removed.
5308         (shortcuts_add_bookmarks): New function; moved most of the code
5309         over from shortcuts_append_bookmarks().
5310         (shortcuts_append_bookmarks): Add the separator node here, and
5311         then call shortcuts_add_bookmarks().
5312
5313 Tue Dec 16 15:01:10 2003  Manish Singh  <yosh@gimp.org>
5314
5315         * gtk/gtkfilechooserwidget.c: fix preprocessor conditional confusion.
5316         (G_OS_UNIX/G_OS_WIN32 stuff)
5317
5318 Tue Dec 16 01:46:46 2003  Matthias Clasen  <maclas@gmx.de>
5319
5320         Do not interpret distant clicks as double-clicks  (#116541,
5321         Bernhard Walle):
5322         
5323         * gdk/gdkdisplay.h (struct GdkDisplay): Add new fields
5324         double_click_distance, button_x and button_y.
5325         * gdk/gdkdisplay.c (gdk_display_init): Initialize the new fields.
5326
5327         * gdk/gdkdisplay.h: 
5328         * gdk/gdkevents.c (gdk_display_set_double_click_distance): 
5329         New function to set the double click distance on a display.
5330
5331         * gdk/gdkevents.c: Take double click distance into account
5332         when generating single, double or triple clicks.
5333
5334         * gtk/gtksettings.c: Add new setting "gtk-double-click-distance".
5335
5336         * gdk/x11/gdkevents-x11.c: Add the XSetting 
5337         "Net/DoubleClickDistance" and map it to "gtk-double-click-distance".
5338
5339 2003-12-15  Federico Mena Quintero  <federico@ximian.com>
5340
5341         * gtk/gtkdialog.c: Sigh, revert the change.
5342
5343 2003-12-15  Federico Mena Quintero  <federico@ximian.com>
5344
5345         * gtk/gtkdialog.c (dialog_has_cancel): Removed.
5346         (gtk_dialog_close): Don't call dialog_has_cancel().  At least
5347         allows sane behavior for #101293.
5348
5349 Mon Dec 15 00:56:54 2003  Matthias Clasen  <maclas@gmx.de>
5350
5351         * gtk/gtkbutton.[hc]: Add new properties, xalign and yalign, with
5352         getter and setter gtk_button_[sg]et_alignment(), to set the
5353         alignment of the child.  (#70961, Jody Goldberg)
5354
5355 2003-12-14  Hans Breuer  <hans@breuer.org>
5356
5357         * gtk/gtkprivate.h gtk/gtkmain.c : handle GTK_DATADIR
5358         similar as the other filesystem placement 'constants' (dynamic
5359         resolving on win32)
5360
5361         * gtk/gtkfilechooserwidget.c : handle file system to win32
5362         renaming here as will
5363         * gtk/gtkfilesystemwin32.c : implement render_icon
5364
5365         * gtk/gtk.def gdk/gdk.def : updated externals
5366
5367         * gdk/win32/gdkdisplay-win32.c : make it compile without
5368         <multimon.h> - i.e. even older sdk
5369
5370         * gdk/win32/gdkevents-win32.c : match resize_timer_proc
5371         with TIMERPROC prototype
5372
5373         * gdk/win32/gdkwindow-win32.c : older msvc does not know
5374         BITMAPV5HEADER (from win xp) either
5375
5376         * gtk/gtkimmodule.c : make it compile even if GTK_LOCALEDIR is
5377         not defined
5378
5379         * tests/testfilechooser.c : recent GLib crashes on 
5380         g_print ("%s", NULL) so avoid this
5381
5382 2003-12-14  Tor Lillqvist  <tml@iki.fi>
5383
5384         * gdk/win32/gdkselection-win32.c: Calls to OpenClipboard() must be
5385         followed by calls to CloseClipboard(). Add a missing call to
5386         CloseClipboard(). Found by Adam Wright, fixes #104944. Use
5387         API_CALL macro in more places.
5388
5389 2003-12-14  Tor Lillqvist  <tml@iki.fi>
5390
5391         Merge from stable:
5392
5393         * gdk/gdkdisplaymanager.c: Mark default_display static.
5394
5395         * gdk/win32/gdkdnd-win32.c: Mark current_dest_drag static.
5396
5397         * gdk/win32/gdkkeys-win32.c: Disable some overly verbose debugging
5398         output.
5399
5400         * gdk/win32/gdkevents-win32.c: Clean up the debugging output from
5401         --gdk-debug=events. In general, output just one line of debugging
5402         output for each Windows message, plus one line for each GDK event
5403         generated. Indent all lines according to window procedure nesting
5404         level.
5405
5406         (inner_window_procedure): Rename from real_window_procedure.
5407
5408         (find_real_window_for_grabbed_mouse_event): Don't get misled when
5409         the point is in the non-client (decoration) area of the window
5410         returned by WindowFromPoint(). Return the root window in that
5411         case.
5412
5413         (build_pointer_event_state): Test also MK_XBUTTON1 and
5414         MK_XBUTTON2 (buttons 4 and 5).
5415
5416         (synthesize_enter_event): Track the mouse leaving the window in
5417         the event being generated, not the one mentioned in the Windows
5418         message.
5419
5420         (propagate): Test for NULL parent earlier. Improves event
5421         generation from a grabbed pointer. Part of fix for #107320.
5422
5423         (handle_stuff_while_moving_or_resizing): New function, to
5424         dispatch the main loop (once).
5425
5426         (resize_timer_proc): New function, set to be called by an inerval
5427         timer during resizes/moves. Calls handle_stuff_while_moving_or_resizing().
5428
5429         (gdk_event_translate): Drop unused return_exposes parameter.
5430
5431         Handle WM_XBUTTONDOWN and UP messages (buttons 4 and 5).
5432
5433         On WM_SYSKEYUP, generate a key release event also for just the Alt
5434         key.
5435
5436         On WM_MOUSELEAVE, generate a leave event of type
5437         GDK_NOTIFY_ANCESTOR (and not UNKNOWN) if the mouse left a
5438         top-level window, and left the app completely.
5439
5440         On WM_ENTERSIZEMOVE, set a flag, and start an interval timer that
5441         calls resize_timer_proc() at regular intervals. On
5442         WM_EXITSIZEMOVE, kill the timer.
5443
5444         On WM_WINDOWPOSCHANGED, generate a configure event if necessary,
5445         and dispatch the main loop (by calling
5446         handle_stuff_while_moving_or_resizing()). Fixes #99540, idea by
5447         Herman Bloggs.
5448
5449         * gdk/win32/gdkmain-win32.c (_gdk_win32_message_to_string): Handle
5450         also wintab messages.
5451
5452         * gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
5453         Instead of using WS_EX_TOOLWINDOW, implement by setting/unsetting
5454         the window's owner. Fixes #118093, reported by Maxime Romano.
5455
5456 Tue Dec  8 09:41:00 2003  Tim Evans  <t.evans@aranz.com>
5457
5458         * gdk/win32/gdkwindow-win32.[ch]: Implement
5459         gdk_window_set_icon_list() for Win32, with support for big and
5460         small icons and support for alpha-channel icons under Windows
5461         XP. Replaces the previous implementation of gdk_window_set_icon().
5462         (#128762)
5463         
5464 Sun Dec 14 01:28:23 2003  Matthias Clasen  <maclas@gmx.de>
5465
5466         * gdk/x11/gdkprivate-x11.h: 
5467         * gdk/x11/gdkx.h: 
5468         * gdk/x11/gdkevents-x11.c (gdk_x11_register_standard_event_type): 
5469         Rename from _gdk_x11_register_event_type(), added API docs.
5470         * gdk/x11/gdkinput-x11.c (_gdk_input_common_init): 
5471         * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init): Adjust
5472         all callers.  (#121471, Bill Haneman)
5473
5474 Sat Dec 13 23:37:50 2003  Matthias Clasen  <maclas@gmx.de>
5475
5476         * gdk/gdkdraw.c (gdk_draw_pixbuf): Document that the clip mask
5477         of gc is ignored.  (#101983, Sebastian Rittau)
5478
5479 Sat Dec 13 16:13:27 2003  Kristian Rietveld  <kris@gtk.org>
5480
5481         A trick for a faster treeview, step 1. Patch to short circuit
5482         _build_tree(), inspired by Jonathan (#80868).
5483
5484         * gtk/gtktreeview.c (gtk_tree_view_init): don't put _IS_LIST in
5485         flags by default,
5486         (gtk_tree_view_build_tree): don't even try to recurse when the
5487         model says that it is a list, remove flag unsetter,
5488         (gtk_tree_view_set_model): change flag setting logic.
5489
5490         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_flags):
5491         propagate whether or not the child model has _IS_LIST set.
5492
5493         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_get_flags):
5494         ditto.
5495
5496 Sat Dec 13 02:33:17 2003  Matthias Clasen  <maclas@gmx.de>
5497
5498         * gtk/gtkrange.c (gtk_range_scroll): Undo the last change, 
5499         since it broke logical keynav. 
5500         * gtk/gtkrange.c (range_get_scroll_for_grab): Fix stepper
5501         direction in inverted scrollbars here instead.
5502
5503 Sat Dec 13 00:39:24 2003  Matthias Clasen  <maclas@gmx.de>
5504
5505         * gtk/gtkviewport.c (viewport_set_hadjustment_values): Implement
5506         "gravity" for RTL mode in a better way: Keep the distance from 
5507         the upper end of the page to the upper bound constant. This also 
5508         fixes problems with the initial position of the viewport in RTL 
5509         mode.  (#129063)
5510         
5511 Fri Dec 12 21:00:12 2003  Kristian Rietveld  <kris@gtk.org>
5512
5513         Combo box flipping support.
5514
5515         * gtk/gtkcombobox.c (gtk_combo_box_menu_position),
5516         (gtk_combo_box_size_allocate): support RTL flipping (#126518,
5517         patch from Matthias Clasen),
5518         (gtk_combo_box_popup): fix popup window alignment if there's a
5519         cell view frame visible (#126518, patch from Semion Chichelnitsky).
5520
5521         * gtk/gtkcellview.c (gtk_cell_view_expose): support RTL flipping
5522         (#128348, patch from Semion Chichelnitsky).
5523
5524 Fri Dec 12 01:13:34 2003  Matthias Clasen  <maclas@gmx.de>
5525
5526         * examples/gtkdial/gtkdial.c:
5527         * examples/menu/menu.c:
5528         * examples/scribble-xinput/scribble-xinput.c:
5529         * examples/progressbar/progressbar.c:
5530         * docs/tutorial/gtk-tut.sgml: Remove deprecated functions
5531         in examples. (#129074, Olexiy Avramchenko)
5532         * examples/calendar/Makefile:
5533         * examples/rangewidgets/Makefile:
5534         * examples/menu/Makefile: Allow deprecated functions in
5535         examples which use deprecated widgets.
5536
5537 Fri Dec 12 00:43:16 2003  Matthias Clasen  <maclas@gmx.de>
5538
5539         * gdk/gdk.c (gdk_threads_set_lock_functions): 
5540         * gdk/x11/gdkspawn-x11.c: Add "Since: 2.4" to doc comments.
5541
5542 Fri Dec 12 00:05:31 2003  Matthias Clasen  <maclas@gmx.de>
5543
5544         * gtk/gtkrange.c (gtk_range_scroll): Fix direction of 
5545         steppers in inverted scrollbars.  (#129084, Olexiy Avramchenko)
5546
5547 Thu Dec 11 23:50:30 2003  Matthias Clasen  <maclas@gmx.de>
5548
5549         * gtk/gtknotebook.c (gtk_notebook_pages_allocate): Don't 
5550         unnecessarily reserve space for arrows in RTL mode.  (#129075,
5551         Semion Chichelnitsky)
5552
5553 Thu Dec 11 00:35:12 2003  Matthias Clasen  <maclas@gmx.de>
5554
5555         Changes to allow "no input" windows (#64613):
5556         
5557         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean
5558         field accept_focus.
5559         
5560         * gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to
5561         set it.
5562
5563         * gtk/gtkwindow.[hc]: Add a boolean property "accept_focus"
5564         and gtk_window_get_focus() and gtk_window_set_focus().
5565
5566         * gdk/win32/gdkwindow-win32.c (gdk_window_new): 
5567         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new): 
5568         * gdk/x11/gdkwindow-x11.c (gdk_window_set_new):
5569         Initialize the accept_focus field to TRUE.
5570
5571         * gdk/win32/gdkwindow-win32.c (gdk_window_set_accept_focus): 
5572         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_accept_focus): 
5573         * gdk/x11/gdkwindow-x11.c (gdk_window_set_accept_focus): 
5574         Implementations for the various backends. The Win32 and linux-fb
5575         implementations set the accept_focus field, but don't use it yet 
5576         to actually implement noinput windows. The X implementation updates
5577         the WM_HINTS to select the globally active input model (see the
5578         ICCCM) if accept_focus is FALSE.
5579
5580         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Ignore the
5581         WM_TAKE_FOCUS message if accept_focus is FALSE.
5582         
5583 2003-12-10  Federico Mena Quintero  <federico@ximian.com>
5584
5585         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
5586         Added toolbar items for the filter separator and the filter item.
5587         (toolbar_create): Add the filter widgets here.
5588         (filter_create): Renamed from create_filter().  Don't store the
5589         alignment in the impl structure, just return it.
5590         (toolbar_show_filters): New function.
5591         (gtk_file_chooser_default_add_filter): Use toolbar_show_filters().
5592         (gtk_file_chooser_default_remove_filter): Likewise.
5593         (gtk_file_chooser_default_constructor): Don't create the filter
5594         widget here.
5595         (struct _GtkFileChooserDefault): Added a field for a current
5596         folder label.
5597         (gtk_file_chooser_default_constructor): Create the folder label.
5598         (gtk_file_chooser_default_set_current_folder): Set the current
5599         folder label.
5600
5601         * tests/testfilechooser.c (main): Dramatically improved the
5602         usability of the extra widget through careful word choice.
5603
5604 2003-12-10  Mark McLoughlin  <mark@skynet.ie>
5605
5606         * gdk/gdk.h: include gdkspawn.h.
5607
5608 2003-12-10  Mark McLoughlin  <mark@skynet.ie>
5609
5610         * gdk/linux-fb/gdkspawn-fb.c,
5611           gdk/win32/gdkspawn-win32.c,
5612           gdk/x11/gdkspawn-x11.c: (gdk_spawn_command_line_on_screen):
5613         s/gdk_spawn/gdk_spawn_on_screen/.
5614
5615 2003-12-10  Mark McLoughlin  <mark@skynet.ie>
5616
5617         Utility functions for multi-screen applications which need
5618         to ensure launched applications appear on a certain screen.
5619         See bug #95897.
5620         
5621         * gdk/gdkspawn.h: header for multi-screen launching
5622         support.
5623         
5624         * gdk/Makefile.am: install gdkspawn.h.
5625         
5626         * gdk/x11/Makefile.am:
5627         * gdk/x11/gdkspawn-x11.c:
5628         (gdk_spawn_make_environment_for_screen): private function
5629         to create an environment vector with DISPLAY set appropriately
5630         for the screen.
5631         (gdk_spawn_on_screen): multi-screen version of g_spawn_async().
5632         (gdk_spawn_on_screen_with_pipes): version of g_spawn_async_with_pipes().
5633         (gdk_spawn_command_line_on_screen): version of g_spawn_command_line_async().
5634         
5635         * gdk/linux-fb/Makefile.am,
5636           gdk/linux-fb/gdkspawn-fb.c: linux-fb impl.
5637         
5638         * gdk/win32/Makefile.am,
5639           gdk/win32/gdkspawn-win32.c: win32 impl.
5640
5641 2003-12-09  Federico Mena Quintero  <federico@ximian.com>
5642
5643         * gtk/gtkfilechooserdefault.c (shortcuts_append_home): Use "Home"
5644         rather than "Username's Home" (#125964).
5645         (shortcuts_selection_changed_cb): New callback, check the
5646         sensitivity of the Remove Bookmark button at the right time.
5647         (shortcuts_row_activated_cb): It is not necessary to check the
5648         sensitivity here.
5649
5650 Wed Dec 10 00:06:24 2003  Matthias Clasen  <maclas@gmx.de>
5651
5652         Improve the GDK API for dealing with group leaders (#119375):
5653         
5654         * gdk/gdkwindow.h: 
5655         * gdk/x11/gdkwindow-x11.c (gdk_window_get_group): New function to 
5656         get the group leader of a toplevel window as a GdkWindow.
5657
5658         * gdk/gdkdisplay.h: 
5659         * gdk/x11/gdkdisplay-x11.c (gdk_display_get_default_group): New 
5660         function to get the default group leader as a GdkWindow.
5661
5662         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add a field for
5663         the GdkWindow of the default group leader.
5664         
5665         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Construct the GdkWindow
5666         for the default group leader.
5667
5668 2003-12-09  Noah Levitt  <nlevitt@columbia.edu>
5669
5670         * gdk/gdkkeysyms.h:
5671         * gdk/gdkkeyuni.c: Add keysyms Ukrainian_ghe_with_upturn,
5672         Ukrainian_GHE_WITH_UPTURN. (#128529)
5673
5674 2003-12-08  Jan Arne Petersen  <jpetersen@uni-bonn.de>
5675
5676         * gtk/gtkfilechooserdefault.c:
5677         (gtk_file_chooser_default_get_paths), (entry_activate): Use the
5678         behavior of the GtkFileSelection to determine selected paths in
5679         single selected, GTK_FILE_CHOOSER_ACTION_SAVE mode.
5680
5681 2003-12-08  Federico Mena Quintero  <federico@ximian.com>
5682
5683         * gtk/gtkfilechooserdefault.c
5684         (gtk_file_chooser_default_get_paths): Don't declare the closure
5685         struct twice.
5686         (get_paths_foreach): Likewise.
5687
5688 Tue Dec  9 00:12:36 2003  Matthias Clasen  <maclas@gmx.de>
5689
5690         * gtk/gtkfilesystemwin32.[hc]: s/Unix/Win32/g. 
5691
5692 2003-12-08  Tor Lillqvist  <tml@iki.fi>
5693
5694         * gdk/win32/gdkdisplay-win32.c: Use <multimon.h> when compiling
5695         with MSVC and old headers. (#126933, John Ehresman)
5696
5697 Mon Dec  8 10:54:44 2003  Owen Taylor  <otaylor@redhat.com>
5698          
5699         * === Released 2.3.1 ===
5700
5701         * NEWS: Updates for 2.3.1
5702
5703         * configure.in: Version 2.3.1, interface age 0, binary age 301.
5704
5705         * gtk/gtkmenuitem.c (gtk_menu_item_can_activate_accel):
5706         Rename from gtk_menu_item_real_can_activate_accel() to
5707         match GTK+ convention, improve comment.
5708
5709         * gtk/gtkwidget.c: Document gtk_widget_can_activate_accel(),
5710         can ::can-activate-accel signal.
5711
5712         * gtk/gtkwidget.c (closure_accel_activate): Fix spelling
5713         in comment.
5714
5715         * gtk/gtkmenu.c (gtk_menu_real_can_activate_accel): Clean 
5716         up comment.
5717         
5718         * gtk/gtkcellview{,menuitem}.[ch]: Move GET_PRIVATE() macros
5719         into the .c file.
5720
5721 Mon Dec  8 12:09:21 2003  Owen Taylor  <otaylor@redhat.com>
5722
5723         * gtk/gtkicontheme.c (find_builtin_icon): Fix a
5724         missing 'else'. (#128816, Jorn Baayen)
5725
5726 2003-12-02  Michael Meeks  <michael@ximian.com>
5727
5728         Based on a patch by Martin Kretzschmar; #122448
5729         
5730         * gdk/gdk.h: new gdk_threads_lock, gdk_threads_unlock, point to
5731         implementation of GDK_THREADS_ENTER / GDK_THREADS_LEAVE.
5732         (GDK_THREADS_ENTER, GDK_THREADS_LEAVE): use gdk_threads_[un]lock
5733         function pointers. Deprecate the global gdk_threads_mutex variable.
5734         
5735         * gdk/gdk.c (gdk_threads_impl_lock, gdk_threads_impl_unlock): new,
5736         extracted from GTK_THREADS_ENTER/LEAVE macros.
5737         (gdk_threads_init): init gtk_threads_[un]lock if not set.
5738         (gdk_threads_set_lock_functions): impl.
5739
5740         * gdk/gdkglobals.c: add definitions of gdk_threads_[un]lock.
5741
5742 Sun Dec  7 23:45:40 2003  Matthias Clasen  <maclas@gmx.de>
5743
5744         * gtk/gtkicontheme.c (gtk_icon_theme_has_icon): Don't crash if
5745         icon_theme_builtin_icons hasn't been initialized.  (#128726, Diego
5746         Gonzalez)
5747
5748 2003-12-07  Tor Lillqvist  <tml@iki.fi>
5749
5750         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon): Don't use the
5751         return value from SendMessage(WM_SETICON). That is the old
5752         icon. Fixes GDI resource leak. (#128559, Tim Evans)
5753
5754         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): If we already
5755         have a pointer grab active with a grab cursor set, destroy that
5756         cursor to avoid a GDI resource leak. (#128410, Tim Evans)
5757
5758 2003-12-05  Paisa Seeluangsawat  <paisa@users.sf.net>
5759
5760         * configure.in: Added Thai (th) to ALL_LINGUAS.
5761
5762 Sat Dec  6 01:42:04 2003  Matthias Clasen  <maclas@gmx.de>
5763
5764         * gtk/gtkalignment.c (gtk_alignment_size_allocate): Implement
5765         RTL flipping for GtkAlignment.  (#127585)
5766
5767 Sat Dec  6 01:13:09 2003  Matthias Clasen  <maclas@gmx.de>
5768
5769         * gtk/gtkcombo.c (gtk_combo_get_pos): Fix the position of the 
5770         popup window when in RTL mode.  (#127578)
5771
5772 Fri Dec  5 15:30:16 2003  Manish Singh  <yosh@gimp.org>
5773
5774         * gtk/gtkaccelgroup.c (quick_accel_find): Applied patch from
5775         Ross McFarland <rwmcfa1@neces.com>, initialize *count_p to 0
5776         before doing anything to prevent garbage returns.
5777
5778 Sat Dec  6 00:23:46 2003  Matthias Clasen  <maclas@gmx.de>
5779
5780         * gtk/gtkviewport.c: Implement RTL flipping for 
5781         GtkViewport: Adjust the "gravity" when resizing
5782         This is a bit flickery in RTL mode.  (#107526)
5783
5784 Sat Dec  6 00:22:14 2003  Matthias Clasen  <maclas@gmx.de>
5785
5786         * gtk/gtkscrolledwindow.c: Implement RTL flipping for 
5787         GtkScrolledWindow: the vertical scrollbar shows up on the left
5788         side in RTL mode.  (#107526)
5789
5790 Fri Dec  5 01:58:33 2003  Matthias Clasen  <maclas@gmx.de>
5791
5792         * gtk/gtknotebook.c: Implement RTL flipping for GtkNotebook:
5793         tabs displayed at the top/bottom are rearranged, and tabs on
5794         the left/right are displayed at the opposite edge.  (#96630)
5795
5796 2003-12-04  Mark McLoughlin  <mark@skynet.ie>
5797
5798         * gtk/gtklabel.c: (gtk_label_set_attributes_internal): Allow
5799         gtk_label_set_attributes() take NULL. See bug #128517.
5800
5801 2003-12-03  Federico Mena Quintero  <federico@ximian.com>
5802
5803         * gtk/gtkfilechooserentry.c (struct _GtkFileChooserEntry): Removed
5804         the in_change flag.
5805         (completion_idle_callback): Use a temporary list store and re-set
5806         it on the completion rather than modifying the old one.  We are
5807         re-reading the folder anyway, and this gets rid of non-atomicity
5808         problems.
5809
5810 2003-12-01  Federico Mena Quintero  <federico@ximian.com>
5811
5812         Decouple impl->current_folder from the selection in the folder
5813         tree.  This is so that going to /home/federico/.foo (e.g. from a
5814         bookmark) will work even if show_hidden == FALSE.  The folder tree
5815         needs to be fixed in this case to show such folders explicitly.
5816
5817         * gtk/gtkfilechooserdefault.c
5818         (gtk_file_chooser_default_set_current_folder): When changing
5819         folders, do the entry and list model work here, instead of
5820         tree_selection_changed().
5821         (struct _GtkFileChooserDefault): Added a changing_folder flag
5822         again, dum de dum.
5823         (tree_selection_changed): Use _gtk_file_chooser_set_current_folder_path().
5824
5825 Tue Dec  2 01:01:54 2003  Matthias Clasen  <maclas@gmx.de>
5826
5827         * gtk/gtkiconfactory.h: Remove duplicate declaration of 
5828         gtk_icon_source_set_icon_name().  (#Jeff Franks, #128269)
5829
5830 2003-12-01  Federico Mena Quintero  <federico@ximian.com>
5831
5832         Patch from Hans-Petter Jansson <hpj@ximian.com> to align the
5833         bookmarks buttons with the location entry.
5834
5835         * gtk/gtkfilechooserdefault.c
5836         (gtk_file_chooser_default_constructor): Use a GtkSizeGroup for the
5837         bookmarks buttons and the location entry.
5838
5839 2003-12-01  Federico Mena Quintero  <federico@ximian.com>
5840
5841         * gtk/gtkfilechooserdefault.c (create_shortcuts_tree): Set the
5842         shortcuts tree as a drag destination.
5843         (shortcuts_drag_data_received_cb): New callback.
5844         (get_file_info): Also fetch information on whether the file is a folder.
5845         (add_bookmark_button_clicked_cb): Use error_could_not_add_bookmark_dialog().
5846         (error_could_not_add_bookmark_dialog): New function.
5847         (shortcuts_add_bookmark_from_path): New helper function.
5848         (add_bookmark_button_clicked_cb): Use shortcuts_add_bookmark_from_path().
5849         (shortcuts_row_activated): We no longer need the changing_folder flag.
5850         (struct _GtkFileChooserDefault): Likewise.
5851
5852 Sun Nov 30 17:31:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5853
5854         * gtk/gtktoolbar.c (slide_idle_handler): return TRUE if there are
5855         disappearing placeholders that are still visible.
5856
5857         * gtk/gtktoolbar.c: formatting fixes
5858
5859         * gtk/gtktoolbar.c (struct _ToolbarContent): new bit:
5860         disappearing, for placeholders that are going to disappear.
5861
5862         * gtk/gtktoolbar.c (get_item_size): return 0 for disappearing placeholders
5863
5864 Sat Nov 29 00:55:28 2003  Jonathan Blandford  <jrb@gnome.org>
5865
5866         * gtk/gtktreeview.c (gtk_tree_view_new_column_width): 
5867         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
5868         Patch from <chinen@jp.ibm.com> to handle RTL support for column
5869         resizers, #127874
5870
5871 Fri Nov 28 00:26:24 2003  Matthias Clasen  <maclas@gmx.de>
5872
5873         * gtk/gtkfilesystemmodel.c (gtk_file_system_model_finalize): 
5874         Don't use freed memory.  (#127698, Taavi Talvik) 
5875
5876 Fri Nov 28 00:09:10 2003  Matthias Clasen  <maclas@gmx.de>
5877
5878         * gtk/gtkfilechooserentry.c: Remove debug g_print()s. 
5879
5880 Thu Nov 27 22:17:50 2003  Matthias Clasen  <maclas@gmx.de>
5881
5882         * gtk/gtkuimanager.c: Remove debug define.
5883
5884 Thu Nov 27 16:19:03 2003  Tim Janik  <timj@gtk.org>
5885
5886         * gtk/gtkmenu.c: allow accel activation depending on sensitivity
5887         and the attach widget.
5888
5889         * gtk/gtkmenuitem.c: allow accel activation depending on visibility,
5890         sensitivity and the parent menu.
5891
5892         * gtk/gtkwidget.[hc]: introduced ::can-activate-accel signal which
5893         checks whether accelerators may activate a widget. the default handler
5894         demands the widget be sensitive and visible+viewable.
5895
5896         * gtk/gtkaccelgroup.[hc]: export gtk_accel_group_activate().
5897
5898 Tue Nov 25 00:10:05 2003  Matthias Clasen  <maclas@gmx.de>
5899
5900         * gtk/gtkuimanager.c (update_node): Don't show accelerators in
5901         popup menus.  (#127227)
5902
5903 Mon Nov 24 13:47:39 GMT 2003  Tony Gale <gale@gtk.org>
5904
5905         * docs/faq/gtk-faq.sgml: start 2.x Section 4 updates
5906
5907 Mon Nov 24 04:05:15 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5908
5909         * gtk/gtkradiotoolbutton.[ch]
5910         (gtk_radio_tool_button_new_from_widget): Make this function take a
5911         GtkRadioToolButton instead of a GtkWidget. (#127729, Murray
5912         Cumming)
5913
5914 Mon Nov 24 02:34:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5915
5916         * gtk/gtktoolbar.c: remove variables in_dnd and leaving_dnd
5917
5918 Mon Nov 24 02:19:33 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5919
5920         * gtk/gtktoolbar.c: remove variable
5921         n_overflowed_menu_items_when_dnd_started
5922
5923 Mon Nov 24 01:47:10 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5924
5925         Rework sliding algorithm.
5926         - No more weird jumping when items are dragged off and added to
5927         the toolbar,
5928         - More natural item movement
5929
5930         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Many changes. This
5931         function is now responsible for calculating intermediate positions
5932         during item sliding. It is also responsible for starting sliding
5933         if items disappear.  Also turn off expanding when there is an
5934         overflow menu.
5935         (gtk_toolbar_begin_sliding, stop_sliding): New functions.
5936         (slide_idle_handler): New function. All the sliding is now done by
5937         gtk_toolbar_size_allocate(), so the idle handler now just checks
5938         if there is more sliding to be done.
5939         (compute_intermediate_allocation, position): new functions
5940         calculating intermediate steps in the slide animations. The new
5941         animation algorithm uses a constant speed instead of a constant
5942         must-be-finished-within time.
5943         (struct _ToolbarContent): use 
5944         GtkAllocation goal_allocation; and 
5945         GtkAllocation start_allocation; instead of 
5946         gint start/goal_width;
5947
5948         * gtk/gtktoolitem.c (gtk_tool_item_set_tooltip): fix typo in
5949         documentation
5950
5951 Sun Nov 23 22:26:25 2003  Matthias Clasen  <maclas@gmx.de>
5952
5953         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): Make tooltip 
5954         positioning Xinerama-aware.  (#127332)
5955
5956 Fri Nov 21 01:57:21 2003  Matthias Clasen  <maclas@gmx.de>
5957
5958         * gdk/x11/gdkscreen-x11.c (init_xinerama_support): Make monitor
5959         boundaries visible in fake Xinerama mode.
5960
5961 Thu Nov 20 15:41:56 2003  Manish Singh  <yosh@gimp.org>
5962
5963         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): cast to GTK_WIDGET()
5964         for the gtk_widget_hide() call.
5965
5966 Thu Nov 20 14:51:41 2003  Jonathan Blandford  <jrb@redhat.com>
5967
5968         * gtk/gtktreedatalist.c (gtk_tree_data_list_compare_func): Patch
5969         from David Hampton to fix sorting on booleans.
5970
5971 Thu Nov 20 15:48:03 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5972
5973         * gtk/gtksocket.c (gtk_socket_focus): Use gtk_widget_is_focus()
5974         instead of GTK_WIDGET_HAS_FOCUS. (#122327, Owen Taylor. Reported
5975         by Frederic Crozat).
5976
5977 Thu Nov 20 13:10:29 GMT 2003  Tony Gale <gale@gtk.org>
5978
5979         * docs/faq/gtk-faq.sgml: Update Section 3 to 2.x
5980
5981 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
5982
5983         Fixes to problems reported by Iain Holmes:
5984
5985         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Do not
5986         throw up an error dialog if the desktop doesn't exist.
5987         (error_message): Handle the case where there is no real toplevel
5988
5989         yet.
5990         (list_model_filter_func): Always let folders pass through (patch
5991         by Dave Malcolm).
5992
5993 Wed Nov 19 23:19:23 2003  Kristian Rietveld  <kris@gtk.org>
5994
5995         * gtk/gtkcombobox.[ch] (gtk_combo_box_scroll_event): move function
5996         to a somewhat more logical place,
5997         (gtk_combo_box_remove_text): New function (#125262, Owen Taylor).
5998
5999 Wed Nov 19 22:15:01 2003  Kristian Rietveld  <kris@gtk.org>
6000
6001         * gtk/gtkentry.c (gtk_entry_completion_timeout): always resize
6002         the popup when it is visible, popdown when there are less chars
6003         than the minimum key length in the entry,
6004         (gtk_entry_completion_changed): popdown when the entry is empty.
6005
6006         * gtk/gtkentrycompletion.c (gtk_entry_completion_init): set the
6007         size request of the vscrollbar to (-1, 0), to get a nicely sized
6008         completion treeview (Fixes #126573, reported by Piers Cornwell),
6009         (_gtk_entry_completion_resize_popup): show/hide the action_view
6010         based on items.
6011
6012 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
6013
6014         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_init): Turn
6015         off the dialog's separator (thanks to Iain Holmes).
6016
6017 Wed Nov 19 18:15:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6018
6019         * gtk/gtkmenu.c (DEFAULT_POPUP_DELAY): set to 200 instead of 225
6020         * gtk/gtkmenuitem.c (get_minimum_width): Impose a minimum width
6021         on items that have a submenu. (#120104).
6022
6023 Wed Nov 19 18:11:08 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6024
6025         * gtk/gtktoolbar.c (struct _ToolbarContent): Add a new
6026         "ItemState" field indicating the overflowed-ness etc. of the item.
6027         (gtk_toolbar_size_allocate): update the field here.
6028
6029 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
6030
6031         * gtk/gtkfilechooserdefault.c (create_filter): Don't add padding
6032         to the alignment.  Use the HIG-specified spacing between the
6033         filter label and the combo.
6034         (create_filename_entry): Use HIG-specified spacing between the
6035         location label and the entry.
6036         (gtk_file_chooser_default_constructor): Don't use vertical padding
6037         around the filename entry.
6038
6039 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
6040
6041         * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Added a
6042         render_icon virtual method.
6043
6044         * gtk/gtkfilesystem.c (gtk_file_system_render_icon): New function.
6045
6046         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_render_icon):
6047         Implement as a stub for now.
6048
6049         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Use
6050         gtk_file_system_render_icon().
6051         (list_icon_data_func): Likewise.
6052         (toolbar_create): Set the toolbar style to icons only.
6053
6054         * gtk/gtkfilechooser.c (gtk_file_chooser_add_shortcut_folder_uri):
6055         Fix doc comments.
6056
6057 Wed Nov 19 02:18:37 2003  Matthias Clasen  <maclas@gmx.de>
6058
6059         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Call 
6060         gtk_widget_hide(menu) when reattaching the menu.  (#126057) 
6061
6062 Wed Nov 19 00:06:04 2003  Kristian Rietveld  <kris@gtk.org>
6063
6064         * gtk/gtkentrycompletion.c (gtk_entry_completion_selection_changed):
6065         only unselect all items if the treeview has focus. (Fixes bug
6066         reported by Marco Pesenti Gritti).
6067
6068 Tue Nov 18 22:26:30 2003  Kristian Rietveld  <kris@gtk.org>
6069
6070         * gtk/gtkentry.c (gtk_entry_completion_key_press): the total
6071         number of actions is "matches + actions - 1". (Fixes #126572).
6072
6073 Tue Nov 18 21:05:05 2003  Christian Persch  <chp@cvs.gnome.org>
6074
6075         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_inserted): fix
6076         mem leaks (#119435).
6077
6078 Tue Nov 18 20:51:38 2003  Kristian Rietveld  <kris@gtk.org>
6079
6080         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): don't
6081         try to fetch the child back, since we do know that it is already
6082         gone by now (#126493, Marco Pesenti Gritti).
6083
6084 Tue Nov 18 19:47:59 2003  Kristian Rietveld  <kris@gtk.org>
6085
6086         Fixes based on comments from Owen Taylor, #125264.
6087
6088         * gtk/gtkcellview.[ch] (gtk_cell_view_finalize): remove unused
6089         variable,
6090         (gtk_cell_view_set_value), (gtk_cell_view_set_displayed_model): queue
6091         a resize,
6092         (gtk_cell_view_get_size_of_row): new function,
6093         (gtk_cell_view_set_value), (gtk_cell_view_set_valuesv),
6094         (gtk_cell_view_set_values), (gtk_cell_view_set_model),
6095         (gtk_cell_view_set_displayed_row), (gtk_cell_view_get_displayed_row):
6096         s/cellview/cell_view/ in the function definitions, so they match
6097         with the header file.
6098
6099         * gtk/gtkcombobox.c (gtk_combo_box_remeasure): remove the resize
6100         flag again (:, and use gtk_cell_view_get_size_of_row instead of
6101         the measurer, remove _set_size_request call,
6102         (gtk_combo_box_calc_requested_width): use gtk_cell_view_get_size_of_row
6103         instead of the measurer,
6104         (gtk_combo_box_style_set): queue a resize,
6105         (gtk_combo_box_size_request): update of _remeasure call,
6106         (gtk_combo_box_init), (gtk_combo_box_cell_layout_pack_start),
6107         (gtk_combo_box_cell_layout_pack_end),
6108         (gtk_combo_box_cell_layout_clear),
6109         (gtk_combo_box_set_model): get rid of the measurer,
6110         (gtk_combo_box_cell_layout_add_attribute),
6111         (gtk_combo_box_cell_layout_set_cell_data_func),
6112         (gtk_combo_box_cell_layout_clear_attributes): ditto and queue a
6113         resize instead of calling _remeasure.
6114
6115 Mon Nov 17 16:25:04 2003  Manish Singh <yosh@gimp.org>
6116
6117         * gdk-pixbuf/Makefile.am
6118         * modules/input/Makefile.am: Use install-data-hook for
6119         gdk-pixbuf.loaders and gtk.immodules install generation targets.
6120         Fixes #112806.
6121
6122         * gtk/gtkexpander.h: Apply missing declarations from #124449.
6123
6124 Tue Nov 18 00:12:55 2003  Matthias Clasen  <maclas@gmx.de>
6125
6126         Fix for #119555, Peter Zelezny:
6127         
6128         * gdk/gdkdrawable.h: Declare gdk_drawable_copy_to_image.
6129         * gdk/gdkdraw.c (gdk_drawable_copy_to_image): Make public
6130         by removing the _ prefix. 
6131         * gdk/gdkdraw.c, gdk/gdkpixbuf-drawable.c, gdk/gdkpixmap.c, 
6132         gdk/gdkwindow.c: Adjust all callers.
6133
6134 Mon Nov 17 23:36:02 2003  Matthias Clasen  <maclas@gmx.de>
6135
6136         * gtk/gtkaction.c (gtk_action_activate): Only activate if 
6137         the action is sensitive.  (#127187, Christian Persch)
6138
6139 Mon Nov 17 23:23:49 2003  Matthias Clasen  <maclas@gmx.de>
6140
6141         * gtk/gtkcombobox.c: Add mouse wheel support.  (#126517)
6142
6143 Mon Nov 17 22:56:09 2003  Kristian Rietveld  <kris@gtk.org>
6144
6145         * gtk/gtkentryprivate.h: add _gtk_entry_completion_resize_popup.
6146
6147         * gtk/gtkentry.c (gtk_entry_completion_timeout): popup when not
6148         mapped, else resize_popup.
6149
6150         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup),
6151         (_gtk_entry_completion_popup): moved all popup resizing code to
6152         _gtk_entry_completion_resize_popup, and show the window when there
6153         are more than zero items in the completion list again (sigh).
6154
6155 2003-11-17  Mark McLoughlin  <mark@skynet.ie>
6156
6157         Patch from Jaiserca <jaiserca@inf.upv.es> to add a
6158         "use_markup" property. See bug #124449.
6159
6160         * gtk/gtkexpander.c:
6161         (gtk_expander_class_init),
6162         (gtk_expander_init), (gtk_expander_set_property),
6163         (gtk_expander_get_property), (gtk_expander_set_label),
6164         (gtk_expander_set_use_markup),  (gtk_expander_get_use_markup):
6165         Add a "use_markup" property and use it when creating the
6166         child label.
6167
6168 Mon Nov 17 12:58:32 2003  Kristian Rietveld  <kris@gtk.org>
6169
6170         Temporary size requisition fix. Will fix it for real tonight.
6171
6172         * gtk/gtkcombobox.c (gtk_combo_box_remeasure): add a resize flag,
6173         (gtk_combo_box_size_request): use gtk_combo_box_remeasure to determine
6174         a good width for the child,
6175         (gtk_combo_box_cell_layout_add_attribute),
6176         (gtk_combo_box_set_cell_data_func),
6177         (gtk_combo_box_cell_layout_clear_attributes): update.
6178
6179 Mon Nov 17 00:11:21 2003  Kristian Rietveld  <kris@gtk.org>
6180
6181         Fixes #124373, Murray Cumming.
6182
6183         * gtk/gtkcombobox.[ch] (gtk_combo_box_class_init): the model property
6184         is no longer construct only,
6185         (gtk_combo_box_unset_model), (gtk_combo_box_set_model_internal),
6186         (gtk_combo_box_menu_fill): new functions,
6187         (gtk_combo_box_menu_setup), (gtk_combo_box_menu_destroy),
6188         (gtk_combo_box_menu_row_*), (gtk_combo_box_list_setup),
6189         (gtk_combo_box_list_destroy): updated,
6190         (gtk_combo_box_new), (gtk_combo_box_new_with_model): new/changed
6191         functions,
6192         (gtk_combo_box_set_model): is now public, updated,
6193         (gtk_combo_box_get_model): small update.
6194
6195         * gtk/gtkcomboboxentry.[ch] (gtk_combo_box_entry_class_init): the
6196         text_column property is no longer construct only,
6197         (gtk_combo_box_entry_set_text_column): now public,
6198         (gtk_combo_box_entry_new), (gtk_combo_box_entry_new_with_model):
6199         new/changed functions.
6200
6201         * tests/testcombo.c: updated.
6202
6203 Sun Nov 16 22:50:58 2003  Matthias Clasen  <maclas@gmx.de>
6204
6205         Reinstate fixes for (#124212, Marco Pesenti Gritti):
6206         
6207         * gtk/gtkuimanager.c (update_smart_separators): Don't spit 
6208         warnings for popups.
6209         (_gtk_menu_is_empty): Return FALSE for non-menus.
6210
6211 Sun Nov 16 21:48:40 2003  Kristian Rietveld  <kris@gtk.org>
6212
6213         * gtk/gtkcellview.c (gtk_cell_view_finalize): just call
6214         gtk_cell_view_cell_layout_clear instead of trying to free the
6215         structure ourselves here. (#125726, Morten Welinder).
6216
6217 Sun Nov 16 00:35:29 2003  Matthias Clasen  <maclas@gmx.de>
6218
6219         * gtk/gtkfilechooser.[hc]: 
6220         * gtk/gtkentrycompletion.h: Fix parameter name mismatches which
6221         confuse gtk-doc.
6222
6223 2003-11-15  Hans Breuer  <hans@breuer.org>
6224
6225         * gdk/makefile.msc gdk/gdk.def 
6226             gtk/gtk.def gtk/makefile.msc.in : updated
6227         * tests/makefile.msc : added all the new tests
6228
6229         * gtk/gtkfilefilter.c(finalize) : initialize filter
6230         from object not from itself
6231
6232         * gtk/gtkfilesystemwin32.[hc] : copied from gtkfilesystemunix.[hc]
6233         modified as less as posible to have aworking implementation
6234         on win32. There maybe the desire to merge the unchanged pats into
6235         a common base class.
6236         Also implemented a simple glib based bookmark handling, which
6237         is currently missing in gtkfilesystemunix.[hc] but can be copied
6238         over there.
6239         * gtk/gtkfilechooserwidget.c : conditional include gtkfilesystemwin32.h
6240
6241         * gdk/win32/gdkwindow-win32.c : implement 
6242         gdk_window_set_keep_above() and gdk_window_set_keep_below()
6243
6244         * tests/testmerge.c : don't include unistd.h unconditionally,
6245         #define STDOUT_FILENO if it isn't defined
6246
6247         * tests/testfilechooser.c : make it compile on win32
6248
6249 2003-11-15  Tor Lillqvist  <tml@iki.fi>
6250
6251         * gdk/win32/gdkwindow-win32.c (gdk_window_focus): If the window is
6252         maximized, use SW_SHOWMAXIMIZED. (#126986, John Ehresman)
6253
6254 Thu Nov 13 12:55:29 GMT 2003  Tony Gale <gale@gtk.org>
6255
6256         * docs/faq/gtk-faq.sgml: Update the rest of Section 2
6257
6258 Thu Nov 13 01:46:32 2003  Matthias Clasen  <maclas@gmx.de>
6259
6260         * gtk/gtkicontheme.c (gtk_icon_theme_init): Use 
6261         GTK_DATADIR/{icons,pixmaps} instead of 
6262         GTK_DATA_PREFIX/{icons,pixmaps}.  (#123365, Marco Pesenti Gritti)
6263
6264 Wed Nov 12 21:40:10 2003  Matthias Clasen  <maclas@gmx.de>
6265
6266         Changes to improve menu positioning on Xinerama (#108328, #126150):
6267         
6268         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Use the event 
6269         window of the menuitem to determine the monitor. This fixes some
6270
6271         * gtk/gtkmenu.c (struct _GtkMenuPrivate): Add a menu_num field
6272         to store the monitor on which the menu is to be positioned.
6273
6274         * gtk/gtkmenu.[hc] (gtk_menu_position): Store the monitor number
6275         in the GtkMenuPrivate struct and fetch the monitor geometry after
6276         calling the position_func, in case it has been changed.
6277
6278         * gtk/gtkmenu.c (gtk_menu_set_monitor): New function 
6279         to be used in GtkMenuPositionFunc implementations for setting
6280         the monitor_num field in GtkMenuPrivate.
6281
6282         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Call 
6283         gtk_menu_set_monitor.
6284
6285 Wed Nov 12 21:00:10 2003  Matthias Clasen  <maclas@gmx.de>
6286
6287         * gtk/gtkinputdialog.c (gtk_input_dialog_init): Clarify the
6288         label for the empty list. String change.  (#95446, Tomas Ã–gren)
6289
6290 Wed Nov 12 20:57:50 2003  Matthias Clasen  <maclas@gmx.de>
6291
6292         * gtk/gtkicontheme.h (enum GtkIconLookupFlags): Correct
6293         the definition of the values.  (#123361, Marco Pesenti Gritti)
6294
6295 Wed Nov 12 20:54:02 2003  Matthias Clasen  <maclas@gmx.de>
6296
6297         * gdk/gdkkeyuni.c: Map KP_Separator to ','.
6298         (#122941, Egmont Koblinger)
6299
6300 2003-11-12  Padraig O'Briain  <padraig.obriain@sun.com>
6301
6302         *gtk/gtkcolorsel.c (gtk_color_selection_init): Add tooltip for
6303         opacity entry widget. Change tooltip for opacity widgets. (#126426)
6304
6305 2003-11-12  Padraig O'Briain  <padraig.obriain@sun.com>
6306
6307         * gtk/gtkmenu.c (gtk_menu_popup): Do not let pointer position
6308         affect window menu position when popped from keyboard. (#102660)
6309
6310 Wed Nov 12 01:29:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6311
6312         * gtk/gtktoolbar.c (gtk_toolbar_internal_insert_element): When we
6313         are using the old API, make all items "is_important". That way
6314         BOTH_HORIZ will continue to show both icon and label in old API
6315         mode.
6316
6317 Mon Nov 10 00:40:41 2003  Matthias Clasen  <maclas@gmx.de>
6318
6319         * gtk/gtkeventbox.c (gtk_event_box_set_above_child): 
6320         Remember the new value in all cases.  (#126276, Damon Chaplin)
6321
6322 Sat Nov  8 23:06:02 2003  Matthias Clasen  <maclas@gmx.de>
6323
6324         * demos/gtk-demo/main.c (row_activated_cb): Call the do_
6325         functions with the toplevel as argument.
6326
6327         * demos/gtk-demo/geninclude.pl.in: Change the signature
6328         of GDoDemoFunc to take a widget argument
6329
6330         * demos/gtk-demo/ui_manager.c (do_ui_manager): 
6331         * demos/gtk-demo/tree_store.c (do_tree_store): 
6332         * demos/gtk-demo/textview.c (do_textview): 
6333         * demos/gtk-demo/stock_browser.c (do_stock_browser): 
6334         * demos/gtk-demo/sizegroup.c (do_sizegroup): 
6335         * demos/gtk-demo/pixbufs.c (do_pixbufs): 
6336         * demos/gtk-demo/panes.c (do_panes): 
6337         * demos/gtk-demo/menus.c (do_menus): 
6338         * demos/gtk-demo/list_store.c (do_list_store): 
6339         * demos/gtk-demo/images.c (do_images): 
6340         * demos/gtk-demo/hypertext.c (do_hypertext): 
6341         * demos/gtk-demo/editable_cells.c (do_editable_cells): 
6342         * demos/gtk-demo/drawingarea.c (do_drawingarea): 
6343         * demos/gtk-demo/dialog.c (do_dialog): 
6344         * demos/gtk-demo/colorsel.c (do_colorsel): 
6345         * demos/gtk-demo/changedisplay.c (do_changedisplay): 
6346         * demos/gtk-demo/button_box.c (do_button_box): 
6347         * demos/gtk-demo/appwindow.c (do_appwindow): Take a widget
6348         as argument, and make new windows or dialogs appear on the
6349         same screen.  (#80388)
6350
6351 Sat Nov  8 21:59:30 2003  Matthias Clasen  <maclas@gmx.de>
6352
6353         * gtk/gtkeventbox.c (gtk_event_box_class_init): Let 
6354         visible-window default to TRUE, as documented and 
6355         implemented. (#126270 Damon Chaplin)
6356
6357 Sat Nov  8 01:50:17 2003  Matthias Clasen  <maclas@gmx.de>
6358
6359         * gtk/gtkicontheme.c: 
6360         * gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new): 
6361         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new): 
6362         * gtk/gtkfilechooser.c (gtk_file_chooser_[un]select_all): Mark as
6363         2.4 additions.
6364
6365 2003-11-07  Federico Mena Quintero  <federico@ximian.com>
6366
6367         Changing GtkFileChooserEntry to use GtkEntryCompletion.
6368
6369         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): Create
6370         a GtkListStore for the completion list.  Create a
6371         GtkEntryCompletion and attach it to the chooser entry.
6372         (gtk_file_chooser_entry_finalize): Unref the completion store.
6373         (completion_match_func): New callback for the GtkEntryCompletion.
6374         (completion_idle_callback): Fill the completion store with filenames.
6375
6376 Fri Nov  7 22:55:49 2003  Matthias Clasen  <maclas@gmx.de>
6377
6378         * gtk/gtkwindow.c (gtk_window_set_role): 
6379         * gtk/gtkwindow.c (gtk_window_set_title): 
6380         * gtk/gtkwidget.c (gtk_widget_set_name): 
6381         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_title): 
6382         * gtk/gtkbutton.c (gtk_button_set_label): Make string setters
6383         safe for self-assignment.  (#122745, Soeren Sandmann)
6384
6385 Thu Nov  6 20:41:40 2003  Matthias Clasen  <maclas@gmx.de>
6386
6387         * gtk/gtkstyle.c (gtk_style_attach): Fix doc comment.
6388         (#126369, Olexiy Avramchenko)
6389
6390 Thu Nov  6 00:21:41 2003  Matthias Clasen  <maclas@gmx.de>
6391
6392         * gtk/gtkcolorbutton.c (gtk_color_button_init): 
6393         * gtk/gtkfontbutton.c (gtk_font_button_init): Improve the 
6394         consistency of titles.  (#126193, Damon Chaplin)
6395
6396 Wed Nov  5 22:49:36 2003  Matthias Clasen  <maclas@gmx.de>
6397
6398         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Set torn off 
6399         menus to be transient for the toplevel they were torn off from.
6400         (gtk_menu_get_toplevel): Auxiliary function to find the
6401         toplevel of a menu.  (#54775, Jon-Kare Hellan)
6402
6403 Wed Nov  5 21:07:58 2003  Matthias Clasen  <maclas@gmx.de>
6404
6405         * gtk/gtkpaned.c (gtk_paned_class_init): Add readonly properties
6406         min-position and max-position.  (#58431, Padraig O'Briain)
6407
6408 Wed Nov  5 21:02:26 2003  Matthias Clasen  <maclas@gmx.de>
6409
6410         * gtk/gtkcolorsel.c (update_color): 
6411         (make_label_spinbutton): 
6412         (adjustment_changed): Change the ranges for Saturation and
6413         Value to be 0-100 instead of 0-255, since these axes of HSV
6414         are usually expressed in percent.  (#121519, Gregory Merchan)
6415
6416 Wed Nov  5 08:51:48 GMT 2003  Tony Gale <gale@gtk.org>
6417
6418         * docs/faq/gtk-faq.sgml: More 2.x updates
6419
6420 Tue Nov  4 15:00:33 GMT 2003  Tony Gale <gale@gtk.org>
6421
6422         * docs/faq/gtk-faq.sgml: More 2.x updates, fix
6423         pkg-config command error, update copyright.
6424
6425 2003-11-03  Federico Mena Quintero  <federico@ximian.com>
6426
6427         * gtk/gtkfilechooserdefault.c (error_dialog): Take in a path as
6428         well.  Use a helper function.
6429         (shortcuts_append_home): Display an error box if necessary.
6430         (shortcuts_append_desktop): Likewise.
6431         (add_bookmark_button_clicked_cb): Likewise.
6432         (gtk_file_chooser_default_select_path): Likewise.
6433         (entry_activate): Likewise.
6434         (shortcuts_append_paths): New helper function.
6435         (shortcuts_append_file_system_roots): Use
6436         shortcuts_append_paths().
6437         (shortcuts_append_bookmarks): Likewise.
6438
6439 Mon Nov  3 23:12:41 2003  Matthias Clasen  <maclas@gmx.de>
6440
6441         * gtk/gtkuimanager.c (_gtk_menu_is_empty): Return TRUE if 
6442         menu is NULL.
6443         (update_smart_separators): Remove some unneeded ifs.
6444
6445 Mon Nov  3 22:45:58 2003  Matthias Clasen  <maclas@gmx.de>
6446
6447         * gtk/gtkwindow-decorate.h: Add G_BEGIN_DECLS/G_END_DECLS to make 
6448         these usable in C++. Forgot this file in my Oct 11 commit.
6449
6450 2003-11-03  Federico Mena Quintero  <federico@ximian.com>
6451
6452         * gtk/gtkfilechooserdefault.c (create_shortcuts_tree): Add a stock
6453         icon to the "Add bookmark" button.
6454
6455         * gtk/gtkfilesystemunix.c: Mark missing strings for translation.
6456         * gtk/gtkfilesystemmodel.c: Likewise.
6457         * gtk/gtkfilechooser.c: Likewise.
6458         * gtk/gtkfilechooserdefault.c: Likewise.
6459
6460 Mon Nov  3 20:56:28 2003  Matthias Clasen  <maclas@gmx.de>
6461
6462         * gdk/gdk.c: 
6463         * gdk/gdkinternals.h: 
6464         * gdk/x11/gdkscreen-x11.c (init_xinerama_support): Introduce a
6465         GDK_DEBUG_XINERAMA debug flag, and make it trigger a fake 2x2
6466         Xinerama mode when no actual Xinerama setup is found. 
6467
6468 2003-11-03  Federico Mena Quintero  <federico@ximian.com>
6469
6470         * gtk/gtkfilechooserdefault.c (shortcuts_select_folder): Removed.
6471         (create_shortcuts_tree): Don't call the above.
6472         (bookmarks_changed_cb): Likewise.
6473         (tree_selection_changed): Unselect everything from the shortcuts
6474         list.  This is the behavior that Mac OS has.
6475         (toolbar_add_item): Return the item.
6476         (toolbar_create): Store the up_button in the impl structure.
6477         (toolbar_check_sensitivity): New function to set the sensitivity
6478         of the "Up" button in the toolbar.
6479         (tree_selection_changed): Call toolbar_check_sensitivity().
6480
6481 2003-11-02  Federico Mena Quintero  <federico@ximian.com>
6482
6483         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Do
6484         not set a border width for the toplevel container.
6485         (toolbar_create): New function; create a simple toolbar for the
6486         file chooser.
6487         (gtk_file_chooser_default_constructor): Use a spacing of 12 for
6488         the table, as per the HIG.
6489         (gtk_file_chooser_default_init): Likewise, for the default
6490         implementation's vbox.
6491
6492         * gtk/gtkfilesystem.c (gtk_file_system_get_parent): Added docs to
6493         note that NULL is a valid return value for the parent path.
6494
6495 Sat Nov  1 14:59:27 2003  Owen Taylor  <otaylor@redhat.com>
6496
6497         * gtk/gtkfilechooserdefault.c (shortcuts_row_activated): 
6498         Change on activation, not selection change (temporary
6499         workaround for #125955, needed for keynav, likely
6500         the right UI anyways.)
6501
6502         * gtk/gtkfilechooserdefault.c (shortcuts_select_func): 
6503         Don't allow the separator node to be selected.
6504
6505         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_constructor):
6506         Set the focus chain so that the entry gets focused first.
6507         (Not really right after initial focusing, maybe we
6508         should just have a gtk_file_chooser_focus_entry() that
6509         we call from gtk_file_chooser_dialog on creation.)
6510
6511 Sat Nov  1 12:41:04 2003  Owen Taylor  <otaylor@redhat.com>
6512
6513         * gtk/gtkwindow.c (gtk_window_unfullscreen): Fix a
6514         residual call to gtk_window_get_private().
6515
6516 Sat Nov  1 09:10:13 2003  Owen Taylor  <otaylor@redhat.com>
6517
6518         * gtk/gtkwindow.[ch]: Move above_initially, below_initially
6519         into GtkWindowPrivate structure, fixing ABI breakage
6520         on Win32. (Hans Breuer). Switch GtkWindowPrivate over
6521         to instance-private-data.
6522
6523 Fri Oct 31 02:43:34 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6524
6525         * gtk/gtktoolbar.c (get_item_requisition): delete this function
6526         (toolbar_item_is_homogeneous): cache max_homogeneous_pixels
6527         instead of re-calculating for each item.
6528         (gtk_toolbar_size_allocate): Update comments
6529
6530 Thu Oct 30 22:04:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6531
6532         * gtk/gtktoolbar.c (gtk_toolbar_forall): Only include
6533         placeholders when include_internals is TRUE.
6534
6535 Thu Oct 30 17:57:53 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6536
6537         * gtk/gtktoolbar.c (logical_to_physical): Make it work even when
6538         item 0 is a placeholder. (#125826)
6539         * tests/testtoolbar.c: add an assertion that 
6540         gtk_toolbar_get_nth_item (0) != NULL
6541
6542 Thu Oct 30 17:40:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6543
6544         * gtk/gtktoolbar.c (logical_to_physical): Make it work for
6545         logical == 0.(#125826)
6546
6547 Thu Oct 30 16:20:58 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6548
6549         * gtk/gtktoolbar.c (logical_to_physical): Make sure we actually
6550         return the index of a real item.
6551         (get_nth_item) assert that the returned items is not a
6552         placeholder.  (#125826, Marco Pesenti Gritti).
6553         
6554 2003-10-29  Federico Mena Quintero  <federico@ximian.com>
6555
6556         * gtk/gtkcellrendererseptext.c
6557         (gtk_cell_renderer_sep_text_render): Only paint a separator if the
6558         text is NULL, rather than also doing it if it is an empty string.
6559
6560 Wed Oct 29 15:40:26 2003  Owen Taylor  <otaylor@redhat.com>
6561
6562         * gtk/gtkmessagedialog.c (gtk_message_dialog_new/
6563         gtk_message_dialog_new_with_format): Allow NULL
6564         for message_format, as described in the docs and
6565         as worked previously. (#125759, Richard Hult)
6566
6567         * gtk/gtkmessagedialog.c (gtk_message_dialog_new_with_markup):
6568         Use g_markup_vprintf_escaped() to escape arguments.
6569
6570         * gtk/gtkmessagedialog.[ch]: Add gtk_message_dialog_set_markup()
6571         so there is some way to set literal markup.
6572
6573 Wed Oct 29 15:01:32 2003  Owen Taylor  <otaylor@redhat.com>
6574  
6575         * gdk/x11/gdkimage-x11.c (_gdk_x11_copy_to_image): Move
6576         the call to gdk_error_trap_pop() to the right place,
6577         fixing a problem where we'd pop() too many times 
6578         when bailing out. (#123302, Thomas Leonard)
6579         
6580 Wed Oct 29 12:50:02 2003  Owen Taylor  <otaylor@redhat.com>
6581
6582         * gtk/gtkfilechooserutils.c (delegate_set_current_folder): 
6583         Fix infinite recursion. (#125679, Christian Persch)
6584
6585 Wed Oct 29 13:29:15 GMT 2003  Tony Gale <gale@gtk.org>
6586
6587         * docs/faq/gtk-faq.sgml: further 2.x updates:
6588         mirrors,compiling,g_main_context_iteration
6589
6590 Wed Oct 29 02:54:35 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6591
6592         * gtk/gtktoolbar.[ch] (gtk_toolbar_set_drop_highlight_item): Add this
6593         function; remove gtk_toolbar_highlight_drop_location() and
6594         gtk_toolbar_unhighlight_drop_location().
6595
6596         Also fix bug where the number of overflowed items were miscounted.
6597
6598 Tue Oct 28 12:20:16 2003  Owen Taylor  <otaylor@redhat.com>
6599
6600         * gtk/gtkwindow.c (gtk_window_has_toplevel_focus): Remove
6601         some accidentally committed duplicate code.
6602
6603 Tue Oct 28 17:06:17 GMT 2003  Tony Gale <gale@gtk.org>
6604
6605         * docs/faq/gtk-faq.sgml: Update info on compiling GTK+
6606
6607 Tue Oct 28 10:34:24 2003  Owen Taylor  <otaylor@redhat.com>
6608
6609         * gtk/gtkwindow.[ch] (gtk_window_is_active, 
6610         gtk_has_toplevel_focus): Add getters corresponding to
6611         the is_active and has_toplevel_focus properties.
6612         (#122531)
6613
6614 2003-10-28  Mark McLoughlin  <mark@skynet.ie>
6615
6616         * gtk/gtkexpander.c:
6617         (gtk_expander_class_init): hook up the destroy handler.
6618         (gtk_expander_destroy), (gtk_expander_unrealize):
6619         remove the expand/collapse timeout on destroy instead
6620         of unrealize to avoid leaving the expander in a inconsistent
6621         state when unrealizing during animation.
6622         (gtk_expander_start_animation): remove realized check.
6623         (gtk_expander_set_expanded): if the widget isn't realized,
6624         expand immediately.
6625
6626 Tue Oct 28 09:44:16 2003  Owen Taylor  <otaylor@redhat.com>
6627
6628         * gtk/gtkxembed.c (_gtk_xembed_send_focus_message): Silently
6629         do nothing when recipient is NULL, as described in the
6630         doc comment. (#123107, Thomas Leonard)
6631
6632 Tue Oct 28 09:21:29 2003  Owen Taylor  <otaylor@redhat.com>
6633
6634         * gtk/gtkmain.c (gtk_check_version): Move docs inline,
6635         rewrite docs, mention memory management for the return
6636         value. (Partly addresses #125549, Michael Natterer)
6637
6638 2003-10-28  Padraig O'Briain  <padraig.obriain@sun.com>
6639
6640         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_remove_filter):
6641         Change index to filter_index to fix compilation error.
6642
6643         * gtk/gtkfilesystem.h: Correct definition of gtk_file_path_get_string.
6644
6645 Mon Oct 27 15:47:58 2003  Manish Singh  <yosh@gimp.org>
6646
6647         * gdk/x11/gdkscreen-x11.c: #include <X11/extensions/Xrandr.h> if
6648         we have RandR support, for XRRUpdateConfiguration declaration.
6649
6650         * gtk/gtkfilefilter.c: #include "gtkprivate.h" for _gtk_fnmatch
6651         declaration.
6652
6653         * gtk/gtkuimanager.c (gtk_ui_manager_add_ui_from_file): Make
6654         length a gsize variable, since that's what g_file_get_contents()
6655         expects.
6656
6657 Mon Oct 27 12:18:49 2003  Owen Taylor  <otaylor@redhat.com>
6658
6659         * NEWS: Fix attribution for above/below EWMH work.
6660
6661 Sat Oct 25 23:30:13 2003  Matthias Clasen  <maclas@gmx.de>
6662
6663         * gtk/gtkactiongroup.c (gtk_action_group_class_init): Add "name" 
6664         as a construct-only property.  (#125475, Murray Cumming)
6665
6666 Thu Oct 23 21:55:10 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6667
6668         Fix bug 116297 and 125472
6669         
6670         * gtk/gtktoolbar.c (gtk_toolbar_highlight_drop_location): Make
6671         this function take an index and a GtkToolItem.
6672
6673         * tests/testtoolbar.c (main): Make "Show Arrow" default to
6674         true. Make one of the separators !draw and expand.
6675         Update for new highlight_drop_location() API.
6676
6677         * gtk/gtktoolitem.[ch]: Remove "pack_end" property
6678
6679         * gtk/gtktoolbar.h: Formatting fixes.
6680
6681         * gtk/gtktoolbar.c: Remove "pack_end" child property. Allow
6682         separator tool items to expand.
6683         (logical_to_physical, physical_to_logical): Fix off-by-one errors
6684         (Fix #125472, Marco Pesenti Gritti)
6685
6686         * gtk/gtkseparatortoolitem.[ch]: Add new "draw" property.
6687         (gtk_separator_tool_item_expose) only draw if "draw" is TRUE. Also
6688         return FALSE, not TRUE.
6689         (gtk_separator_too_item_{set|get}_property,
6690         (gtk_separator_tool_item_{set|get}_draw): new functions
6691
6692 Fri Oct 24 16:54:04 2003  Owen Taylor  <otaylor@redhat.com>
6693
6694         * === Released 2.3.0 ===
6695
6696         * configure.in: Remove a stray comma.
6697
6698         * README.in: Fix a few notes about Xft 1 and pango-1.0.
6699
6700         * NEWS: Finish updates for 2.3.0.
6701
6702         * po/Makefile.in.in: Update to latest GLib version.
6703
6704 Fri Oct 24 20:31:35 2003  Kristian Rietveld  <kris@gtk.org>
6705
6706         * gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
6707         gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch],
6708         gtk/gtktreemodelfilter.[ch]: Fix licensing (I managed to put it
6709         under GPL licensing instead of LGPL...). (Fixes #125381, Soeren
6710         Sandmann).
6711
6712 Fri Oct 24 20:22:40 2003  Kristian Rietveld  <kris@gtk.org>
6713
6714         * gtk/gtktreemodelfilter.h: add padding to the class structure.
6715
6716 2003-10-23  Federico Mena Quintero  <federico@ximian.com>
6717
6718         * gtk/gtkfilechooser.c (gtk_file_chooser_get_preview_uri): Fixed docs.
6719         (gtk_file_chooser_remove_filter): Likewise.
6720         (gtk_file_chooser_select_all): Added docs.
6721         (gtk_file_chooser_unselect_all): Likewise.
6722
6723         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new): Added docs.
6724
6725         * gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new): Added docs.
6726
6727 Thu Oct 23 23:22:15 2003  Matthias Clasen  <maclas@gmx.de>
6728
6729         * gtk/gtkfilefilter.c: 
6730         * gtk/gtkfilechooser.c: Add "Since: 2.4" to all API doc comments.
6731
6732 Thu Oct 23 22:33:47 2003  Matthias Clasen  <maclas@gmx.de>
6733
6734         * gtk/gtkfilefilter.c (gtk_file_filter_new): Fix doc markup.
6735
6736 Thu Oct 23 21:49:05 2003  Matthias Clasen  <maclas@gmx.de>
6737
6738         * NEWS: Remove a few duplicates, group the menu changes.
6739
6740 Thu Oct 23 21:12:50 2003  Kristian Rietveld  <kris@gtk.org>
6741
6742         * NEWS: Updates for 2.3.0; changed header to match the style we used
6743         for 2.1.0.
6744
6745 Thu Oct 23 20:47:44 2003  Matthias Clasen  <maclas@gmx.de>
6746
6747         * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Actually
6748         assign the new leader.  (#125168, Mariano Suarez-Alvarez)
6749
6750 Thu Oct 23 20:21:16 2003  Kristian Rietveld  <kris@gtk.org>
6751
6752         * gtk/gtkcelllayout.c, gtk/gtkcellview.c gtk/gtkcellviewmenuitem.c,
6753         gtk/gtkcombobox.c, gtk/gtkcomboboxentry.c, gtk/gtkentrycompletion.c,
6754         gtk/gtktreemodelfilter.c, gtk/gtkcellrenderertoggle.c: Fix includes.
6755
6756 Thu Oct 23 15:13:56 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6757
6758         * NEWS: Partial update for 2.3.0.
6759
6760 Thu Oct 23 01:09:04 2003  Owen Taylor  <otaylor@redhat.com>
6761
6762         * gtk/gtkfilechooserdefault.c: Convert GtkOptionMenu to
6763         GtkComboBox.
6764
6765 Wed Oct 22 23:20:04 2003  Owen Taylor  <otaylor@redhat.com>
6766
6767         * gtk/gtkfilechooser.[ch] gtk/gtkfilefilter.[ch] 
6768         gtk/gtkfilechooserwidget.[ch] gtk/gtkfilechooserdialog.[ch]:
6769         gtk/gtkfilechooserutils.c gtk/gtkfilechooserprivate.[ch]:
6770         Basic framework for the new file selector widget.
6771
6772         * gtk/gtkfilechooserdefault.[ch] gtk/gtkcellrenderersep.[ch] 
6773         gtk/gtkfilechooserentry.[ch] gtk/gtkfilesystemmodel.[ch]:
6774         Initial implementation of the GtkFileChooser user interface.
6775
6776         * gtk/gtkfilesystemunix.[ch]: GtkFileSystem implementation
6777         for Unix files.
6778
6779         * configure.in gtk/Makefile.am gtk/xdgmime: Build code
6780         for freedesktop.org MIME system on Unix.
6781
6782         * tests/testfilechooser.c: Test program for GtkFileChooser
6783
6784         * tests/prop-editor.c: Add support for properties on interfaces.
6785
6786 Tue Oct 21 16:12:51 2003  Owen Taylor  <otaylor@redhat.com>
6787
6788         * demos/gtk-demo/menus.c (do_menus): Fix some unused
6789         variables.
6790
6791         * gtk/gtkmain.c (_gtk_get_lc_ctype): Fix an unused
6792         variable warning.
6793
6794 Thu Oct 23 00:04:50 2003  Matthias Clasen  <maclas@gmx.de>
6795
6796         * NEWS: Partial update for 2.3.0.
6797
6798 Tue Oct 21 22:07:12 2003  Kristian Rietveld  <kris@gtk.org>
6799
6800         * gtk/gtktreeview.c (gtk_tree_view_real_move_cursor): set
6801         ctrl_pressed and shift_pressed according to the current event
6802         state (if there is one). (Fixes #125063, reported by Sebastien Bacher).
6803
6804 Mon Oct 20 23:24:27 2003  Kristian Rietveld  <kris@gtk.org>
6805
6806         * gtk/gtkentry.c (gtk_entry_key_press): remove the completion
6807         timeout when the user pressed on Enter/ESC. Fixes the bug where the
6808         completion popup popped up after the user pressed on Enter (which is
6809         just weird). Reported by the Epiphany people (all of them).
6810
6811 Mon Oct 20 20:27:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6812
6813         Add support for OS X like sliding of toolbar items during drag and
6814         drop, (#110919, Dave Bordoley)
6815
6816         Make dnd highlighting the responsibility of the
6817         application. (Fixes #116298, Owen Taylor)
6818
6819         * gtk/gtktoolbar.h: Add prototypes for new API.
6820         
6821         * gtk/gtktoolbar.c
6822         (physical_to_logical, logical_to_physical): new functions
6823         converting between "position including placeholders" and "position
6824         excluding placeholders".
6825         (gtk_toolbar_class_init): remove drag_leave and drag_motion
6826         handlers
6827         (struct _ToolbarContent): new struct containing information
6828         related to toolbar items.
6829         (gtk_toolbar_highlight_drop_location): new public function
6830         (gtk_toolbar_unhighlight_drop_location): new public function
6831         
6832         * tests/testtoolbar.c
6833         (toolbar_drag_motion, toolbar_drag_leave): new functions
6834         (main): connect to dnd signals.  Make the "New" item expand to
6835         make drag and drop more exciting.
6836
6837 Wed Oct 15 22:39:23 2003  Kristian Rietveld  <kris@gtk.org>
6838
6839         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): it's
6840         _set_active, not _set_active_item.
6841
6842 Wed Oct 15 22:31:09 2003  Kristian Rietveld  <kris@gtk.org>
6843
6844         * gtk/gtkcombobox.h: add padding to the class structure.
6845         * gtk/gtkcomboboxentry.h: ditto.
6846         * gtk/gtkentrycompletion.h: ditto.
6847
6848 Wed Oct 15 22:04:59 2003  Kristian Rietveld  <kris@gtk.org>
6849
6850         * gtk/gtkcombobox.c (gtk_combo_box_get_active),
6851         (gtk_combo_box_set_active): mention in the docs that -1 is a valid
6852         value and what it means.
6853
6854         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): set the active
6855         item to -1 (default),
6856         (gtk_combo_box_entry_active_changed): do nothing when the index is
6857         < 0.
6858
6859 Tue Oct 14 16:10:21 2003  Jonathan Blandford  <jrb@redhat.com>
6860
6861         * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function
6862         to set the active row by iter.
6863
6864         * gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function
6865         to get the active row by iter.
6866
6867 2003-10-13  Federico Mena Quintero  <federico@ximian.com>
6868
6869         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Don't do
6870         operations on windows if the tree view is not mapped.
6871         (gtk_tree_view_button_press): Compare equal types of pointers, not
6872         GtkWidget* vs. GtkTreeView*.
6873
6874 Mon Oct 13 21:01:43 2003  Kristian Rietveld  <kris@gtk.org>
6875
6876         * gtk/gtkentrycompletion.c (gtk_entry_completion_popup): remove
6877         the reset of first_sel_changed, as after the first popup the treeview
6878         will always have a row selected and will thus not focus_to_cursor.
6879
6880         * gtk/gtkentry.c (keyval_is_cursor_move): new function to determine
6881         whether the keyval should move the completion selection cursor (used
6882         to avoid ending up with extreme cluttered code), also added
6883         all KP_ equivalents of the keys here,
6884         (gtk_entry_completion_key_press): Keynav tweaks based on comments
6885         from Dave Bordoley and Marco Pesenti Gritti; add the -1 state
6886         as possible current selection, implement Home/End keys, modified
6887         the down key to stop cycling. Maybe page up/down should be implemented
6888         at some later time.
6889
6890 Mon Oct 13 20:58:07 2003  Matthias Clasen  <maclas@gmx.de>
6891
6892         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon): Make it work 
6893         as documented when pixmap or mask is NULL.  (#124081) 
6894
6895 Mon Oct 13 20:21:38 2003  Kristian Rietveld  <kris@gtk.org>
6896
6897         * gtk/gtkentry.c (gtk_entry_set_text): I overlooked a return when
6898         I was adding the signal block/unblock code. Oops. (Noticed by
6899         Marco Pesenti Gritti).
6900
6901 Mon Oct 13 20:21:55 2003  Kristian Rietveld  <kris@gtk.org>
6902
6903         * demos/testpixbuf-scale.c: enable GTK_DISABLE_DEPRECATED again,
6904         (set_interp_type), (main): port over from option menu to GtkComboBox.
6905
6906 Mon Oct 13 19:41:55 2003  Kristian Rietveld  <kris@gtk.org>
6907
6908         * tests/testmenus.c: Still uses option menus, so turn off
6909         GTK_DISABLE_DEPRECATED.
6910
6911 Sun Oct 12 01:10:29 2003  Matthias Clasen  <maclas@gmx.de>
6912
6913         * gtk/gtkalignment.[hc]: 
6914         * gtk/gtkcombobox.[hc]: 
6915         * gtk/gtkcomboboxentry.[hc]: 
6916         * gtk/gtktreemodelfilter.[hc]: Move GET_PRIVATE macros
6917         from header to implementation.
6918
6919 Sun Oct 12 00:18:02 2003  Matthias Clasen  <maclas@gmx.de>
6920
6921         * tests/testtreeview.c: 
6922         * demos/testpixbuf-scale.c: 
6923         * tests/prop-editor.c: These files still use option menus,
6924         so turn off GTK_DISABLE_DEPRECATED to fix the build. 
6925
6926 Sat Oct 11 23:14:36 2003  Matthias Clasen  <maclas@gmx.de>
6927
6928         * gtk/gtkactiongroup.h: 
6929         * gtk/gtkaction.h: 
6930         * gtk/gtkradioaction.h: 
6931         * gtk/gtkradiotoolbutton.h: 
6932         * gtk/gtkseparatortoolitem.h: 
6933         * gtk/gtktoggleaction.h: 
6934         * gtk/gtktoolitem.h: 
6935         * gtk/gtkuimanager.h: Add G_BEGIN_DECLS/G_END_DECLS to make 
6936         these usable in C++.  (#124351, Murray Cumming)
6937
6938 Sat Oct 11 19:09:05 2003  Kristian Rietveld  <kris@gtk.org>
6939
6940         * gtk/gtkentry.c (gtk_entry_set_text): Check if completion is
6941         non-NULL before accessing it. Oops.
6942
6943 Sat Oct 11 15:47:03 2003  Kristian Rietveld  <kris@gtk.org>
6944
6945         * gtk/gtkentrycompletion.[ch] (gtk_entry_completion_insert_action),
6946         (gtk_entry_completion_insert_action_text),
6947         (gtk_entry_completion_insert_action_markup): the gchar* parameters
6948         should be const (pointed out by both Marco Pesenti Gritti and
6949         Murray Cumming (#124356).
6950
6951 Sat Oct 11 15:37:19 2003  Kristian Rietveld  <kris@gtk.org>
6952
6953         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate): for the custom
6954         child list mode, allocate the height allocation->height to the
6955         button instead of the height requested by the button. (Tiny
6956         size allocation screwup noticed by Macro Pesenti Gritti).
6957
6958 Sat Oct 11 15:23:27 2003  Kristian Rietveld  <kris@gtk.org>
6959
6960         Fixes based on comments from Marco Pesenti Gritti.
6961
6962         * gtk/gtkentry.c (gtk_entry_set_text): block the completion changed
6963         signal handler, avoids the completion popup to popup when text is
6964         set programmatically in most cases (we actually have to handle this
6965         in the _editable functions as well, but that will break popping up
6966         when the user actually typed something :),
6967         (gtk_entry_completion_key_press): when handling enter, bail out
6968         when nothing has been selected,
6969         (gtk_entry_completion_changed): don't popdown when the entry content
6970         changed.
6971
6972         * gtk/gtkentrycompletion.c (gtk_entry_completion_init),
6973         (gtk_entry_completion_selected_changed): unselect_all on the
6974         first selected changed signal. Avoids having a default row selected,
6975         (_gtk_entry_completion_popup): don't select the first row by default.
6976
6977         * gtk/gtkentryprivate.h (struct _GtkEntryCompletionPrivate): add a
6978         first_sel_changed field.
6979
6980 Fri Oct 10 23:02:58 2003  Matthias Clasen  <maclas@gmx.de>
6981
6982         * demos/gtk-demo/menus.c: Replace GtkItemFactory by GtkUIManager 
6983         in the intro (again).
6984
6985 Fri Oct 10 22:50:05 2003  Matthias Clasen  <maclas@gmx.de>
6986
6987         Fixes for (#124212, Marco Pesenti Gritti):
6988         
6989         * gtk/gtkuimanager.c (update_smart_separators): Don't spit 
6990         warnings for popups.
6991         (_gtk_menu_is_empty): Return FALSE for non-menus.
6992
6993 Fri Oct 10 19:10:12 2003  Kristian Rietveld  <kris@gtk.org>
6994
6995         * gtk/gtkcombo.h: Deprecate.
6996         * gtk/gtkoptionmenu.h: Ditto.
6997
6998         * gtk/gtkcombobox.c (gtk_combo_box_size_request),
6999         (gtk_combo_box_size_allocate): Rework, things behave better now. Still
7000         needs some work on requesting enough size when taking the items in
7001         the list into account.
7002
7003         * gtk/gtkfilesel.c: put gtkoptionmenu.h include inside "enable
7004         deprecated" guards.
7005         * gtk/gtkinputdialog.c: ditto.
7006         * gtk/gtkitemfactory.c: ditto.
7007         * gtk/gtkoptionmenu.c: ditto.
7008
7009         * demos/gtk-demo/menus.c: remove the option menu.
7010         * demos/gtk-demo/sizegroup.c: replace the option menus with
7011         GtkComboBox.
7012         * demos/gtk-demo/textview.c: ditto.
7013         (A general GtkComboBox demo will be added later on).
7014
7015 Wed Oct  8 00:06:17 2003  Matthias Clasen  <maclas@gmx.de>
7016
7017         * demos/gtk-demo/ui_manager.c (activate_radio_action): New
7018         callback to propertly report radio actions.
7019
7020         * demos/gtk-demo/ui_manager.c (do_ui_manager): Use it here.
7021
7022 Tue Oct  7 23:23:05 2003  Matthias Clasen  <maclas@gmx.de>
7023
7024         * gtk/gtkplug.c (xembed_set_info): Put the supported protocol
7025         version in in the right field of the _XEMBED_INFO property.  
7026         (#123885, Denis Mikhalkin)
7027
7028 Mon Oct  6 14:18:47 2003  Jonathan Blandford  <jrb@redhat.com>
7029
7030         * gtk/gtkexpander.c (gtk_expander_animation_timeout): only show
7031         the child if we have one.
7032
7033         (gtk_expander_button_release): use
7034         gtk_widget_activate instead.
7035
7036 Mon Oct  6 21:05:46 2003  Matthias Clasen  <maclas@gmx.de>
7037
7038         * gtk/gtktable.c (gtk_table_class_init): Start the blurb for 
7039         "right_attach" with a capital.  (#123945, Christian Rose)
7040
7041 Sun Oct  5 23:59:03 2003  Matthias Clasen  <maclas@gmx.de>
7042
7043         * tests/testsocket.c (child_read_watch): Remove an
7044         extraneous unref.  (#122336, Frederic Crozat)
7045
7046 Sun Oct  5 22:38:22 2003  Matthias Clasen  <maclas@gmx.de>
7047
7048         * gtk/gtkeventbox.c (gtk_event_box_class_init): Trim 
7049         whitespace in "visible-window" blurb.  (#123910, Christian Rose)
7050
7051 Sun Oct  5 00:53:15 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7052
7053         * gtk/gtktoolbar.c (gtk_toolbar_list_children_in_focus_order):
7054         focus arrow before pack_end items (#123851, Matthias Clasen)
7055
7056 Fri Oct  3 20:50:48 2003  Kristian Rietveld  <kris@gtk.org>
7057
7058         * gtk/gtkcombobox.c (gtk_combo_box_set_model): only set the model
7059         on ->priv->cell_view if ->priv->cell_view is non-NULL.
7060
7061         * gtk/gtkcomboboxentry.c: include gtkintl.h, add text_renderer
7062         field to GtkComboBoxEntryPrivate,
7063         (gtk_combo_box_entry_class_init), (gtk_combo_box_entry_init),
7064         (gtk_combo_box_entry_set_property), (gtk_combo_box_entry_get_property),
7065         (gtk_combo_box_entry_set_text_column), (gtk_combo_box_entry_new): add
7066         a construct-only "text_column" property and reorder code to use it
7067         and support inheriting this widget.
7068
7069 Thu Oct  2 23:28:02 2003  Kristian Rietveld  <kris@gtk.org>
7070
7071         * gtk/gtkcombobox.c: Added API doc comments.
7072
7073         * gtk/gtkcomboboxentry.c: Ditto.
7074
7075 2003-10-02  Matthias Clasen  <maclas@gmx.de>
7076
7077         * gtk/gtktoggleaction.c: Documentation tweaks.
7078
7079 Wed Oct  1 22:43:40 2003  Kristian Rietveld  <kris@gtk.org>
7080
7081         * gtk/gtkcellview.[ch]: implement the GtkCellLayout interface, drop
7082         packing/attribute/cell data functions from the header,
7083         (gtk_cell_view_set_cell_data): added support for cell data funcs.
7084
7085         * gtk/gtkcombobox.[ch]: implement the GtkCellLayout interface, drop
7086         packing/attribute/cell data functions from the header, implemented
7087         cell data func support.
7088
7089         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_new): updated
7090         for the move to GtkCellLayout.
7091
7092         * tests/testcombo.c (create_combo_box_grid_demo), (main): ditto.
7093
7094 2003-10-01  Matthias Clasen  <maclas@gmx.de>
7095
7096         * gtk/gtkaction.c (gtk_action_class_init): 
7097         (gtk_action_[gs]et_property): Introduce a separate
7098         "hide_if_empty" property for empty menu handling.
7099         (_gtk_action_sync_menu_visible): ...and use it here.
7100
7101         * tests/testmerge.c (main): ...and here.
7102
7103         * gtk/gtktoolitem.c (gtk_tool_item_class_init): Fix signal doc 
7104         comments to pacify gtk-doc.
7105
7106         * gtk/gtkmain.c: Doc formatting tweaks.
7107
7108         * gtk/gtktoolitem.c (gtk_tool_item_set_is_important): Fix a typo.
7109
7110         * gtk/gtkcheckmenuitem.h (gtk_check_menu_item_set_draw_as_radio): 
7111         Use the same parameter names as in .c file, to pacify gtk-doc.
7112
7113         * gtk/gtktoggletoolbutton.[hc]: 
7114         * gtk/gtktoolbutton.[hc]: 
7115         * gtk/gtktoolitem.[hc]:
7116         * gtk/gtktoolbar.[hc]: 
7117         * gtk/gtkcolorbutton.[hc]: 
7118         * gtk/gtkfontbutton.[hc]: 
7119         * gtk/gtkalignment.[hc]: Define GET_PRIVATE macros in the 
7120         source, not in the header.
7121
7122         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_[sg]et_draw_as_radio): 
7123         Document these as 2.4 API additions.
7124
7125 Tue Sep 30 23:42:56 2003  Kristian Rietveld  <kris@gtk.org>
7126
7127         * gtk/gtkentry.c (gtk_entry_set_completion),
7128         (gtk_entry_get_completion): Add API doc comments.
7129
7130         * gtk/gtkentrycompletion.c: Fix #includes and add API doc comments.
7131
7132 Tue Sep 30 23:12:34 2003  Kristian Rietveld  <kris@gtk.org>
7133
7134         * gtk/gtktreemodelfilter.c: Add "Since: 2.4" to all API doc comments.
7135
7136 Tue Sep 30 22:59:58 2003  Kristian Rietveld  <kris@gtk.org>
7137
7138         * gtk/gtktreeviewcolumn.c: Some API doc comment fixes.
7139
7140         * gtk/gtkcellayout.c: Fix #include and oooooh API doc comments!
7141
7142 2003-09-30  Matthias Clasen  <maclas@gmx.de>
7143
7144         * tests/merge-*.ui: 
7145         * tests/testmerge.c: Test handling of empty menus.
7146
7147         * gtk/gtkuimanager.c (_gtk_menu_is_empty): New function to determine
7148         whether a menu is empty. Used in gtkaction.c.
7149         (update_smart_separators): Also update the visibility of empty menus.
7150         (update_node): When creating a new menu proxy, insert an "Empty" menu 
7151         item which only gets shown if the menu is empty. 
7152
7153         * gtk/gtkaction.c (gtk_action_class_init): Document the meaning of
7154         "is_important" for menu proxies.
7155         (_gtk_action_sync_menu_visible): New function to sync the visibility
7156         of menu proxies. Used in gtkuimanager.c.
7157         (gtk_action_sync_visible): New function to sync the visibility of 
7158         proxies.
7159
7160 Tue Sep 30 21:43:34 2003  Kristian Rietveld  <kris@gtk.org>
7161
7162         * gtk/gtkcombobox.c (gtk_combo_box_menu_button_press): set
7163         popup_in_progress to TRUE,
7164         (gtk_combo_box_menu_show): and back to FALSE here; the menu now
7165         won't disappear on the first button release. (Reported by Matthias
7166         Clasen).
7167
7168 Tue Sep 30 21:08:43 2003  Kristian Rietveld  <kris@gtk.org>
7169
7170         * gtk/gtkcombobox.c (gtk_combo_box_init): actually show the child.
7171
7172         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): ditto. (#123543,
7173         Marco Pesenti Gritti).
7174
7175 2003-09-30  Murray Cumming  <murrayc@usa.net>
7176  
7177         * gtk/gtkcellrenderer.h: The render vfunc takes a GdkDrawable*
7178         instead of a GdkWindow*, because that what it is given. The 
7179         documentation was already correct. This should cause no API/ABI
7180         breakage with C compilers.
7181         * gtk/gtkcellrenderertext.c, gtkcellrendererpixbuf.c, 
7182         gtkcellrenderertogger.c: Updated the declarations of the render vfunc
7183         implementation accordingly.
7184
7185 2003-09-30  Matthias Clasen  <maclas@gmx.de>
7186
7187         * gdk/gdkkeys.c (gdk_keymap_class_init): Document the
7188         "direction-changed" and "keys-changed" signals.
7189
7190         * gdk/gdkscreen.c (gdk_screen_class_init): Document the 
7191         "size-changed" signal.
7192
7193         * gdk/gdkdisplaymanager.c (gdk_display_manager_class_init): 
7194         Document the "display-opened" signal.
7195
7196         * gdk/gdkdisplay.c (gdk_display_close): Doc tweak.
7197         (gdk_display_class_init): Document the "closed" signal.
7198
7199 Sat Sep 27 16:02:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7200
7201         * gtk/gtktextview.[ch]: rename property tab_moves_focus to
7202         accepts_tab. (#122709 again).
7203
7204 2003-09-27  Matthias Clasen  <maclas@gmx.de>
7205
7206         * gtk/gtkwindow.c (gtk_window_new):
7207         * gtk/gtkitemfactory.c (gtk_item_factory_new): Document 
7208         the fact that the newly created object does not come with 
7209         a floating reference.  (#103068, patch by Frederic Lespez)
7210         
7211         * gtk/gtkitemfactory.h: Deprecate GtkItemFactory in favor 
7212         of GtkUIManager. Just leave GtkTranslateFunc undeprecated, 
7213         since GtkActionGroup uses it.
7214
7215         * tests/testtext.c: Turn off GTK_DISABLE_DEPRECATED, since
7216         this test uses the soon-to-be-deprecated GtkItemFactory.
7217
7218         * demos/gtk-demo/Makefile.am (demos): Add ui_manager.c,
7219         remove item_factory.c
7220
7221         * demos/gtk-demo/ui_manager.c: Duplicate of item_factory.c 
7222         using GtkUIManager instead of GtkItemFactory.
7223
7224         * tests/testmerge.c: Demonstrate the use of the 
7225         connect-proxy signal.
7226
7227         * gtk/gtkaction.c (connect_proxy): Add connect-proxy and 
7228         disconnect-proxy signals to do small customizations 
7229         like displaying tooltips in the statusbar without 
7230         custom actions.  (#122894, Philip Langdale)
7231
7232         * gtk/gtkuimanager.c (update_node): Don't leak tooltip.
7233
7234 Fri Sep 26 23:49:44 2003  Kristian Rietveld  <kris@gtk.org>
7235
7236         Landing the new ComboBox. Note that only gtkcombobox.h and
7237         gtkcomboboxentry.h are public.
7238
7239         * gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
7240         gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch]: new files.
7241
7242         * gtk/Makefile.am, gtk/gtk.h: adding the new files.
7243
7244         * tests/testcombo.c: and a new test.
7245
7246         * tests/Makefile.am: adding the new test.
7247
7248 2003-09-25  Tor Lillqvist  <tml@iki.fi>
7249
7250         * demos/gtk-demo/main.c: Don't use hardcoded DEMOCODEDIR on Windows.
7251
7252 2003-09-21  Tor Lillqvist  <tml@iki.fi>
7253
7254         * gdk/win32/gdkevents-win32.c (handle_wm_paint): New
7255         function. Code split out from gdk_event_translate(). Needed
7256         because gdk_event_get_graphics_expose() couldn't do anything
7257         sensible otherwise. (Not that I think graphics exposes work anyway
7258         in gdk/win32, but at least now the code could work.)
7259
7260         (gdk_event_get_graphics_expose): Call handle_wm_paint() instead of
7261         gdk_event_translate(), which couldn't have worked as it doesn't
7262         take any pre-allocated GdkEvent parameter any longer.
7263         
7264         (gdk_event_translate): Handle WM_MOUSEACTIVATE: Don't let
7265         GDK_WINDOW_TEMP windows be activated. (#122578, John Ehresman)
7266
7267 2003-09-24  Matthias Clasen  <maclas@gmx.de>
7268
7269         * demos/gtk-demo/appwindow.c (do_appwindow): Demonstrate tooltips
7270         on toolitems.
7271
7272         * gtk/gtkaction.c (connect_proxy): Sync tooltips on toolitems.
7273
7274         * gtk/gtkuimanager.c (update_node): Don't complain about missing
7275         actions on popups. Re-set "tooltip" property on toolitems after
7276         adding them to parent to trigger proxy update.
7277
7278 2003-09-22  Matthias Clasen  <maclas@gmx.de>
7279
7280         * tests/testmerge.c (main): Initially activate the JUSTIFY_RIGHT
7281         group member to test the fix for #122904.
7282
7283         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
7284         Add the action to the group before activating it, otherwise we
7285         may end up with multiple active group members.  (#122904, Marco
7286         Pesenti Gritti)
7287
7288 2003-09-21  Matthias Clasen  <maclas@gmx.de>
7289
7290         Changes to make cross-process merging feasible:
7291         
7292         * gtk/gtkuimanager.[hc]: Add a readonly "ui" property which holds the
7293         merged UI definition. Remove the "changed" signal, since its role
7294         is now filled by "notify::ui". Instead add a "actions-changed" signal
7295         which gets emitted when the set of actions changes.
7296
7297         * gtk/gtktoggleactionprivate.h:
7298         * gtk/gtktoggleaction.[hc] (gtk_toggle_action_[sg]et_draw_as_radio):
7299         Add a "draw_as_radio" property to toggle actions so that they can be
7300         used as proxies for radio actions much like the "draw_as_radio" 
7301         property on check menu items enables them to operate as proxies for
7302         radio actions.
7303
7304         Prevent the "show_all" trap for action-based menus (see
7305         http://mail.gnome.org/archives/gtk-devel-list/2003-September/
7306         msg00260.html):
7307
7308         * gtk/gtkmenu.c (gtk_menu_{hide,show}_all): Remove g_return_if_fail()
7309         calls from static functions.
7310
7311         * gtk/gtkuimanager.c (update_node): 
7312         * gtk/gtkaction.c (connect_proxy): Set "no_show_all" on constructed
7313         widgets whose visibility is externally controlled.
7314
7315         * gtk/gtkwidget.[hc] (gtk_widget_[gs]et_no_show_all): Add a boolean 
7316         "no_show_all" property with setter and getter. When TRUE, it keeps
7317         gtk_widget_{hide,show}_all() from modifying the visibility of the 
7318         widget and its children.
7319
7320 Sun Sep 21 23:13:37 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7321
7322         * gtk/gtktextview.[ch]: Add new "tab moves focus" property (#122709)
7323
7324 2003-09-20  Tor Lillqvist  <tml@iki.fi>
7325
7326         * gtk-zip.sh.in: Don't use zip -r on the etc directory, to avoid
7327         including editor backup files. List files we want explicitly.
7328
7329         * gtk/gtkmain.c (_gtk_get_lc_ctype): New function. On Unix, just
7330         calls setlocale (LC_CTYPE, NULL). On Windows, looks for the
7331         LC_ALL, LC_CTYPE and LANG environment variables, than calls
7332         g_win32_getlocale().
7333
7334         (gtk_get_default_language): Code snippet moved to above function,
7335         call it.
7336
7337         * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave)
7338         * gtk/gtkrc.c (gtk_rc_context_parse_file): Call
7339         _gtk_get_lc_ctype() instead of setlocale().
7340
7341 Fri Sep 19 18:15:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7342
7343         * gtk/gtkpaned.c, gtk/gtkhpaned.c: implement RTL flipping
7344         (#96632)
7345
7346 Fri Sep 19 13:24:54 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7347
7348         * gtk/gtktreeview.c (gtk_tree_view_get_cursor): Improve
7349         documentation. (#117306, Steve Chaplin)
7350
7351 2003-09-19  Tor Lillqvist  <tml@iki.fi>
7352
7353         * gdk/win32/gdkkeys-win32.c (update_keymap): Handle dead keysyms
7354         present on the US-International keyboard. For clarity, order
7355         keysyms in case statement according to numeric value.
7356
7357         (gdk_keymap_translate_keyboard_state): Handle Caps Lock
7358         correctly. (#120176, Ken Rastatter and Owen Taylor)
7359
7360 2003-09-18  Matthias Clasen  <maclas@gmx.de>
7361
7362         * gtk/gtkaction.c (gtk_action_finalize): Call g_closure_unref() to
7363         unref a closure, not g_object_unref().  (#122637, Marco Pesenti Gritti)
7364
7365         Install accelerators on actions, not on proxies, support
7366         accelerator-only actions:
7367         
7368         * gtk/gtkmenu.c (get_accel_path): New function to get the accel path
7369         and its lock status either via _gtk_widget_get_accel_path() or by 
7370         looking at the accel_path stored in the menu item itself and determining
7371         its lock status by peeking into the contained accel label. This was
7372         already (accidentally) committed a week ago.
7373
7374         * gtk/gtkaction.h (gtk_action_set_accel_group):
7375         (gtk_action_[dis]connect_accelerator): New functions.
7376
7377         * gtk/gtkaction.c (struct _GtkActionPrivate): Add accel_group,
7378         accel_closure and accel_count. We must have a reference to the 
7379         accel_group, since we need it in connect_proxy. The count is necessary
7380         to ensure that the accelerator isn't removed before the last proxy 
7381         requesting it has been unmerged.
7382         (connect_proxy): Connect the accelerator to the 
7383         action now, only set the accel_path on the menuitem.
7384         (remove_proxy): Disconnect the accelerator from the action, not from
7385         the menuitem.
7386         (gtk_action_set_accel_group): Set the accel group. 
7387         (gtk_action_[dis]connect_accelerator): Count the number of times
7388         this functions have been called and install/remove the accelerator if
7389         the count leaves/reaches zero.
7390
7391         * gtk/gtkuimanager.h (GtkUIManagerItemType): Add 
7392         GTK_UI_MANAGER_ACCELERATOR.
7393
7394         * gtk/gtkuimanager.c (NodeType): Add NODE_TYPE_ACCELERATOR.
7395         (start_element_handler): Create NODE_TYPE_ACCELERATOR nodes from
7396         <accelerator> elements.
7397         (gtk_ui_manager_add_ui): Create NODE_TYPE_ACCELERATOR nodes when
7398         type is GTK_UI_MANAGER_ACCELERATOR.
7399         (update_node): Set the accel group on actions before creating their
7400         proxies. Don't set the accel group on created menus. For 
7401         NODE_TYPE_ACCELERATOR nodes, [dis]connect the actions' accelerator.
7402         (print_node): Also emit <accelerator> elements.
7403
7404         * tests/testmerge.c (dump_accels): Add a "Dump Accels" button. 
7405
7406         * gtk/gtkuimanager.c (update_node): Robustness improvements.
7407
7408 2003-09-17  Matthias Clasen  <maclas@gmx.de>
7409
7410         * gtk/gtkuimanager.c (text_handler): Report unexpected character
7411         data as error from the GMarkup parser, otherwise things like
7412         gtk_ui_manager_add_ui_from_string (ui, "Hi there!", -1, &error) 
7413         pass unexpectedly.
7414
7415 Wed Sep 17 02:38:53 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7416
7417         * gtk/gtktoolbar.c (gtk_toolbar_class_init): revert accidentally
7418         committed redraw_on_allocate change.
7419
7420 Tue Sep 16 10:42:00 2003  Eric Warmenhoven  <eric@warmenhoven.org>
7421
7422         * gdk/linux-fb/gdkwindow-fb.c: Add gdk_window_set_keep_{above,below}
7423         stubs to fix compilation
7424
7425         * gdk/linux-fb/gdkrender-fb.c: Add gdk_shadow_fb_stop_updates stub for
7426         when shadowfb is disabled. Patch from pjm@cctechnol.com (#120847).
7427
7428         * gdk/linux-fb/gdkmouse-fb.c: Add GDK_MOUSE_DEVICE environment
7429         variable. Patch from Marc Welz (#121347).
7430
7431 2003-09-16  Matthias Clasen  <maclas@gmx.de>
7432
7433         * gtk/gtkaction.h: Apply egtk-format-protos.
7434
7435 2003-09-15  Matthias Clasen  <maclas@gmx.de>
7436
7437         * gtk/gtkuimanager.c: Doc tweaks.
7438
7439         Smart separators; see 
7440         http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00133.html:
7441         
7442         * gtk/gtkuimanager.c (update_smart_separators): New function which 
7443         implements "smart" separators by iterating once over the entries of a 
7444         menu, hiding and showing separators as necessary.
7445         (update_node): Mark separators used as fences of placeholders as
7446         hidden. Explicitly added separators are marked as smart. Call 
7447         update_smart_separators after updating a menu or toolbar node. 
7448         Connect update_smart_separators to "notify::visible" signal on menu
7449         and tool items.
7450         
7451         * tests/merge-[12].ui: Test smart separators.
7452
7453         Changes to allow setting action state before connecting signal; see
7454         the thread starting at 
7455         http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00140.html:
7456         
7457         * gtk/gtkactiongroup.[hc]: (gtk_action_group_add_radio_actions):
7458         (gtk_action_group_add_radio_actions_full): Add value parameter to allow
7459         setting the currently selected group member before connecting signals.
7460         (GtkToggleActionEntry): Separate struct for constructing toggle actions,
7461         including a boolean to initialize the action state before connecting
7462         signals.
7463         (gtk_action_group_add_toggle_actions):
7464         (gtk_action_group_add_toggle_actions_full): New functions to construct
7465         toggle actions from an array of GtkToggleActionEntries.
7466
7467         * demos/gtk-demo/appwindow.c: 
7468         * tests/testactions.c: 
7469         * tests/testmerge.c: Adjust to new action group API.
7470
7471 Sun Sep 14 16:59:52 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7472
7473         * gtk/gtktoolbar.c (gtk_toolbar_init): Name the arrow 
7474         "gtk-toolbar-arrow" so themes can special-case it.
7475
7476 Sun Sep 14 16:07:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7477
7478         * gtk/Makefile.am (gtk_c_sources): sort the list of files.
7479
7480 Sun Sep 14 15:49:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7481
7482         * gtk/gtktoolbar.c (toolbar_item_is_homogeneous): Unref the
7483         PangoFontMetrics. Patch from Steve Chaplin (#122257).
7484
7485 2003-09-14  Tor Lillqvist  <tml@iki.fi>
7486
7487         * gdk/win32/gdkwindow-win32.c (show_window_internal): Remove
7488         special-case code for WS_EX_TRANSPARENT (GDK_INPUT_ONLY) windows,
7489         the usefulness of which was already in doubt. Removing it fixes
7490         bugs #118575 and #121851.
7491
7492 Fri Sep 12 16:32:53 2003  Jonathan Blandford  <jrb@redhat.com>
7493
7494         Merge from stable.
7495
7496         * gtk/gtktreeview.c (gtk_tree_view_button_press): only save the
7497         pressed button (used to determine if we want to initiate a drag later
7498         on) if the current grab widget is either NULL or tree_view (Reported
7499         by Jeroen Zwartepoorte).
7500
7501 2003-09-12  Matthias Clasen  <maclas@gmx.de>
7502
7503         * gdk/gdkdraw.c (gdk_draw_string, gdk_draw_text) 
7504         (gdk_draw_text_wc): Add deprecation notes.  (#121955, Martin Pool)
7505
7506 2003-09-11  Matthias Clasen  <maclas@gmx.de>
7507
7508         * gdk/gdkpango.c: Doc tweaks.
7509
7510         * tests/testgtk.c: Add table menu tests.
7511
7512         * gtk/gtkmenu.c (gtk_menu_free_private): Don't forget to free the 
7513         GtkMenuPrivate struct itself. Pointed out by valgrind.
7514
7515         * gtk/gtkuimanager.c (gtk_ui_manager_finalize): Clean up 
7516         properly.  (#121998)
7517
7518 Wed Sep 10 22:25:04 2003  Kristian Rietveld  <kris@gtk.org>
7519
7520         The table menu patch! Turns GtkMenu into a table, so you can attach
7521         menu items in numerous new ways! Be creative!
7522
7523         Contains some bug fixes and RTL adaptions from Matthias Clasen.
7524
7525         * gtk/gtkmenu.c [toplevel]: introduce ATTACH_INFO_KEY, extend
7526         GtkMenuPrivate, introduce AttachInfo, add child properties enum,
7527         (gtk_menu_free_private), (gtk_menu_get_private): we have to free
7528         the heights array in the private struct,
7529         (gtk_menu_class_init): reorder code a bit, install child properties,
7530         (get_attach_info), (get_child_attach): new utility functions,
7531         (gtk_menu_set_child_property), (gtk_menu_get_child_property): introduce
7532         child properties, for the attach info,
7533         (gtk_menu_remove): remove AttachInfo from menu item,
7534         (gtk_menu_real_insert): implemented algorithm to automagically place
7535         inserted menu items at the correct place in the table,
7536         (gtk_menu_size_request), (gtk_menu_size_allocate),
7537         (compute_child_offset): reworked/rewritten to support table menus,
7538         (gtk_menu_attach): new function,
7539         (find_child_containing), (gtk_menu_move_current): new functions to
7540         get table menu keynav right.
7541
7542         * gtk/gtkmenu.h: add gtk_menu_attach() prototype.
7543
7544 2003-09-10  Matthias Clasen  <maclas@gmx.de>
7545
7546         * gtk/gtksocket.c (gtk_socket_filter_func): Only remove 
7547         PropertyNotify events from the stream if they have been handled,
7548         in order to enable extending the plug<->socket communication via
7549         properties.
7550
7551 Wed Sep 10 01:06:44 2003  Kristian Rietveld  <kris@gtk.org>
7552
7553         Big TreeView DnD fixage, makes drops on empty models work, makes
7554         TreeStore DnD work and gets rid of gtk-tree-model-drop-append.
7555         Related bugs #95362 and #113314. I don't want to touch this code
7556         ever again.
7557
7558         * gtk/gtktreeprivate.h (GtkTreePrivate): add empty_view_drop field.
7559
7560         * gtk/gtktreednd.c (gtk_tree_get_row_drag_data): add check
7561         for selection_data->length.
7562
7563         * gtk/gtktreeview.c (struct DestRow), (dest_row_free),
7564         (set_dest_row), (get_dest_row): we don't store just the row ref
7565         anymore, but a struct with the row ref and additional info,
7566         (set_destination_row): handle drops on empty space and some
7567         style fixes,
7568         (get_logical_dest_row): also return path_down_mode/drop_append_mode
7569         flags, handle dropping childs on their new parents, rewrite
7570         drop append handling into something saner,
7571         (gtk_tree_view_drag_motion): show a "drop possible arrow" on empty
7572         spaces,
7573         (gtk_tree_view_drag_drop): updates for updated backend,
7574         (gtk_tree_view_drag_data_received): updates for updated backend,
7575         path down mode (treestore DnD) handling,
7576         (gtk_tree_view_set_drag_dest_row): set empty_view_drop flag,
7577         when we are trying to drop a row on an empty model,
7578         (gtk_tree_view_get_drag_dest_row): handle empty_view_drop flag.
7579
7580         * gtk/gtkliststore.c (gtk_list_store_drag_data_received),
7581         (gtk_list_store_row_drop_possible): style and drop-append fixes.
7582
7583         * gtk/gtktreestore.c (gtk_tree_store_drag_data_received): ditto.
7584
7585 2003-09-08  Alexander Larsson  <alexl@redhat.com>
7586
7587         * gtk/gtkeventbox.[hc]:
7588         Implement gtk_event_box_get/set_input_only()
7589         
7590         * tests/testgtk.c:
7591         Tests for the new input only event boxes
7592
7593 Mon Sep  8 21:44:20 2003  Kristian Rietveld  <kris@gtk.org>
7594
7595         Fixes from David Hampton <hampton@employees.org> via gtk-devel-list.
7596
7597         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_elt_get_path): fix
7598         the call to gtk_tree_model_filter_add_root,
7599         (gtk_tree_model_filter_row_changed): bail out if c_path is not above
7600         the virtual root, allow building levels on the second try to convert
7601         the child path to a filter path,
7602         (gtk_tree_model_filter_convert_iter_to_child_iter): pass the virtual
7603         root when calling gtk_tree_model_filter_elt_get_path.
7604
7605 2003-09-07  Matthias Clasen  <maclas@gmx.de>
7606
7607         * gtk/gtkuimanager.c (update_node): Fix a C99ism.  (#121640,
7608         Josh Beam)
7609
7610         Fixes for accelerator handling during (un)merging:
7611         
7612         * gtk/gtkuimanager.c (update_node): Move setting info-action
7613         after the switch, since the old action is needed in some cases.
7614         In cases of proxy type mismatch, disconnect the old proxy from
7615         the old action.
7616
7617         * gtk/gtkaction.c (remove_proxy): Renamed from 
7618         gtk_action_remove_proxy(). Move unsetting of the accelerator
7619         here from disconnect_proxy() in order to catch all cases of 
7620         removing a proxy.
7621         (gtk_action_disconnect_proxy): Fix logic in g_return_if_fail()
7622         to fail if proxy isn't a proxy of action.
7623
7624 2003-09-07  Pablo Saratxaga  <pablo@mandrakesoft.com>
7625
7626         * configure.in: Added Uzbek latin (uz) and cyrillic (uz@Cyrl) to
7627         ALL_LINGUAS
7628
7629 2003-09-07  Matthias Clasen  <maclas@gmx.de>
7630
7631         * gtk/gtkaction.c (disconnect_proxy): Make disconnect work
7632         for toolitems.
7633
7634 2003-09-06  Matthias Clasen  <maclas@gmx.de>
7635
7636         * gtk/gtkaction.c (gtk_action_connect_proxy): Disconnect from 
7637         prev_action, not from action.  (Fix by David Hampton)
7638
7639 Fri Sep  5 14:15:10 2003  Owen Taylor  <otaylor@redhat.com>
7640  
7641         * Back out locale-dependent interpretation of
7642         KP_Decimal, the official XFree86 interpretation
7643         is that KP_Decimal => . KP_Separator => ,
7644         always, independent of locale. 
7645         (#105161, Frederic Crozat, 
7646         http://bugs.xfree86.org/show_bug.cgi?id=534)
7647  
7648 2003-09-04  Matthias Clasen  <maclas@gmx.de>
7649
7650         * tests/testmerge.c: Test buttons and toggle buttons as proxies.
7651
7652         * gtk/gtktoggleaction.c (connect_proxy): 
7653         (gtk_toggle_action_real_toggled): Support toggle buttons as proxies. Note 
7654         that a "draw_as_radio" property is needed for check buttons similar to 
7655         check menu items, in order to fully support button proxies for radio actions.
7656
7657         * gtk/gtkaction.c (connect_proxy): Allow buttons as proxies.
7658
7659         * tests/testmerge.c (toggle_dynamic): Test gtk_ui_manager_add_ui(). 
7660
7661         * gtk/gtkuimanager.h: Add GtkUIManagerItemType enum which is needed for the
7662         'type' argument of gtk_ui_manager_add_ui().
7663
7664         * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui): Add 'type' and 'top' arguments
7665         to make this function as powerful as the XML methods of adding UI.  (#120647)
7666
7667 Thu Sep  4 19:11:23 2003  Kristian Rietveld  <kris@gtk.org>
7668
7669         Merge from stable.
7670
7671         * docs/RELEASE-HOWTO: updates.
7672
7673 2003-09-04  Matthias Clasen  <maclas@gmx.de>
7674
7675         * tests/merge-2.ui: Use "position" instead of "pos".
7676
7677         * gtk/gtkuimanager.c (start_element_handler): No need 
7678         to be terse: Change the name of the "pos" attribute
7679         to "position".
7680
7681 2003-09-04  Matthias Clasen  <maclas@gmx.de>
7682
7683         * gtk/gtkuimanager.c: Un-prefix GtkUIManagerNodeType and 
7684         GtkUIManagerNode to shorten the names and to make the
7685         GTK_UI_MANAGER_<TYPE> names available for a public enum.
7686
7687         * gtk/gtkactiongroup.c:
7688         * gtk/gtkuimanager.c: Various doc tweaks.       
7689
7690         * gtk/gtkuimanager.c (start_element_handler):
7691         (end_element_handler): Improve error reporting. 
7692
7693 Wed Sep  3 23:18:17 2003  Kristian Rietveld  <kris@gtk.org>
7694
7695         Merge from stable.
7696
7697         * gtk/gtkmenu.c (gtk_menu_real_move_scroll): for the END case,
7698         use end_position - page_size instead of G_MAXINT, since
7699         gtk_menu_scroll_to doesn't CLAMP anymore internally. (Fixes #121237,
7700         reported by Havoc Pennington).
7701
7702 Wed Sep  3 21:58:03 2003  Kristian Rietveld  <kris@gtk.org>
7703
7704         Merge from stable.
7705
7706         * gtk/gtkiconfactory.c (cached_icon_free): if icon->style != NULL,
7707         unref it. (Fixes memleak, patch from Kjartan Maraas).
7708
7709 Wed Sep  3 21:38:26 2003  Kristian Rietveld  <kris@gtk.org>
7710
7711         * gdk/Makefile.am, gdk/linux-fb/gdkfbmanager.c, gdk/x11/gdkcolor-x11.c,
7712         gdk-pixbuf/io-gif.c, gtk/Makefile.am, gtk/gtkcalendar.c,
7713         gtk/gtkclist.c, gtk/gtkctree.c, gtk/gtkdnd.c, gtk/gtkentry.c,
7714         gtk/gtkhandlebox.c, gtk/gtkitemfactory.c, gtk/gtkmenu.c,
7715         gtk/gtknotebook.c, gtk/gtkrange.c, gtk/gtkrc.h, gtk/gtktree.c,
7716         gtk/gtktypeutils.h: big patch from Kjartan Maraas
7717         to fix numerous typos.
7718
7719 Wed Sep  3 17:38:01 BST 2003  Tony Gale <gale@gtk.org>
7720
7721         * docs/faq/gtk-faq.sgml: Correct compile line for threads example.
7722
7723 2003-09-02  Tor Lillqvist  <tml@iki.fi>
7724
7725         * gdk/win32/gdkdisplay-win32.c (gdk_display_open): Don't call
7726         CloseHandle() on the HMODULE returned from GetModuleHandle().
7727         Didn't cause any harm, but didn't do anything useful either. When
7728         running a GTK+ program under MS's debugger, the CloseHandle() call
7729         would cause a "first-chance exception" in ntdll.dll to show up.
7730         (The exception is caught appropriately if you let it proceed, but
7731         it confuses the person using the debugger). Thanks to Bruce
7732         Hochstetler for noticing.
7733
7734 Tue Sep  2 21:01:19 2003  Kristian Rietveld  <kris@gtk.org>
7735
7736         Merge from stable.
7737
7738         * gtk/gtktreeview.c (gtk_tree_view_button_press): revert the change
7739         to only select when button 1 is pressed introduced in the fix of
7740         bug #120187.
7741
7742 2003-09-02  Matthias Clasen  <maclas@gmx.de>
7743
7744         * gtk/gtkactiongroup.c (gtk_action_group_new): Doc addition.
7745
7746         * gtk/gtkuimanager.c: Shorten the names of some static 
7747         functions.
7748
7749         Support adding and removing merge nodes dynamically (#120647, 
7750         Anders Carlsson):
7751         
7752         * gtk/gtkuimanager.[ch] (gtk_ui_manager_new_merge_id): Renamed 
7753         gtk_ui_manager_next_merge_id to gtk_ui_manager_new_merge_id 
7754         and made it public.
7755         (gtk_ui_manager_add_ui): New function to add UI elements
7756         without juggling XML fragments, currently restricted to menuitems,
7757         toolitems and separators. Actions still come from registered 
7758         action groups.
7759
7760 Mon Sep  1 19:39:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7761
7762         * gdk/gdkwindow.c (gdk_window_get_bg_gc): Fix bug where the
7763         background pixmap was being offset twice, once by the ts_origin in
7764         gdk_window_get_bg_gc(), and once by gdk_draw_rectangle().
7765
7766 2003-09-01  Matthias Clasen  <maclas@gmx.de>
7767
7768         * gtk/gtkuimanager.[ch] (gtk_ui_manager_ensure_update): Make
7769         this public again, since it's occasionally useful.  (#121128,
7770         Marco Pesenti Gritti)
7771
7772         * gtk/gtkaction.c: Add an "is_important" property and propagate
7773         it to toolitem proxies.  (#121058, Marco Pesenti Gritti)
7774
7775 Mon Sep  1 00:32:30 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7776
7777         * tests/testtoolbar.c (main): connect to "delete_event" so the
7778         application will actually quit when you close the window
7779
7780 2003-09-01  Matthias Clasen  <maclas@gmx.de>
7781
7782         * gtk/gtkuimanager.c (gtk_ui_manager_get_widget) 
7783         (gtk_ui_manager_get_action): g_return_if_fail() if
7784         path is NULL.
7785         (gtk_ui_manager_get_node): Avoid a segfault if path is empty.
7786         (gtk_ui_manager_finalize): Remove the idle on finalize. (#121125, 
7787         Marco Pesenti Gritti)
7788
7789 2003-08-31  Matthias Clasen  <maclas@gmx.de>
7790
7791         * gtk/gtktoolitem.c: Fix some typos in docs.
7792
7793         * gtk/gtkuimanager.[ch] (gtk_ui_manager_get_action): New function,
7794         replaces gtk_ui_manager_activate().  (#120658)
7795
7796         * tests/testmerge.c: Use gtk_ui_manager_get_action() instead of
7797         gtk_ui_manager_activate().
7798
7799         * gtk/gtkaction.c: 
7800         * gtk/gtkactiongroup.c: Some doc tweaks.
7801
7802         * gtk/gtkuimanager.[hc]: Get rid of the remove_widget signal. It
7803         wasn't emitted anyway. Some doc tweaks.
7804
7805 2003-08-30  Matthias Clasen  <maclas@gmx.de>
7806
7807         * tests/testmerge.c (add_widget): Connect to "destroy" on toolbar,
7808         rather than to "remove" on handlebox. 
7809
7810         * gtk/gtkuimanager.[hc] (gtk_ui_manager_activate): New method to
7811         activate an action found by following a path.  (#120658)
7812
7813         * tests/testmerge.c: Add a button to test gtk_ui_manager_activate().
7814
7815         * tests/testmerge.c (add_widget): Put toolbars in handleboxes.
7816
7817         * gtk/gtkuimanager.[hc]: Add a boolean property, "add_tearoffs" with 
7818         setter and getter. If it is set, add tearoff menu items to regular 
7819         menus, but not to popups. Add a signal "changed", which gets emitted
7820         when the merged ui has changed.  (#120649, #120656)
7821
7822         * tests/testmerge.c: Add button to test the generation of tearoff 
7823         menu items.
7824
7825 2003-08-29  Matthias Clasen  <maclas@gmx.de>
7826
7827         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
7828         Actually group the actions together rather than putting each in its 
7829         own group.
7830
7831         * gtk/gtkradioaction.c (create_menu_item): Set "draw_as_radio" on 
7832         proxy menu items for radio actions.
7833
7834         * gtk/gtkgamma.c (gamma_ok_callback): Use g_strtod instead of strtod.
7835
7836 Fri Aug 29 21:40:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7837
7838         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
7839         Fix use of uninitialized variable.
7840
7841         * gtk/gtktextutil.c
7842         (_gtk_text_util_append_special_char_menuitems): add const cast to
7843         get rid of warning
7844
7845 2003-08-29  Matthias Clasen  <maclas@gmx.de>
7846
7847         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Install 
7848         "draw_as_radio" as a separate property, not as an alias of 
7849         "inconsistent".
7850         (gtk_check_menu_item_get_property): 
7851         (gtk_check_menu_item_set_property): Also support "draw_as_radio".
7852
7853 Fri Aug 29 20:32:07 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7854
7855         * gtk/gtktoolbar.c: Only treat buttons as homogeneous when they
7856         are narrower than 13 time the estimated character width of the
7857         font. (#107781, David Bordoley)
7858
7859         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): Check
7860         here if the GtkToggleButton is active. This may be the case if it
7861         is a radio button.
7862
7863         * gtk/gtktoolbar.c: Clarify documentation wrt. GtkSignalFunc
7864         vs. void (*) (GtkWidget, gpointer). (#107495, Mariano
7865         Suarez-Alvarez).
7866
7867         * gtk/gtkcheckmenuitem.[ch]: new "draw_as_radio"
7868         property. (#111207, David Bordoley).
7869
7870         * gtk/gtktoggletoolbutton.c
7871         (gtk_toggle_tool_button_create_menu_proxy): use new
7872         "draw_as_radio" property on the menu item when the item is a radio
7873         tool button
7874
7875         * gtk/gtktoolbutton.c (gtk_tool_button_create_menu_proxy): Fixes
7876         to only pay attention to the "use_underline" property when the
7877         button label comes from the "label" property.
7878
7879 2003-08-29  Laurent Dhima  <laurenti@alblinux.net>
7880
7881         * configure.in: Added "sq" to ALL_LINGUAS.
7882         
7883 2003-08-28  Matthias Clasen  <maclas@gmx.de>
7884
7885         * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Markup
7886         fix in the docs.
7887
7888         * gtk/gtkuimanager.c: Change the XML format:
7889         <Root> element is replaced by <ui>,
7890         <menu> element is replaced by <menubar>,
7891         <submenu> element is replaced by <menu>,
7892         <dockitem> element is replaced by <toolbar>,
7893         <popups> element is gone,
7894         verb attribute is replaced by action,
7895         name defaults to action or the element name. 
7896
7897         * gtk/gtkactiongroup.[hc]: Replace GtkActionGroupEntry by 
7898         GtkActionEntry and GtkRadioActionEntry. GtkActionEntry is simplified 
7899         by removing the user_data, entry_type and extra_data fields, 
7900         GtkRadioActionEntry is further simplified by removing the callback. 
7901         The user_data can now be specified as an argument to 
7902         gtk_action_group_add_actions(). There is a new method 
7903         gtk_action_group_add_radio_actions(), which is similar to 
7904         gtk_action_group_add_actions(), but takes GtkRadioActionEntrys
7905         and a callback parameter in addition to the user_data. The callback
7906         is connected to the ::changed signal of the first group member.
7907         There are _full() variants taking a GDestroyNotify of 
7908         gtk_action_group_add_[radio_]actions().
7909
7910         * gtk/gtkradioaction.[hc]: Add a ::changed signal which gets emitted 
7911         on every member of the radio group when the active member is changed. 
7912         Add an integer property "value", and a getter for the value of "value"
7913         on the currently active group member. 
7914
7915         * tests/testactions.c: 
7916         * tests/testmerge.c: 
7917         * tests/merge-[123].ui:  
7918         * demos/gtk-demo/appwindow.c: Adjust to these changes.
7919
7920         * gtk/gtktoolbar.c (gtk_toolbar_append_element): Trivial doc fix.
7921
7922 2003-08-27  Anders Carlsson  <andersca@gnome.org>
7923
7924         * demos/gtk-demo/appwindow.c (do_appwindow): Focus the
7925         text view, so the tool bar won't have focus.
7926
7927 Tue Aug 26 09:57:38 2003  Owen Taylor  <otaylor@redhat.com>
7928
7929         * gdk/x11/gdkkeys-x11.c (update_keymaps): Fix variable
7930         declaration not at start of block. (#120371, Damien Carbery)
7931
7932 2003-08-26  Matthias Clasen  <maclas@gmx.de>
7933
7934         * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui_from_string): Use gssize 
7935         for length, not gsize.
7936
7937         * gtk/gtkuimanager.c: Refactor the XML format a bit: rename <Root> to 
7938         <ui> and make it optional in strings. Rename verb to action, <dockitem> 
7939         to <toolbar>, <menu> to <menubar>, <submenu> to <menu>.
7940
7941         * demos/gtk-demo/appwindow.c: 
7942         * tests/testactions.c: 
7943         * tests/testmerge.c:
7944         * tests/merge-1.ui:
7945         * tests/merge-2.ui:
7946         * tests/merge-3.ui: Adjust to the new XML format.
7947
7948 Mon Aug 25 19:55:55 2003  Owen Taylor  <otaylor@redhat.com>
7949
7950         * gtk/gtktextview.c (gtk_text_view_update_layout_width): 
7951         Since we add one to the layout's reported width to
7952         account for the cursor, we need to subtract one when
7953         setting the wrap width for the layout. (Fixes infinite
7954         loop (#120325, Frederic Crozat)
7955
7956         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
7957         Be a bit more careful about rounding when converting
7958         wrapped width from Pango units to pixels.
7959
7960 2003-08-26  Matthias Clasen  <maclas@gmx.de>
7961
7962         Rename GtkMenuMerge to GtkUIManager. 
7963         
7964         * gtk/gtkuimanager.[hc]: New files. 
7965         * gtk/gtkmenumerge.[hc]: Removed. 
7966
7967         * gtk/Makefile.am: 
7968         * gtk/gtk.h:
7969         * tests/testmerge.c: 
7970         * tests/testactions.c: 
7971         * demos/gtk-demo/appwindow.c: Replace all uses of GtkMenuMerge by 
7972         GtkUIManager.
7973
7974         * demos/gtk-demo/appwindow.c: Make GtkMenuMerge demo less intimidating: 
7975         add comments to entries array, remove newlines from ui definition. Don't 
7976         use the ::add_widget signal.
7977
7978 Mon Aug 25 17:28:04 2003  Owen Taylor  <otaylor@redhat.com>
7979
7980         * gtk/gtknotebook.c (gtk_notebook_forall): Don't
7981         include page->menu_label - causes various problems,
7982         including #12047.
7983
7984 Mon Aug 25 23:21:43 2003  Kristian Rietveld  <kris@gtk.org>
7985
7986         Merge from stable.
7987
7988         Fixes #115871, reported by Michael Natterer.
7989
7990         * gtk/gtktreeprivate.h: added GtkTreeSelectMode enum,
7991         added ctrl_pressed and shift_pressed bitfields,
7992         (_gtk_tree_selection_internal_select_node): replace GdkModifierType
7993         arg with GtkTreeSelectMode.
7994
7995         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode),
7996         (gtk_tree_selection_select_path), (gtk_tree_selection_unselect_path),
7997         (_gtk_tree_selection_internal_select_node): all updated for
7998         GdkModifierType -> GtkTreeSelectMode move.
7999
8000         * gtk/gtktreeview.c (gtk_tree_view_button_press): set ctrl_pressed
8001         and shift_pressed around selection handling block,
8002         (gtk_tree_view_real_select_cursor_row),
8003         (gtk_tree_view_real_toggle_cursor_row),
8004         (gtk_tree_view_real_selection_cursor_parent),
8005         (gtk_tree_view_real_set_cursor): use ctrl_pressed and shift_pressed,
8006         instead of checking the event state. And also updates for the
8007         GdkModifierType -> GtkTreeSelectMode move.
8008
8009 Wed Aug 20 21:26:49 2003  Owen Taylor  <otaylor@redhat.com>
8010
8011         * gtk/gtkplug.c (gtk_plug_focus): Send the focus on
8012         to the parent when there was no focus widget before
8013         and no focus widget after - that is, when there are
8014         no focusable widgets. (#108678, help tracking it
8015         down from Padraig O'Briain, Federico Mena Quintero, )
8016
8017         * gtk/gtkxembed.[ch]: Move various shared utilities
8018         for the XEMBED protocol eused by GtkPlug and GtkSocket 
8019         here.
8020
8021         * gtk/gtkxembed.[ch] gtkplug.c gtksocket.c: Implement
8022         a flag bit that is sent with focus mesages to indicate
8023         that the focus has wrapped around on the toplevel;
8024         use this bit to catch infinite loops when there is no
8025         focusable widget at ll in the entire toplevel.
8026
8027         * tests/testsocket.c (child_read_watch): Remove an
8028         extraneous unref.
8029
8030         * gtk/gtkplug.c gtk/gtksocket.c gtk/gtkxembed.h: 
8031         Up XEMBED protocol version to 1, add logic for 
8032         sending the right version in XEMBED_EMBEDDED_NOTIFY.
8033
8034         * gtk/gtksocket.c (gtk_socket_add_window): Send
8035         the embedder window in the XEMBED_EMBEDDED_NOTIFY
8036         as the spec requires.
8037
8038 Mon Aug 25 16:15:41 2003  Owen Taylor  <otaylor@redhat.com>
8039
8040         * gdk/x11/gdkkeys-x11.c: Fix up CapsLock and 
8041         NumLock handling for non-XKB. Add a special case
8042         hack for NumLock on Sun servers. (Patch from
8043         Robert Basch, #115819)
8044
8045 2003-08-25  Matthias Clasen  <maclas@gmx.de>
8046
8047         * gtk/gtkactiongroup.c (gtk_action_group_add_actions): Remove C99isms. (Morten 
8048         Welinder)
8049
8050         * gtk/gtkactiongroup.[hc] (gtk_action_group_set_translate_func,
8051         gtk_action_group_set_translation_domain): Hooks for translation of
8052         label and tooltip in GtkActionGroupEntries.  (#120620)
8053
8054 2003-08-25  Matthias Clasen  <maclas@gmx.de>
8055
8056         * gtk/gtkactiongroup.h (GtkActionGroupEntryType): Namespace the enum
8057         values properly. Sorry about the resize grip trouble, Owen.  (#120621)
8058         
8059         * gtk/gtkactiongroup.c: 
8060         * demos/gtk-demo/appwindow.c: 
8061         * tests/testmerge.c: 
8062         * tests/testactions.c: Use new GtkActionGroupEntryType enum.  
8063
8064 Sun Aug 24 17:14:44 2003  Owen Taylor  <otaylor@redhat.com>
8065
8066         * gtk/gtk.h: Remove reference to gtkresizegrip.h.
8067
8068 Sun Aug 24 17:03:44 2003  Owen Taylor  <otaylor@redhat.com>
8069
8070         * gtk/Makefile.am: Fix accidental commit of references
8071         to gtkresizegrip.[ch]
8072
8073 Sun Aug 24 17:00:03 2003  Owen Taylor  <otaylor@redhat.com>
8074
8075         * gtk/gtkrc.c: Fix some missing initializations of
8076         rc_file->directory.
8077
8078 2003-08-24  Matthias Clasen  <maclas@gmx.de>
8079
8080         * gtk/gtkaction.[ch]: 
8081         * gtk/gtktoggleaction.[ch]: 
8082         * gtk/gtktoggleactionprivate.h: 
8083         * gtk/gtkradioaction.[ch]: 
8084         * gtk/gtkactiongroup.[ch]: 
8085         * gtk/gtkmenumerge.[ch]: A model-view separation for menus and
8086         toolbars, using the EggMenu code by James Henstridge.
8087
8088         * gtk/gtk.h: Include new headers.
8089         * gtk/Makefile.am: Add new files.
8090
8091         * tests/testactions.c: Test for actions.
8092         * tests/testmerge.c: Test for menu merging.
8093         * tests/merge-[123].ui: Test data for testmerge. 
8094         * tests/Makefile.am: Add testactions and testmerge.
8095
8096         * demos/gtk-demo/appwindow.c: Use GtkMenuMerge to construct the 
8097         menubar and toolbar.
8098         
8099 Sat Aug 23 21:40:18 2003  Owen Taylor  <otaylor@redhat.com>
8100  
8101         * gtk/gtkrc.c (gtk_rc_context_parse_one_file): Fix 
8102         problem where rc_file->directory wasn't always getting
8103         set. (#120549, Luis Villa)
8104  
8105 2003-08-22  Christian Rose  <menthos@menthos.com>
8106
8107         * configure.in: Added "ne" to ALL_LINGUAS.
8108
8109 Thu Aug 21 16:00:36 2003  Owen Taylor  <otaylor@redhat.com>
8110  
8111         * gtk/gtkrc.c: Keep a list of current GtkRcFiles
8112         being parsed, not just the directories for those
8113         files. Use that to catch recursion. (Part of
8114         #114988)
8115  
8116 Thu Aug 21 21:27:45 2003  Kristian Rietveld  <kris@gtk.org>
8117
8118         Merge from stable.
8119
8120         Fix option menu scrolling (#119821, Owen Taylor).
8121
8122         * gtk/gtkmenu.c (gtk_menu_scroll_to): remove logic introduced
8123         by #80484 and the CLAMP,
8124         (get_menu_height): new function,
8125         (gtk_menu_real_move_scroll): sort of moved the CLAMP here to correct
8126         new_offset to handle page up/down right.
8127
8128 Thu Aug 21 15:17:42 2003  Owen Taylor  <otaylor@redhat.com>
8129
8130         * gdk/x11/gdkkeys-x11.c: Change the interpretation
8131         of consumed_modifiers so that it contains:
8132          - Modifiers combinations actually found in
8133            state.
8134          - Single modifier modifier combinations.
8135         But not multi-modifier combinations that aren't
8136         in event->state. Document. (#100439)
8137
8138 Thu Aug 21 20:53:46 2003  Kristian Rietveld  <kris@gtk.org>
8139
8140         Slightly modified patch from Yann Rouillard to improve selection
8141         behavior with the mouse. Fixes #120187.
8142
8143         * gtk/gtktreeview.c (gtk_tree_view_button_press): only
8144         select/deselect items on the first button press of button 1,
8145         expand checks for row_activated to include triple clicks.
8146
8147 Thu Aug 21 01:33:51 2003  Kristian Rietveld  <kris@gtk.org>
8148
8149         Merge from stable.
8150
8151         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
8152         approximate digit widths up, to avoid truncation, convert to
8153         pango pixels when we have the full string width instead of converting
8154         the approx digit width to pango pixels, take inner border and
8155         interior focus into account correctly. (Fixes #116368, patch from
8156         Morten Welinder).
8157
8158 2003-08-20  Noah Levitt  <nlevitt@columbia.edu>
8159
8160         * gtk/queryimmodules.c: Don't look at the same directory twice (in
8161         simple cases). (#120342)
8162
8163 Wed Aug 20 22:04:47 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8164
8165         * gdk/gdkwindow.c: Make the layers in the paint stack have their
8166         own pixmap instead of sharing one. (#118317)
8167
8168         * tests/testgtk.c (create_get_image): Fixes to make the window fit
8169         on an 800x600 screen
8170
8171 Wed Aug 20 22:03:25 2003  Kristian Rietveld  <kris@gtk.org>
8172
8173         Merged from stable.
8174
8175         * gtk/gtkspinbutton.c (start_spinning): change the type of step
8176         to gdouble, since it gets it's data from a gdouble (Fixes #113547).
8177
8178 Mon Aug 18 17:19:12 2003  Owen Taylor  <otaylor@redhat.com>
8179
8180         * modules/input/gtkimcontextxim.[ch]: Substantially
8181         rework the handling of status windows:
8182         
8183          - Store the current StatusWindow in the 
8184            GtkIMContextXIM structure and vice-versa, so we
8185            don't have to hunt the window hierarchy on
8186            cleanup.
8187          - Use the Gtkidget hierarchy instead of/or as well
8188            as the GdkWindow hierarchy when finding the toplevel;
8189            this helps for things like GtkHandlebox
8190          - Watch GtkWidget::hierarchy_changed to catch 
8191            changes in the toplevel without changes in the
8192            GdkWindow (reparenting)
8193          - Never create the GtkWindow for the status window
8194            unless we have text to display.
8195          - Various cleanups, add lots of comments.
8196
8197         (#115077, much help from Takuro Ashie and Hidetoshi
8198         Tajima in tracking this down and figuring out a fix.)
8199
8200         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_focus_in): 
8201
8202         * modules/input/gtkimcontextxim.c: Track the current
8203         screen for each toplevel so that we show the status
8204         window on the right screen. (#116340, James Su)
8205
8206         * modules/input/gtkimcontextxim.c: If create a new IC
8207         when we currently have the focus, call XSetICFocus()
8208         on it.
8209         
8210         * modules/input/gtkimcontextxim.c (get_im): Fix bug
8211         with multiple open screens.
8212
8213 Tue Aug 19 14:37:46 2003  Owen Taylor  <otaylor@redhat.com>
8214
8215         * gtk/gtkimmulticontext.[ch] (struct _GtkIMMulticontext): 
8216         Replace client_window field with 'priv' pointer,
8217         retaining binary compatibility.
8218
8219         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave): 
8220         save use_preedit/cursor_location/focus status and set
8221         up the new slave appropriately. (#118651, Botond Botyanszki)
8222
8223 Tue Aug 19 13:58:50 2003  Owen Taylor  <otaylor@redhat.com>
8224
8225         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
8226         Don't use impl->position_info.clip_rect for toplevels.
8227         (#107068, reported by Thomas Mirlacher)
8228
8229 Mon Aug 18 11:48:51 2003  Owen Taylor  <otaylor@redhat.com>
8230
8231         * gdk/x11/gdkdrawable-x11.c (convert_to_format): 
8232         Add a fallback for unaligned source data for
8233         FORMAT_ARGB_MASK. (#117217)
8234
8235 Mon Aug 18 10:51:57 2003  Owen Taylor  <otaylor@redhat.com>
8236
8237         * configure.in: Rework handling of REBUILD_PNGS,
8238         so that we also don't try to REBUILD_PNGS when
8239         cross-compiling and there is no gdk-pixbuf-csource.
8240         But give an error if gtk/stock-icons/gtkstockpixbufs.h
8241         is not in the source tree. (Note that REBUILDS_PNG
8242         was set backwards before, which is why you always
8243         had to manually recreate gtkstockpixbufs.h!)
8244
8245 Mon Aug 18 10:19:55 2003  Owen Taylor  <otaylor@redhat.com>
8246
8247         * gtk+-2.0-uninstalled.pc.in: Add a missing gtk/ in the
8248         path to libgtk.la. (#120080, Benedikt Spranger)
8249
8250 Sat Aug 16 10:34:49 2003  Owen Taylor  <otaylor@redhat.com>
8251
8252         * modules/input/imcedilla.c: Make the list of default
8253         languages more comprehensive. (Suggestion of
8254         Fco. Javier F. Serrador)
8255
8256 Sat Aug  9 12:47:11 2003  Owen Taylor  <otaylor@redhat.com>
8257
8258         * gdk/gdk.c (gdk_arg_context_parse): Fix broken 
8259         parentheses when skipping args.
8260
8261 Sat Aug 16 16:22:23 2003  Kristian Rietveld  <kris@gtk.org>
8262
8263         Fix major bug in row ref handling, so the new combo box
8264         will actually work right (:. Bug #107748. Patch written
8265         with help from Tim Janik.
8266
8267         The basic idea is to update the row refs in a closure,
8268         before the actual signal is emitted (rather than having
8269         the model connect signal handlers).
8270
8271         * gtk/gtktreemodel.c (gtk_tree_model_base_init): change
8272         g_signal_new calls for row_inserted, row_deleted and
8273         rows_reordered to use the new marshallers,
8274         (row_inserted_marshall), (row_deleted_marshall),
8275         (rows_reordered_marshall): the new marshallers,
8276         (gtk_tree_row_ref_inserted_callback): renamed to
8277         gtk_tree_row_ref_inserted since it isn't a callback
8278         anymore and gets called by the marshaller now,
8279         (gtk_tree_row_ref_deleted_callback): likewise,
8280         (gtk_tree_row_ref_reordered_callback): likewise,
8281         (connect_ref_callbacks), (disconnect_ref_callbacks):
8282         removed,
8283         (gtk_tree_row_reference_new_proxy),
8284         (gtk_tree_row_reference_free),
8285         (gtk_tree_row_reference_inserted),
8286         (gtk_tree_row_reference_deleted),
8287         (gtk_tree_row_reference_reordered): updated.
8288
8289 Fri Aug 15 16:54:39 2003  Owen Taylor  <otaylor@redhat.com>
8290
8291         Improve Cedilla handling - based on a patch from Gustavo 
8292         De Nardin, #111334
8293
8294         * modules/input/imcedilla.c po/POTFILES.in: Input method that 
8295         produces C_WITH_CEDILLA rather than C_WITH_ACUTE for 
8296         dead_acute+c combinations. Make this the default for
8297         fr and pt.
8298
8299         * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave): 
8300         Use LC_CTYPE instead of LC_MESSAGES to pick the default
8301         input method.
8302
8303 Fri Aug 15 17:00:19 2003  Owen Taylor  <otaylor@redhat.com>
8304
8305         * gtk/gtkimcontextsimple.c: Fix missing compose sequence
8306         for Multi_key+c+apostrophe.
8307
8308 Fri Aug 15 21:57:34 2003  Kristian Rietveld  <kris@gtk.org>
8309
8310         Merged from stable.
8311
8312         * gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): stop editing
8313         on vertical scrolling. (#108035, reported by Tim Janik).
8314
8315 Fri Aug 15 20:06:42 2003  Kristian Rietveld  <kris@gtk.org>
8316
8317         Merged from stable.
8318
8319         * gtk/gtktreeview.c (gtk_tree_model_sort_row_changed),
8320         (gtk_tree_model_sort_level_find_insert),
8321         (gtk_tree_model_sort_insert_value): fix off-by-one error.
8322         (#109292 continued, patch from Yann Rouillard).
8323
8324 Fri Aug 15 19:43:14 2003  Kristian Rietveld  <kris@gtk.org>
8325
8326         (Note: This is not exactly the same as the patch which went in
8327          gtk-2-2).
8328
8329         * gtk/gtktreeview.c (gtk_tree_view_class_init),
8330         (gtk_tree_view_key_press), (gtk_tree_view_search_key_press_event):
8331         Also support the up, down, left, right, home, end, page up and
8332         page down keys on the numpad. (#119419, reported by Alex Larsson).
8333
8334 Fri Aug 15 12:34:04 2003  Owen Taylor  <otaylor@redhat.com>
8335
8336         Fixes for X/Cygwin builds of GTK+ (#107623, Masahiro Sakai):
8337
8338         * configure.in (GDK_DEP_LIBS_FOR_X): Make sure that
8339         we link libgtk against X explicitely, since we
8340         make GTK+ calls for plug/socket.
8341
8342         * gtk/queryimmodules.c: Use USE_LA_MODULES and 
8343         G_MODULE_SUFFIX here. 
8344
8345         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_image): Protect
8346         XShmPutImage with #ifdef USE_SHM.
8347
8348 Thu Aug 14 18:25:39 2003  Owen Taylor  <otaylor@redhat.com>
8349
8350         * gtk/gtkfilesel.c (gtk_file_selection_populate):
8351         Don't reposition the cursor when we aren't trying
8352         to complete. (Fixes problems with selection on
8353         startup, #108433, reported by Mark Finlay.)
8354
8355         * gtk/gtkfilesel.c (gtk_file_selection_populate): Remove
8356         code that tried to position the cursor after the common
8357         prefix when there was one, it wasn't working, and
8358         would be hard to fix. Just always put the cursor
8359         at the end when completing.
8360
8361 Thu Aug 14 17:58:23 2003  Owen Taylor  <otaylor@redhat.com>
8362
8363         * gtk/gtkfilesel.c (get_current_dir_utf8): If getting
8364         the current directory fails because of encoding
8365         conversion problems, walk up textually to parent
8366         directories until we can convert. (#113627)
8367
8368 Wed Aug 13 17:01:49 2003  Owen Taylor  <otaylor@redhat.com>
8369
8370         * gtk/gtkmenushell.[ch] (gtk_menu_shell_enter_notify):
8371         Remove usage of menu_shell->ignore leave which was
8372         to deal with stray events we no longer get because
8373         we do grabbing differently. Comment it as unused in
8374         the header. (#115837, Keith Bissett)
8375
8376 Wed Aug 13 16:32:43 2003  Owen Taylor  <otaylor@redhat.com>
8377
8378         * gtk/gtkmenu.c (gtk_menu_position, gtk_menu_window_size_request): 
8379         Fix some places that weren't properly Xinerama-ified.
8380
8381         * gtk/gtkmenu.c: Fix problem with windows that scroll
8382         at the top of the screen.
8383
8384 Wed Aug 13 11:34:53 2003  Owen Taylor  <otaylor@redhat.com>
8385
8386         * gtk/gtkcombo.c (gtk_combo_init): connect_after() to 
8387         key-press-event on the entry, so input methods get access to 
8388         key presses before GtkCombo customization.
8389         (#115451, Botond Botyanszki)
8390
8391 2003-08-13  Anders Carlsson  <andersca@gnome.org>
8392
8393         * tests/testtoolbar.c: (set_important_func), (important_toggled),
8394         (create_items_list):
8395         Add an important column.
8396         
8397 Tue Aug 12 15:00:15 2003  Owen Taylor  <otaylor@redhat.com>
8398
8399         * gtk/gtkwindow.c (gtk_window_real_set_focus): Protect
8400         against reentrancy from ::focus-out handlers. 
8401         (#118129, Felipe Heidrich)
8402
8403 Tue Aug 12 14:27:42 2003  Owen Taylor  <otaylor@redhat.com>
8404
8405         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Remove
8406         GDK_LOCK_MASK before calling
8407         gdk_keymap_translate_keyboard_state so bindings 
8408         and accelerators are independent of the Caps-lock
8409         key. (#115384, reported by Toni Willberg)
8410
8411 Mon Aug 11 12:07:14 2003  Owen Taylor  <otaylor@redhat.com>
8412
8413         * gdk/x11/gdkevents-x11.c (get_real_window): Add missing
8414         break statements (#119494, Soeren Sandmann)
8415
8416 Mon Aug 11 11:10:07 2003  Owen Taylor  <otaylor@redhat.com>
8417
8418         * gtk/gtkwidget.h: Mark parent public as well; it's
8419         extensively accessed in existing code, so there is
8420         no advantage in making people use get_parent().
8421         (Tweak to #119463 fix)
8422
8423 2003-08-11  Matthias Clasen  <maclas@gmx.de>
8424
8425         Add support for EWMH "Above" and "Below" window states.  (105100,
8426         Manuel Clos)
8427         
8428         * tests/testgtk.c: Add "Above" and "Below" to the the "Window
8429         State" demo.
8430
8431         * gtk/gtkwindow.h: Add gtk_window_set_keep_above and
8432         gtk_window_set_keep_below.
8433
8434         * gtk/gtk.def: Add gtk_window_set_keep_above and
8435         gtk_window_set_keep_below.
8436
8437         * gtk/gtkwindow.c (gtk_window_set_keep_below):
8438         (gtk_window_set_keep_above): New functions, call the corresponding
8439         gdk functions.
8440
8441         * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_below): New
8442         function, sets _NET_WM_STATE_BELOW.
8443         (gdk_window_set_keep_above): New function, sets
8444         _NET_WM_STATE_ABOVE.
8445
8446         * gdk/gdkwindow.h: Add gdk_window_set_keep_above and
8447         gdk_window_set_keep_below.
8448
8449         * gdk/gdkevents.h (GdkWindowState): Add GDK_WINDOW_STATE_ABOVE and
8450         GDK_WINDOW_STATE_BELOW.
8451
8452         * gdk/gdk.def: Add gdk_window_set_keep_above and
8453         gdk_window_set_keep_below.
8454
8455         * acinclude.m4: Copy newer versions of JH_CHECK_XML_CATALOG and
8456         JH_PATH_XML_CATALOG from gtk-doc to enable configuring without
8457         xmlcatalog in PATH.  (#119115)
8458
8459 2003-08-10  Matthias Clasen  <maclas@gmx.de>
8460
8461         * gtk/gtkwidget.h (struct _GtkWidget): Mark some members as
8462         public.  (#119463)
8463
8464 2003-08-09  Noah Levitt  <nlevitt@columbia.edu>
8465
8466         * gdk/gdkevents.h:
8467         * docs/reference/gdk/tmpl/windows.sgml: Elaborate a bit more in the
8468         docs on GdkFilterFunc and GdkFilterReturn.
8469
8470 2003-08-09  Matthias Clasen  <maclas@gmx.de>
8471
8472         * gtk/gtkcalendar.c:  Add and hook in gtk_calendar_scroll,
8473         to let the mouse wheels select the month. Scrolling down
8474         moves forward in time. (#53134, Abigail Brady) 
8475
8476         * gtk/gtkcalendar.c: Complete the RTL flipping support for
8477         GtkCalendar, make it possible to flip the headings using the
8478         "magic translated string" technique.  Translators, note the
8479         comment in gtk_calendar_init() explaining this.  (#102416)
8480
8481         * gtk/gtkcalendar.c: Get the information about the first day of
8482         the week from the locale using another instance of the "magic
8483         translated string" technique.  Ignore the display option
8484         GTK_CALENDAR_WEEK_START_MONDAY with a warning.  (#87977)
8485
8486         * gtk/gtkcalendar.c: Add DND support to GtkCalendar. The selected
8487         date is dragged as text, formatted via strftime %x. Text drops are
8488         accepted if g_date_set_parse() can make sense of the text. A
8489         dedicated data format for date DND has not been introduced yet,
8490         since there didn't seem to be sufficient consensus on such a
8491         format on xdg-list.  (#117297)
8492         
8493 2003-08-08  Matthias Clasen  <maclas@gmx.de>
8494
8495         * gdk/gdkregion-generic.c (gdk_region_spans_intersect_foreach):
8496         Fix a segfault.  (#115284, Jan Kratochvil)
8497
8498 2003-08-08  Tor Lillqvist  <tml@iki.fi>
8499
8500         * gdk/win32/gdkevents-win32.c (print_event): Print also the root
8501         coordinates for events that have such. Print coordinates for enter
8502         and leave events.
8503
8504         (gdk_event_translate): Don't use event uninitialixed in the
8505         return_exposes branch of the WM_PAINT handler.
8506
8507         * gdk/win32/gdkwindow-win32.c (gdk_window_new,
8508         _gdk_windowing_window_get_pointer, _gdk_windowing_window_at_pointer): 
8509         Must offset top-level window coordinates here, too.
8510
8511 2003-08-08  Matthias Clasen  <maclas@gmx.de>
8512
8513         * demos/gtk-demo/appwindow.c (do_appwindow): Hide the resize grip
8514         when maximized or fullscreen.
8515
8516 2003-08-07  Tor Lillqvist  <tml@iki.fi>
8517
8518         * gdk/win32/gdkinput-win32.h
8519         * gdk/win32/gdkinput-win32.c (_gdk_input_configure_event,
8520         _gdk_input_enter_event): Drop the GdkEvent* parameter, it wasn't
8521         used.
8522
8523         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Adapt caller
8524         accordingly, in fact an uninitialised variable was dereferenced.
8525         
8526
8527         [Win32] Add support for multiple monitors. 
8528         
8529         * gdk/win32/gdkprivate-win32.h
8530         * gdk/win32/gdkglobals-win32.c: New global variables for
8531         multiple-monitor info: _gdk_num_monitors, _gdk_monitors, and
8532         _gdk_offset_x and _gdk_offset_y.
8533         
8534         * gdk/win32/gdkdisplay-win32.c (count_monitor, enum_monitor): New
8535         functions, enumeration functions passed to EnumDisplayMonitors().
8536
8537         (gdk_display_open): If the EnumDisplayMonitors() and
8538         GetMonitorInfo() API is present (on Win98, Win2000 and newer), use
8539         if to find out monitor info.
8540
8541         Calculate the offset between Win32 coordinates (relative to the
8542         primary monitor's origin (and thus negative on monitors to the
8543         left of or above it), and GDK's (visible coordinates should be
8544         non-negative).
8545         
8546         * gdk/win32/gdkscreen-win32 (gdk_screen_get_n_monitors,
8547         gdk_screen_get_monitor_geometry): Use information collected above.
8548
8549         (gdk_window_move, gdk_window_move_resize_window_get_geometry):
8550         Subtract _gdk_offset_{x,y} from GDK root window coordinates.
8551
8552         (gdk_window_get_geometry, gdk_window_get_origin,
8553         gdk_window_get_frame_extents): For top-level windows, add
8554         _gdk_offset_{x,y} to GDK root window coordinates
8555
8556         Still need to handle multiple monitors in
8557         gdk_window_fullscreen(). Probably should make the window
8558         fullscreen on the monitor where the cursor is?
8559
8560         * gdk/win32/gdkevents-win32.c: Add _gdk_offset_{x,y} to all GDK
8561         root window coordinates in GdkEvents.
8562
8563         
8564         [Win32] Fix geometry hint handling. Add support for resize
8565         increment and base size, and aspect ratio geometry hints. The
8566         "gridded geometry" test in testgtk now works beautifully.
8567
8568         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
8569         Turns out this function shouldn't actually ever modify the
8570         window's size, just store the hints. (Old code kept for a while
8571         inside #if 0.)
8572
8573         (gdk_window_set_hints): Remove presumably broken code that handles
8574         the position hints, this function is obsolete anyway.
8575
8576         * gdk/win32/gdkevents-win32.c: Drop the current_{x,y}_root
8577         variables, not used.
8578
8579         (adjust_drag): New function, used to implement resize increment
8580         hints.
8581
8582         (gdk_event_translate): Handle WM_SIZING, implement resize
8583         increment and base size, and aspect ratio geometry hints here. The
8584         WM_GETMINMAXINFO handler takes care of the minimum and maximum
8585         size hints as before. Fix the WM_GETMINMAXINFO handler to take
8586         into account window decorations. No need to modify the
8587         ptMaxPosition and ptMaxSize fields in the MINMAXINFO struct,
8588         the defaults are fine.
8589         
8590         * gdk/win32/gdkprivate-win32.h 
8591         * gdk/win32/gdkwindow-win32.c (_gdk_win32_adjust_client_rect,
8592         _gdk_win32_get_adjusted_client_rect): New helper functions.
8593
8594 2003-08-07  Matthias Clasen  <maclas@gmx.de>
8595
8596         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): Reset the
8597         toplevel->have_* flags before iterating over the _NET_WM_STATE 
8598         atoms.  (#119217) 
8599
8600 Thu Aug  7 16:49:29 2003  Owen Taylor  <otaylor@redhat.com>
8601  
8602         * gtk/gtkwidget.c (gtk_widget_set_style_internal): 
8603         Fix a bug where on theme change, resize/redraw wasn't
8604         properly getting queued on toplevel windows. (#116346,
8605         Rajkumar Siva)
8606  
8607         * gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows): 
8608         Fix bug where wrong coordinates were used for toplevel
8609         window.
8610  
8611 Thu Aug  7 16:40:21 2003  Owen Taylor  <otaylor@redhat.com>
8612
8613         * gtk/gtknotebook.c (gtk_notebook_remove): Remove leftover
8614         page_num variable (Archit Baweja)
8615
8616 2003-08-07  Matthias Clasen  <maclas@gmx.de>
8617
8618         * gtk/gtkspinbutton.c (gtk_spin_button_default_input): Use g_strtod() to
8619         cope with C libraries with crippled locale support.  (#115293)
8620
8621 2003-08-07  Hans Breuer  <hans@breuer.org>
8622
8623         * gdk/win32/gdkevents-win32.c : finally use TrackMouseEvent
8624         (only if the new window not known to Gdk) to get proper
8625         leave notification, and get rid of the wrong placed 
8626         tooltips, bug #102283
8627  
8628         (gdk_event_translate) : small code reordering to not get
8629         GDK_MOTION_NOTIFY for still mouse and get back tooltips on 
8630         menus, bug #117367
8631
8632 2003-08-07  Tor Lillqvist  <tml@iki.fi>
8633
8634         * gdk/gdk.def
8635         * gdk/win32/gdkfont-win32.c (gdk_fontset_load_for_display): Add
8636         missing function, trivially implement.
8637
8638 2003-08-07  Matthias Clasen  <maclas@gmx.de>
8639
8640         * gtk/gtkctree.c (draw_row): Don't cut descenders when 
8641         rendering.  (#118646, Charles Kerr) 
8642
8643 2003-08-06  Hans Breuer  <hans@breuer.org>
8644
8645         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) :
8646         initialize bits to 0 (probably default on NT)
8647
8648         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
8649         now it works as intended ;-)
8650
8651 2003-08-04  Hans Breuer  <hans@breuer.org>
8652
8653         * gdk/win32/gdkwindow-win32.c(gdk_window_set_modal_hint) :
8654         set HWND_NOTOPMOST for modal==FALSE, fixes bug #118435
8655
8656         * gdk/win32/gdkwindow-win32.c : implement gdk_window_[un]fullscreen
8657         (gdk_window_{move,resize,move_rezize})) : noop if FULLSCREEN
8658
8659         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
8660         against all expectations it is basically ony a call with WM_SETICON
8661         needed (the visual effect is there, though colors or mask are
8662         still somewhat wrong).
8663         * gdk/win32/gdkwindow-win32.h : place to store the HICON
8664
8665         * gdk/win32/gdkdrawabke.win32.c : readded the conditional end
8666         pixel drawing as it was fixed at 1999-08-23
8667
8668         gtk/gtk.def : updated
8669
8670 Tue Aug  5 10:07:08 2003  Owen Taylor  <otaylor@redhat.com>
8671
8672         * gtk/gtkmessagedialog.c (gtk_message_dialog_get_property): 
8673         Add a missing break. (#119156, Callum McKenzie)
8674
8675 Tue Aug  5 00:24:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8676
8677         * gtk/gtkmenu.c (gtk_menu_position): New positioning
8678         algorithm.(#116649)
8679
8680 Fri Aug  1 15:26:46 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8681
8682         * gtk/gtktoolbar.c, gtk/toolitem.c: add new "is_important"
8683         property
8684         
8685         * gtk/gtkradiotoolbutton.c
8686         (gtk_radio_tool_button_new_from_widget): Don't take a stock id
8687
8688         * gtk/gtkradiotoolbutton.c
8689         (gtk_radio_tool_button_new_with_stock_from_widget): make this
8690         function take a stock_id.
8691
8692         * gtk/toolbar: documentation
8693
8694 Mon Aug  4 14:53:46 2003  Owen Taylor  <otaylor@redhat.com>
8695
8696         * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init): 
8697         Fix problem where use_xshm was getting set wrong if
8698         MIT_SHM wasn't found. (George Lebel)
8699
8700 2003-08-04  Tor Lillqvist  <tml@iki.fi
8701
8702         * gdk/win32/gdkevents-win32.c (apply_filters): Fix braino:
8703         actually use the passed-in filter list. The function also needs a
8704         GdkWindow parameter, as filter functions expect
8705         GdkEvent::any.window to be valid. (#119034, Hans Breuer)
8706
8707 2003-08-03  Matthias Clasen  <maclas@gmx.de>
8708
8709         * gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors): 
8710         (gdk_screen_get_monitor_geometry): Improve wording of the docs, avoid
8711         the term "virtual screen".  (#119030, Tor Lillqvist)
8712
8713 2003-08-02  Matthias Clasen  <maclas@gmx.de>
8714
8715         * tests/testtext.c (test_init): 
8716         * tests/testgtk.c (test_init): 
8717         * tests/testdnd.c (test_init): 
8718         * demos/pixbuf-init.c (pixbuf_init): 
8719         * demos/gtk-demo/main.c (main): Use g_setenv().
8720
8721         * gdk/x11/gdkdisplay-x11.c (_gdk_windowing_set_default_display): Use
8722         g_unsetenv(). 
8723
8724 Sat Aug  2 12:53:16 2003  Owen Taylor  <otaylor@redhat.com>
8725
8726         * configure.in: Requires glib-2.3.0, pango-1.2.0.
8727
8728         * configure.in: Require Xft version 2,
8729         remove code for handling older versions of pango and Xft.
8730         Many miscellaneous improvements to X checks
8731
8732         * acinclude.m4: Add GTK_ADD_LIB() macro for adding 
8733         a library to a variable, avoiding dups.
8734
8735         * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display): 
8736         Always load "fixed"
8737
8738         * gdk/x11/gdk*-x11.[ch]: Remove support for Xft1 and
8739         for pangox.
8740
8741 2003-08-02  Matthias Clasen  <maclas@gmx.de>
8742
8743         * gtk/gtkcolorsel.c (color_sample_drop_handle) 
8744         (palette_drop_handle): 
8745         * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):  Accept
8746         drops with the wrong format, since the KDE color chooser incorrectly
8747         drops application/x-color with format 8.  (#118810)
8748
8749         * gtk/gtkcolorsel.c (color_sample_drop_handle) (palette_drop_handle): 
8750         * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):  
8751         Accept drops with the wrong format, since the KDE color chooser 
8752         incorrectly drops application/x-color with format 8.  (#118810)
8753
8754 2003-08-02  Tor Lillqvist  <tml@iki.fi>
8755
8756         Fix gdk/win32 window geometry handling again. The window position
8757         in a GDK_CONFIGURE event should be that of the client area, not of
8758         the window decorations. (I was confused by the term "window
8759         border" in X11. It does *not* mean the window manager
8760         decorations. There are no X11-style window borders in Win32.)
8761         Also, this time do take the geometry hints into account
8762         appropriately when moving windows. Now testgtk's gravity test's
8763         move buttons work OK. There are stil problems with taking gravity
8764         into account when showing a hidden window.
8765
8766         * gdk/win32/gdkwindow-win32.h: Keep a whole GdkGeometry as hints
8767         instead of separate fields.
8768         
8769         * gdk/win32/gdkevents-win32.c (handle_configure_event): Don't
8770         adjust for decorations.
8771
8772         * gdk/win32/gdkwindow-win32.c (get_outer_rect,
8773         adjust_for_gravity_hints): New functions.
8774         (gdk_window_move, gdk_window_resize, gdk_window_move_resize): Use
8775         above functions, take geometry hints into account.
8776         (gdk_window_set_geometry_hints): Size hints specicy client area,
8777         not including decorations.
8778
8779 Fri Aug  1 17:10:22 2003  Owen Taylor  <otaylor@redhat.com>
8780
8781         * gtk/gtkfilesel.c (cmpl_completion_fullname): Always
8782         return an absolute path (#115590), fix a problem where
8783         you could crash the file selector with a looong name
8784         by returning a newly allocated buffer.
8785
8786 Fri Aug  1 16:44:51 2003  Owen Taylor  <otaylor@redhat.com>
8787
8788         * gtk/gtkfilesel.c (update_cmpl): Fix obvious reallocation
8789         bug in rarely or never hit code path (#118071,
8790         Tor Lillqvist)
8791
8792 Fri Aug  1 16:30:13 2003  Owen Taylor  <otaylor@redhat.com>
8793
8794         * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render): 
8795         If the check for missing depths, try actually creating pixmaps
8796         of the depths to deal with Xinerama not reporting
8797         all the depths it should. (#115822)
8798
8799 Fri Aug  1 15:33:59 2003  Owen Taylor  <otaylor@redhat.com>
8800
8801         * gtk/gtksocket.c: Patch from Denis Mikhalkin to
8802         forward KeyRelease events as well as KeyPress events.
8803         (#115597)
8804
8805 Fri Aug  1 15:06:25 2003  Owen Taylor  <otaylor@redhat.com>
8806  
8807         * gdk/gdk.c (gdk_parse_args): g_set_prgname("<unknown>")
8808         if argc is 0 as well, instead of leaving it unset.
8809         (#116023, Michael Meeks)
8810  
8811 Thu Jul 31 23:09:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8812
8813         * gtk/gtktoolbar.c (gtk_toolbar_class_init): make show_arrow
8814         default to TRUE; ignore the property when api_mode != NEW_API
8815
8816 2003-07-31  Matthias Clasen  <maclas@gmx.de>
8817
8818         * gtk/gtkwindow.c (gtk_window_set_default_icon): Rename parameter pixbuf
8819         to icon, to pacify gtk-doc.
8820
8821         * gtk/gtkwidget.c (gtk_widget_class_init): Fix formatting of drag-motion 
8822         example. 
8823
8824 Thu Jul 31 15:33:33 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8825
8826         * gtk/gtk*tool*.h: add padding to subclasses of GtkToolItem
8827
8828 Thu Jul 31 15:29:28 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8829
8830         * gtk/gtktoolitem.c (struct _GtkToolItemPrivate): remove unused
8831         overflow_item field.
8832
8833 Wed Jul 30 21:11:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8834
8835         * gtk/gtktoolitem.h: make _gtk_tool_item_toolbar_reconfigured()
8836         an internal function
8837
8838         * gtk/gtktoolitem.h: remove unused declaration of
8839         _gtk_tool_item_get_drag_window().
8840
8841 Wed Jul 30 17:03:58 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8842
8843         * gtk/gtktoolbutton.[ch]:
8844         (gtk_tool_button_new): swap icon_widget and label arguments to
8845         match BonoboUIToolbarButton.
8846
8847         * gtk/gtktoolbar.h: un-deprecate gtk_toolbar_{set|unset}_style().
8848
8849 2003-07-30  Matthias Clasen  <maclas@gmx.de>
8850
8851         * gtk/gtkwidget.c (gtk_widget_class_init): Some updates to the DND
8852         signal docs. 
8853
8854 2003-07-29  Tor Lillqvist  <tml@iki.fi>
8855
8856         Fix for #108007, #112402, #117042: There was confusion in
8857         gdk/win32 at various places whether a window position refers to
8858         the decoration position or the client area position. Also whether
8859         window size includes decorations or not.
8860         
8861         The correct interpretation apparently is that in GDK (like in
8862         X11), a top-level window position means the decoration's position,
8863         but size means the window's inner size (client area size). In the
8864         Win32 API, the window size usually includes the decorations,
8865         though.
8866         
8867         * gdk/win32/gdkevents-win32.c (decode_key_lparam): Move inside
8868         #ifdef G_ENABLE_DEBUG.
8869         (handle_configure_event): New function, generates GDK_CONFIGURE
8870         events from WM_SIZE and WM_MOVE messages. Even if no event is
8871         generated because of the event mask, still set the private
8872         position and size fields. Calculate position and size correctly.
8873         (gdk_event_translate): Call handle_configure_event().
8874
8875         * gdk/win32/gdkgeometry-win32.c: Cosmetics.
8876
8877         * gdk/win32/gdkwindow-win32.c: Use GDI_CALL() and API_CALL()
8878         macros. Cosmetic debugging output changes.
8879         (SafeAdjustWindowRectEx): Remove. If an application wants to
8880         locate a window outside of the screen, it's not GDK's business to
8881         prevent it. And anyway, with multiple monitors, negative
8882         coordinates are perfectly normal.
8883         (gdk_window_new): Adjust the window size for decorations after
8884         _gdk_window_init_position() has done its job. (But the big window
8885         code currently is presumably broken on Win32 anyway.)
8886         (gdk_window_move): The position passed in is supposed to be that
8887         of the window border, so don't need to adjust for decorations.
8888         (gdk_window_resize, gdk_window_move_resize): Simplify somewhat.
8889
8890 Tue Jul 29 13:55:44 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8891
8892         * gtk/gtktoolbar.c (gtk_toolbar_set_style,
8893         gtk_toolbar_prepend_element, gtk_toolbar_append_element,
8894         gtk_toolbar_insert_space, gtk_toolbar_prepend_space,
8895         gtk_toolbar_append_space, gtk_toolbar_insert_item,
8896         gtk_toolbar_prepend_item, gtk_toolbar_append_item,
8897         gtk_toolbar_set_tooltips, gtk_toolbar_set_orientation,
8898         gtk_toolbar_new, gtk_toolbar_prepend_item):
8899
8900         Move documentation inline from template files.
8901
8902         * gtk/gtktoolbar.c (gtk_toolbar_insert_element,
8903         gtk_toolbar_insert_widget, gtk_toolbar_prepend_widget,
8904         gtk_toolbar_append_widget, gtk_toolbar_remove_space,
8905         gtk_toolbar_insert_stock, gtk_toolbar_unset_icon_size,
8906         gtk_toolbar_get_icon_size, gtk_toolbar_set_icon_size,
8907         gtk_toolbar_get_tooltips, gtk_toolbar_unset_style,
8908         gtk_toolbar_get_style, gtk_toolbar_get_orientation)
8909
8910         Copy documentation from stable that was added after the EggToolbar
8911         branched.
8912
8913         * gtk/gtktoolbar.h: deprecate gtk_toolbar_unset_icon_size()
8914
8915 Mon Jul 28 18:21:34 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8916
8917         * gtk+/docs/: Commit autogenerated changes, so patches will make
8918         sense.
8919
8920 2003-07-27  Tor Lillqvist  <tml@iki.fi>
8921
8922         * gdk/win32/gdkevents-win32.c (build_key_event_state): On Win9x,
8923         the keyboard state returned by GetKeyboardState() doesn't
8924         distinguish between the left and right Control and Alt keys. Thus
8925         we cannot detect AltGr (which is supposed to be left Control +
8926         right Alt) the same way as on NT-based systems, but have to accept
8927         either Control + either Alt as AltGr.
8928
8929 2003-07-27  Matthias Clasen  <maclas@gmx.de>
8930
8931         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
8932         Fix function name in warning message.  (#118156, Tim-Philipp
8933         Mller)
8934
8935         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property):
8936         is-expander and is-expanded are boolean properties, not ints.
8937         (#118359, Josh Parsons)
8938
8939 Sat Jul 26 15:21:27 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8940
8941         * gtk/gtkimagemenuitem.c
8942         (gtk_image_menu_item_toggle_size_request): don't request
8943         toggle_space when the image width is 0.
8944
8945 2003-07-25  Tor Lillqvist  <tml@iki.fi>
8946
8947         * gdk/win32/gdkprivate-win32.h
8948         * gdk/win32/gdkglobals-win32.c: New flags _gdk_input_locale_is_ime
8949         and _gdk_keyboard_has_altgr.
8950         
8951         * gdk/win32/gdkevents-win32.c: Lots of changes. Most important
8952         ones detailled here.
8953
8954         Code that has been ifdeffed out for a long time removed. Remove
8955         some really old doc comments that were left behind for some public
8956         functions, the official ones are in the X11 backend anyway. Change
8957         GDK_WINDOW_OBJECT() calls to GdkWindowObject casts. Reformat
8958         multi-line boolean expressions to have the operators at ends of
8959         lines.
8960
8961         As mouse capture with SetCapture() indeed seems to work OK, no
8962         need to have the correspoinding macro USE_SETCAPTURE and ifdefs.
8963
8964         Ifdef out the gdk-ping-msg stuff. I don't remember why it was
8965         needed at some time, and things seem to work fine now without
8966         (knock on wood).
8967
8968         Ifdef out the search for some Latin locale keyboard layout being
8969         loaded. Not used currently, but might be needed after all, if we
8970         decide that we want to be able to generate ASCII control character
8971         events with a non-Latin keyboard.
8972
8973         (assign_object): New helper function, handles the g_object_ref()
8974         and unref() calls when assigning GObject pointers.
8975                 
8976         (generate_crossing_events): Also generate the GDK_NOTIFY_INTERIOR
8977         enter event when the pointer has moved to an ancestor window. Was
8978         left out by mistake.
8979
8980         (gdk_window_is_ancestor): Renamed from gdk_window_is_child().
8981
8982         (gdk_pointer_grab, gdk_pointer_ungrab): Implement the confine_to
8983         functionality, using ClipCursor().
8984                 
8985         (find_window_for_mouse_event): Splice part of code into new
8986         function find_real_window_for_grabbed_mouse_event().
8987
8988         (fixup_event, append_event, apply_filters): New functions, code
8989         refactored out from elsewhere.
8990
8991         (synthesize_enter_or_leave_event, synthesize_leave_event,
8992         synthesize_enter_event,
8993         synthesize_leave_events,synthesize_enter_events): Also take a
8994         GdkCrossingMode parameter, in preparation to generating
8995         GDK_CROSSING_GRAB and GDK_CROSSING_UNGRAB events.
8996
8997         (fixup_event, append_event, fill_key_event_string): New functions,
8998         code refactoring.
8999
9000         (vk_from_char, build_keypress_event, build_keyrelease_event):
9001         Removed as part of dropping WM_CHAR handling.
9002
9003         (build_key_event_state,gdk_event_translate): Call
9004         GetKeyboardState(), once, for each keyboard message, instead of
9005         several calls to GetKeyState() here and there.
9006
9007         (gdk_event_translate): Fix bugs #104516, #104662, #115902. While
9008         at it, do some major refactoring, and some fixes for potential
9009         problems noticed while going through the code.
9010
9011         Don't handle WM_CHAR at all. Only handle WM_KEYDOWN and
9012         WM_KEYUP. Don't need the state variables related to whether to
9013         wait for WM_CHAR or not, and whether the current key is
9014         AltGr. Remove lots of complexity. Thus don't need the
9015         use_ime_composition flag.
9016
9017         Not handling WM_CHAR means dead key handling will have to be taken
9018         care of by GTK, but that seems to work fine, so no worry.
9019
9020         Another side-effect is that Alt+keypad digits don't work any
9021         longer, but it's better to learn to use GTK's ISO14755 support is
9022         anyway.
9023
9024         Be more careful in checking whether AltGr is involved. Only
9025         attempt to handle it if the keyboard actually has it. And
9026         explicitly check for *left* Control plus *right* Alt being
9027         pressed. Still, allow (left) Alt and/or (right) Control with AltGr
9028         chars.
9029
9030         Handle keys using similar code as in the X11 backend. As we have
9031         built a keymap in gdkkeys-win32.c anyway, use it by calling
9032         gdk_keymap_translate_keyboard_state() to look up the keysym from
9033         the virtual key code and keyboard state. Build the key event
9034         string in exactly the same way as the X11 backend.
9035
9036         If an IME is being used, don't generate GDK events for keys
9037         between receiving WM_IME_STARTCOMPOSITION and
9038         WM_IME_ENDCOMPOSITION, as those keys are for the IME.
9039         
9040         For WM_IME_COMPOSITION, handle all the Unicode chars returned from
9041         the IME, not just the first one.
9042
9043         gdk_event_translate() is still quite complex, could split the
9044         message handler cases out into separate functions.
9045
9046         On mouse events, when the mouse is grabbed, use
9047         find_real_window_for_grabbed_mouse_event() in order to be able to
9048         generate correct crossing events.
9049         
9050         No longer take a pre-allocated GdkEvent as parameter. Instead,
9051         allocate events as needed and append them to the queue. (This is
9052         different from how gdk_event_translate() in the X11 backend
9053         works.) This change made the code much clearer, especially in the
9054         cases where we have to generate several GDK events for one Windows
9055         message.  Return FALSE if DefWindowProc() should be called, TRUE
9056         if not. If DefWindowProc() should not be called, also return the
9057         value to be returned from the window procedure.
9058
9059         (Previously, the interaction with gdk_event_translate()'s caller
9060         was much more complex, when we had to indicate whether the
9061         already-queued event should be left in the queue or removed, and
9062         in addition also had to indicate whether to call DefWindowProc()
9063         or not, and what value to return from the window procedure if
9064         not.)
9065
9066         Don't use a separate "private" variable required to be pointing to
9067         the GdkWindowObject of the "window" variable at all times. Just
9068         use casts, even if looks a bit uglier.
9069
9070         Notice destroyed windows as early as possible, and break out of
9071         the messsage switch.
9072
9073         Use _gdk_pointer_root as current_window when the pointer is
9074         outside GDK's top-level windows.
9075         
9076         On WM_INPUTLANGCHANGE, set _gdk_input_locale_is_ime as
9077         appropriate, based on ImmIsIME().
9078         
9079         (gdk_event_translate, gdk_event_send_client_message_for_display,
9080         gdk_screen_broadcast_client_message): Implement client messages.
9081         Use a registered Windows message to pass GDK client messages. Note
9082         that the amount of user data is restricted to four bytes, as it is
9083         carried in the LPARAM. (The WPARAM is used for the message type
9084         "atom".)
9085         
9086         (real_window_procedure): Adapt for new gdk_event_translate()
9087         interface.
9088
9089         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Set
9090         _gdk_input_locale_is_ime initially.
9091
9092         * gdk/win32/gdkwindow-win32.c: Use g_object_ref()/unref() instead
9093         of g_colormap_ref()/unref().
9094
9095         (gdk_window_new): Made code a bit more like the X11 one, pretend
9096         to handle screens (although we just have one for now).
9097
9098         * gdk/x11/gdkevents-x11.c
9099         (gdk_event_send_client_message_for_display,
9100         gdk_screen_broadcast_client_message): Document the user data
9101         limitation on Win32.
9102
9103         * gdk/win32/gdkevents-win32.c (print_event): More complete enter
9104         and leave notify detail output.
9105
9106         * gdk/win32/gdkkeys-win32.c (update_keymap): Make dead keys
9107         visible to GDK and GTK. Store the corresponding GDK_dead_* keysym
9108         for those, so that the GtkIMContextCimple compose tables will
9109         work. Deduce if the keyboard layout has the AltGr key, and set the
9110         above flag accordingly.
9111
9112 2003-07-26  Matthias Clasen  <maclas@gmx.de>
9113
9114         * gtk/gtkwidget.c: Document DND signals.
9115
9116 2003-07-24  Matthias Clasen  <maclas@gmx.de>
9117
9118         * gtk/gtktextview.c (popup_targets_received): Make the "Input Methods"
9119         insensitive when editing isn't possible.  (#118150)
9120
9121 2003-07-23  Matthias Clasen  <maclas@gmx.de>
9122
9123         * gtk/gtkcolorsel.c (gtk_color_selection_init): Make the hue 
9124         spinbutton wrap.  (#118097, John Darrington)
9125
9126         * docs/faq/gtk-faq.sgml: Mention Xnest as a way to debug GTK+ apps. 
9127
9128 2003-07-20  Hans Breuer  <hans@breuer.org>
9129
9130         * makefile.msc : new file to build it all
9131         * Makefile.am : ... added to EXTRA_DIST
9132
9133         * gdk/makefile.msc gtk/stock-icons/makefile.msc 
9134           gtk/makefile.msc.in tests/makefile.msc : updated
9135
9136         * gdk/gdk.def gtk/gtk.def : export a bunch of new 
9137         functions
9138
9139         * gtk/gtkbbox.c : use g_return_val_if_fail() if
9140         there is a value to return
9141
9142         * gtk/gtkfontsel.c gtk/gtkiconfactory.c :
9143         static correctness
9144
9145         * gtk/gtkicontheme.c : ported to use GTimeVal instead of
9146         struct timeval and GTK_DATA_PREFIX instead of GTK_DATADIR
9147
9148         * gtk/gtkicontheme.c : use HAVE_LC_MESSAGES
9149
9150         * gtk/gtkimmulticontext.c : use gtkprivate.h
9151
9152         * gtk/stock-icons/stock_color_picker_25.png
9153           gtk/stock-icons/stock_jump_to_rtl_16.png
9154           gtk/stock-icons/stock_jump_to_rtl_24.png
9155           gtk/stock-icons/stock_redo_rtl_16.png
9156           gtk/stock-icons/stock_redo_rtl_24.png
9157           gtk/stock-icons/stock_undelete_rtl_16.png
9158           gtk/stock-icons/stock_undelete_rtl_24.png
9159           gtk/stock-icons/stock_undo_rtl_16.png :
9160           gtk/stock-icons/stock_undo_rtl_24.png :
9161         readded as binary
9162
9163 Sat Jul 19 22:39:24 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9164
9165         * gtk/gtktoolitem.c (gtk_tool_item_size_request): remove
9166         leftover request of {xy}thickness
9167
9168 Sat Jul 19 16:26:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9169
9170         * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): don't
9171         attempt to add a NULL icon to the box.
9172
9173 Sat Jul 19 12:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9174
9175         * gtk/gtknotebook.c (gtk_notebook_focus_in|out): only redraw tabs
9176         on focus in/out.
9177
9178 2003-07-19  Matthias Clasen  <maclas@gmx.de>
9179
9180         * gtk/gtkstock.h (GTK_STOCK_DIALOG_AUTHENTICATION): New stock id. 
9181         * gtk/gtkiconfactory.c (get_default_icons): Add
9182         stock_dialog_authentication_48.  (#65765) 
9183         * gtk/stock-icons/Makefile.am (VARIABLES2, IMAGES): Here too.
9184         * gtk/stock-icons/stock_dialog_authentication_48.png: New image.
9185
9186         * gtk/gtkbbox.h: 
9187         * gtk/gtkbbox.c (gtk_button_box_get_child_secondary): New
9188         function. (#64562) 
9189
9190 Sat Jul 19 00:18:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9191
9192         * gtk/gtkwindow.c (gtk_window_set_default_icon): Fix C99
9193         declaration
9194
9195         * gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): new function
9196         (gtk_widget_real_focus_{in|out}_event): queue shallow draws
9197         instead of full draws.
9198
9199 2003-07-18  Matthias Clasen  <maclas@gmx.de>
9200
9201         * gtk/gtkwindow.c: Add properties decorated and gravity.  (#80234) 
9202
9203         * gtk/gtktextview.c (gtk_text_view_class_init): Add a new keybinding
9204         signal, move_viewport. 
9205         (gtk_text_view_move_viewport): New function which implements the
9206         move_viewport functionality. 
9207         (gtk_text_view_move_cursor_internal): If the cursor is not visible, move
9208         the viewport. (#78669) 
9209
9210         * gtk/gtkenums.h (GtkScrollStep): New enumeration, used for
9211         move_viewport argument. 
9212
9213         * gtk/gtkstatusbar.c (gtk_statusbar_class_init): Add a has_resize_grip
9214         property.  (#111779) 
9215
9216         * gtk/gtkwindow.h: 
9217         * gtk/gtkwindow.c (gtk_window_set_default_icon): New method.  (#95816)
9218
9219         * gtk/gtkmessagedialog.h:
9220         * gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): New method.  
9221         (#65501, Sebastian Rittau)
9222
9223 Fri Jul 18 20:06:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9224
9225         * gtk/gtktextview.c (changed_handler): use
9226         gtk_widget_queue_resize_noredraw().
9227
9228 2003-07-16  Jody Goldberg <jody@gnome.org>
9229
9230         * gdk/x11/gdkwindow-x11.c (gdk_window_focus) : fix cut-n-paste-o
9231
9232 Fri Jul 18 19:55:50 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9233
9234         * gtk/gtkwidget.c (gtk_widget_queue_resize_no_redraw): Add this
9235         API. 
9236
9237 Fri Jul 18 18:43:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9238
9239         By popular request give toolbuttons a border.
9240         
9241         * gtk/gtktoolitem.c
9242         (gtk_tool_item_size_allocate):
9243         (gtk_tool_item_size_request): don't request and allocate a border
9244         around the child
9245
9246         * gtk/gtktoolbutton.c 
9247         (gtk_tool_button_size_allocate):
9248         (gtk_tool_button_size_request): remove these functions
9249
9250         * gtk/gtktoolbar.c 
9251         (gtk_toolbar_size_request):
9252         (gtk_toolbar_size_allocate): request and allocate a border if we
9253         have a shadow.
9254
9255 Thu Jul 17 19:24:51 2003  Kristian Rietveld  <kris@gtk.org>
9256
9257         Merged from stable.
9258
9259         Fixes issues pointed out by Morten Welinder in #115140.
9260
9261         * gtk/gtktreeview.c (gtk_tree_view_size_request): fix comment,
9262         (do_validate_rows): update validated_area with a logic OR instead
9263         of a bitwise OR,
9264         (validate_rows_handler): make the if statement match the one in
9265         validate_rows(), so we don't leak the timeout.
9266
9267 Thu Jul 17 19:12:02 2003  Kristian Rietveld  <kris@gtk.org>
9268
9269         Merged from stable.
9270
9271         * gtk/gtktreeview.c (gtk_tree_view_remove_widget): the treeview
9272         should only grab focus back if the "cell_editable" widget still
9273         has focus. (Fixes #110104, testcase provided by Marco Pesenti
9274         Gritti).
9275
9276 Thu Jul 17 19:06:34 2003  Kristian Rietveld  <kris@gtk.org>
9277
9278         Merged from stable.
9279
9280         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
9281         Don't set attr.event_mask twice, those things were meant to be
9282         ORred. (#115139, pointed out by Morten Welinder).
9283
9284 Thu Jul 17 16:11:21 2003  Kristian Rietveld  <kris@gtk.org>
9285
9286         Merged from stable.
9287
9288         * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): stop editing
9289         if needed. (Fixes #115869, reported by Michael Natterer).
9290
9291 2003-07-15  Matthias Clasen  <maclas@gmx.de>
9292
9293         * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
9294         Fight against gtk-doc stupidity.
9295
9296 2003-07-13  Matthias Clasen  <maclas@gmx.de>
9297
9298         * gtk/gtkdnd.c (gtk_drag_begin): Rename parameter target_list back to 
9299         targets, to pacify gtk-doc.
9300
9301 Sun Jul 13 15:57:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9302
9303         * gtk/gtktoolbutton.c (gtk_tool_button_finalize): Fix leaks of
9304         label_text, label_widget and icon_widget. (#117312, 
9305         Christian Persch)
9306         
9307 Sun Jul 13 01:37:51 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9308
9309         * gtk/gtkmenu.c (gtk_menu_class_init): new properties
9310         "horizontal-offset" and "vertical-offset" that determines the
9311         position of the menu when it is a submenu. 
9312
9313         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): position
9314         submenus according to new vertical- and horizontal-offset
9315         properties.
9316
9317 Sat Jul 12 16:16:04 2003  Kristian Rietveld  <kris@gtk.org>
9318
9319         Merged from stable.
9320
9321         * gtk/gtktreeview.c (gtk_tree_view_drag_data_received): special
9322         case drags to "0", scroll to the top after dropping. (Fixes #94968,
9323         reported by Alp Toker).
9324
9325 Sat Jul 12 16:08:32 2003  Kristian Rietveld  <kris@gtk.org>
9326
9327         Merged from stable.
9328
9329         * demos/gtk-demo/editable_cells.c (cell_edited): fixup bad
9330         code (#115784, Owen Taylor).
9331
9332 Sat Jul 12 16:01:03 2003  Kristian Rietveld  <kris@gtk.org>
9333
9334         Merged from stable.
9335
9336         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
9337         free the old text and extra_attrs *after* we parsed the new
9338         markup string. (Fixes #114485, reported by Owen Taylor).
9339
9340 Sat Jul 12 15:51:33 2003  Kristian Rietveld  <kris@gtk.org>
9341
9342         Merged from stable.
9343
9344         Fixes #113904, testcase provided by Rene Seindal.
9345
9346         * gtk/gtktreeview.c (gtk_tree_view_button_press): set
9347         pressed_button to -1 when a row has been activated,
9348         (gtk_tree_view_motion_bin_window): only start a drag if there's
9349         a button being pressed.
9350
9351 Sat Jul 12 15:51:18 2003  Kristian Rietveld  <kris@gtk.org>
9352
9353         Merged from stable.
9354
9355         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): use
9356         gdk_window_get_pointer instead of gdk_display_get_window_at_pointer
9357         to avoid a roundtrip (#110272, Owen Taylor).
9358
9359 Sat Jul 12 15:28:26 2003  Kristian Rietveld  <kris@gtk.org>
9360
9361         Merged from stable.
9362
9363         This patch really really fixes scrolling. Related bugs: #81627,
9364         testcase provided by Timo Sirainen, #111500, testcase provided by
9365         manu, #113241, reported by Pedro Gimeno/Michael Natterer.
9366
9367         * gtk/gtktreeview.c (validate_visible_area): scrolling to a dy
9368         which is equal to the lower border of the window means scrolling
9369         to an invisible row, always update the dy when scrolling to an
9370         invisible row, corrected area_above/below calculations for
9371         invisible rows, when walking the tree correct the size
9372         subtracted for invalidated rows, fix wrong logic in comment.
9373
9374 2003-07-11  Matthias Clasen  <maclas@gmx.de>
9375
9376         * gtk/gtkicontheme.c (pixbuf_supports_svg): Use g_strfreev() to free
9377         mime_types.  (#117219, Steve Chaplin)
9378
9379 Tue Jul  8 20:11:04 2003  Owen Taylor  <otaylor@redhat.com>
9380
9381         * gdk/x11/gdkevents-x11.c (get_real_window)
9382         gdk/x11/gdkinput-x11.c (_gdk_input_common_init)
9383         gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init)
9384         gdk/x11/gdkprivate-x11.h (_gdk_windowing_image_init)
9385         Don't assume that all events start with XEventAny - Xkb events
9386         don't! (#105745). So, only do that for core events, and for
9387         non-core events, add a system for registering event types
9388         that start with XEventAny.
9389
9390         * gdk/x11/gdkevents-x11.c (gdk_event_translate):
9391         Check to see if the result of gdk_window_lookup_for_display()
9392         is actually a window.
9393
9394 Fri Jul 11 20:48:14 2003  Kristian Rietveld  <kris@gtk.org>
9395
9396         * gtk/gtktreemodel.c (gtk_tree_path_free): make the path != NULL
9397         check a silent assert, so it follows the g_free() behaviour.
9398
9399 2003-07-11  Matthias Clasen  <maclas@gmx.de>
9400
9401         * gtk/gtkstatusbar.c (gtk_statusbar_init): Center statusbar contents 
9402         vertically.  (#109823, Joe Shaw)
9403
9404 2003-07-11  Morten Welinder  <terra@gnome.org>
9405
9406         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixbuf): Fix memory
9407         access error.  (#69436)
9408
9409 Fri Jul 11 14:32:43 2003  Kristian Rietveld  <kris@gtk.org>
9410
9411         Landing GtkTreeModelFilter and the completion code. (Test program
9412         and documentation will follow next week).
9413
9414         * gtk/gtkcellayout.[ch], gtk/gtkentrycompletion.[ch],
9415         gtk/gtktreemodelfilter.[ch], gtk/gtkentryprivate.h: new files.
9416
9417         * gtkentry.[ch]: added gtk_entry_{get,set}_completion, wrote
9418         necessary code to hook up completion.
9419
9420         * gtktreeviewcolumn.c: made GtkTreeViewColumn implement the new
9421         GtkCellLayout interface.
9422
9423         * gtkmarshalers.list: added BOOLEAN:OBJECT,BOXED.
9424
9425         * gtk/gtk.h, gtk/Makefile.am, po/POTFILES.in: all updated for the new
9426         source files.
9427
9428 Wed Jul  9 19:48:26 2003  Kristian Rietveld  <kris@gtk.org>
9429
9430         Merge from stable.
9431
9432         * gdk/gdkdisplay.c (gdk_display_get_window_at_pointer): don't
9433         directly return from ->window_at_pointer, but set win_x and win_y
9434         first if needed. (Fixes #110166, reported by Arno Charlet).
9435
9436         * gdk/gdkwindow.c (gdk_window_get_composite_drawable): change
9437         function to accept GdkDrawables and not just GdkWindows. This was
9438         already done in some other functions a while back, but this patch
9439         got lost for some reason.
9440
9441 2003-07-09  Matthias Clasen  <maclas@gmx.de>
9442
9443         * gtk/gtkcontainer.c (gtk_container_focus_sort_tab): Consider the text
9444         direction when sorting children.  (#116540, Soeren Sandmann)
9445
9446 Tue Jul  8 17:36:21 2003  Owen Taylor  <otaylor@redhat.com>
9447
9448         * gdk/x11/gdkasync.[ch] gdk/gdkdnd-x11.c: 
9449         Change _gdk_x11_send_xevent_async() to 
9450         _gdk_x11_send_client_message_async() avoid using Xlib
9451         internals that are different on Solaris. 
9452         (#116917, Morten Welinder)
9453
9454 2003-07-08  Matthias Clasen  <maclas@gmx.de>
9455
9456         * gtk/gtkcontainer.c (gtk_container_remove): Doc addition.
9457         (#116501, Doug Quale)
9458
9459 Tue Jul  8 21:35:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9460
9461         * gtk/gtktoggletoolbutton.h: remove strange #define
9462         * gtk/gtktoolbutton.h: fix cut'n'paste error
9463         * gtk/gtktoolbutton.c (gtk_tool_button_init): use instance
9464         private data
9465         * gtk/gtktoolitem.c (gtk_tool_item_class_init): use instance
9466         private data instead of g_new0()
9467         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): use
9468         instance private data
9469
9470 Tue Jul  8 21:10:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9471
9472         * gtk/gtkbutton.c (gtk_button_realize): remove GDK_EXPOSURE_MASK
9473         for INPUT_ONLY window
9474         * gtk/gtkmenuitem.c (gtk_menu_item_realize): same
9475         * gtk/gtknotebook.c (gtk_notebook_realize): same
9476         * gtk/gtkexpander.c (gtk_expander_realize): same
9477         * gtk/gtkrange.c (gtk_range_realize): same
9478
9479         Fix #116303
9480
9481 Tue Jul  8 19:57:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9482
9483         * gtk/gtkstyle.c (gtk_default_draw_arrow): remove correction on x
9484         when detail is "menuitem". With the new menu look is isn't needed
9485         anymore.
9486
9487         * gtk/gtktoolitem.c (gtk_tool_item_toolbar_reconfigured): queue a
9488         resize here, so that tool items will get a chance to relayout
9489         themselves based on the toolbar configuration.
9490
9491         change DEFAULT_SPACE_SIZE to 4 instead of 5
9492
9493         * gtk/gtktoolbar.c 
9494         Get rid of "!GTK_BIN (item)->child means separator". Separators
9495         are widgets in their own right
9496
9497         change DEFAULT_SPACE_SIZE to 4 instead of 5
9498         
9499         (get_space_size): remove this function
9500         (toolbar_item_is_homogeneous): new function
9501
9502         * gtk/gtkseparatortoolitem.c
9503         (gtk_separator_tool_item_size_request): new function.
9504
9505 Tue Jul  8 14:10:35 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9506
9507         * gtk/gtktoggletoolbutton.h: use private data, add new
9508         internal function _gtk_toggle_tool_button_get_button()
9509
9510         * gtk/gtktoolbutton.h: move to private data
9511
9512         * gtk/gtkradiotoolbutton.c, gtk/gtktoolbutton.c: updates for new
9513         private data.
9514
9515 Tue Jul  8 12:50:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9516
9517         * gtk/gtktoolbutton.c (gtk_tool_button_get_icon_widget): fix a
9518         type check, (#116947, Krasimir Angelov)
9519
9520         * gtk/gtktoolbar.c: Use new GtkToolItem accessors.
9521         
9522         * gtk/gtktoolitem.[ch]: Use a private struct to hold the instance
9523         data. Not instance private data yet, because of bug 116921.
9524
9525         * gtk/gtktoolitem.h: new accessors:
9526                 gtk_tool_item_get_homogeneous ()
9527                 gtk_tool_item_get_expand ()
9528                 gtk_tool_item_get_pack_end ()
9529                 gtk_tool_item_get_use_drag_window ()
9530
9531 Mon Jul  7 16:50:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9532
9533         * gtk/gtkcellrenderertext.c
9534         (gtk_cell_renderer_text_class_init): remove accidentally committed
9535         debugging spew
9536
9537         * gtk/gtktoolbar.c
9538         (gtk_toolbar_paint_space_line): remove this function
9539         (gtk_toolbar_expose): always propagate expose, even if the item is
9540         a separator item
9541
9542         * gtk/gtkseparatortoolitem.c
9543         (gtk_separator_tool_item_expose): moved here from gtktoolbar.c
9544         (get_space_size): new function.
9545         (get_space_style): new function
9546
9547 Sun Jul  6 13:00:20 2003  Owen Taylor  <otaylor@redhat.com>
9548
9549         * gtk/gtkdnd.c (_gtk_drag_source_handle_event)
9550         * gtk/gtkdnd.c (gtk_drag_begin_internal):  Remove use
9551         of GDK_POINTER_MOTION_HINT_MASK.
9552
9553         * gtk/gtkdnd.c (gtk_drag_update_idle): Move updating
9554         of the drag into an idle as a superior form of 
9555         expose compression.
9556
9557         * gtk/gtkdnd.c (gtk_drag_begin_internal): Move default icon
9558         creation here, so that we have an icon at the start
9559         of the drag (e.g., when retrieving the window cache
9560         information.)
9561
9562 Sun Jul  6 17:21:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9563
9564         * docs/widget_geometry.txt: better drawing of GtkMenuItem
9565         * docs/widget_geometry.txt: add notes about GtkMenu
9566         * gtk/gtkstyle.c: remove leftover "#include "gtkhandlebox.h""
9567
9568 Sat Jul  5 10:34:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9569
9570         * gtk/gtkmenu.c: add vertical_padding style property.
9571         
9572         * gtk/gtkmenuitem.c: add style properties toggle_spacing,
9573         arrow_spacing and horizontal_padding. Also center separators and
9574         make them a bit taller.
9575
9576         * gtk/*menuitem.c: use new style properties.
9577         
9578         * docs/widget_geometry.txt: Add note about GtkMenuItem
9579
9580         * gtk/gtkstyle.c 
9581         (gtk_default_draw_vline, gtk_default_draw_hline):
9582         fix +/-1 errors. 
9583
9584         (gtk_default_draw_shadow): draw a black border around menus.
9585
9586         * gtk/gtkvseparator, gtk/gtkhseparator.c, gtk/gtkmenuitem.c: fix
9587         calls to gtk_paint_hline() and gtk_paint_vline() (they take x1,
9588         x2 and y1, y2 respectively, not x, width and y, height).
9589
9590 Sat Jul  5 09:55:38 2003  Owen Taylor  <otaylor@redhat.com>
9591
9592         * gdk/x11/gdkdnd-x11.c (precache_target_list): Lookup
9593         all the atoms in the target list at once.
9594
9595         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
9596         Local drag short-circuit.
9597
9598         * gdk/x11/gdkdnd-x11.c (gdk_drag_motion): For the
9599         local case, poke the actions in directly instead of
9600         going through xdnd_set_actions.
9601
9602         * gdk/x11/gdkdnd-x11.c (xdnd_read_actions): Short-circuit
9603         the local case.
9604
9605         * gdk/x11/gdkdnd-x11.c (xdnd_manage_source_filter): Don't
9606         XSelectInput()/add a filter if the drag is local.
9607
9608         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_selection): 
9609         Simplify handling of "XdndSelection".
9610
9611         * gdk/x11/gdkevents-x11.c
9612         (gdk_event_send_client_message_to_all_recurse): Somehow,  
9613         a WM_STATE => _NET_WM_STATE change hand been made here.
9614
9615         * gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Free
9616         xatom_names, not atom_names.
9617
9618         * tests/testdnd.c (target_drag_motion): Make the trashcan
9619         open again. (Got lost in deprecation cleanup.)
9620
9621 Sat Jul  5 00:49:32 2003  Owen Taylor  <otaylor@redhat.com>
9622
9623         * gtk/gtkdnd.c (gtk_drag_begin): Move the grabs up
9624         earlier, so we don't get a big pile of uncompressed
9625         motion events before the grab takes effect.
9626
9627         * gtk/gtkdnd.c (gtk_drag_update_icon): Call 
9628         gdk_window_process_all_updates() so that the area
9629         we are dragging over gets a change to redraw.
9630
9631         * gtk/gtkdnd.c (_gtk_drag_dest_handle_event): Use 
9632         gdk_window_get_position(), not gdk_window_get_origin().
9633
9634         * gdk/x11/gdkwindow-x11.[ch] (gdk_window_have_shape_ext)
9635         gdkdisplay-x11.h: use XShapeQueryExtension to 
9636         avoid duplicate XQueryExtension when we actually
9637         use it. Remove unnecessary caching in GdkDisplayX11.
9638
9639 Fri Jul  4 23:49:22 2003  Owen Taylor  <otaylor@redhat.com>
9640
9641         * gdk/x11/gdkasync.[ch] (_gdk_x11_get_window_child_info): 
9642         Function to get a range of information about all the
9643         children of a window in a single pass.
9644
9645         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse)
9646         gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Use
9647         _gdk_x11_get_window_child_info() to greatly reduce
9648         the number of roundtrips.
9649
9650 Fri Jul  4 22:57:18 2003  Owen Taylor  <otaylor@redhat.com>
9651
9652         * gdk/x11/gdkasync.[ch] (_gdk_send_xevent_async): Add
9653         a function to XSendEvent() and call a calback on
9654         failure/success.
9655
9656         * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Short-circuit
9657         messages to the same process, use _gdk_send_xevent_async().
9658
9659 Fri Jul  4 22:26:27 2003  Owen Taylor  <otaylor@redhat.com>
9660
9661         * gdk/x11/gdkwindow-x11.[ch] gdkevents-x11.c: Split
9662         toplevel-specific pieces of GdkWindowImplX11 into
9663         a separate GdkToplevelX11 structure.
9664
9665 Fri Jul  4 22:05:09 2003  Owen Taylor  <otaylor@redhat.com>
9666
9667         * gdk/x11/gdkasync.c (struct _SetInputFocusState): Fix
9668         some leftover fields.
9669
9670 Fri Jul  4 15:57:52 2003  Owen Taylor  <otaylor@redhat.com>
9671
9672         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
9673         Use asynchronously _gdk_x11_set_input_focus_safe
9674         to avoid having to trap errors and XSync().
9675
9676         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): Use
9677         _gdk_x11_set_input_focus_safe() here as well.
9678
9679         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed):
9680         Rework handling of property notifies on _NET_WM_STATE
9681         so that we ignore _NET_WM_DESKTOP notifies unless we
9682         really care.
9683
9684         * gdk/x11/gdkimage-x11.c (gdk_image_check_xshm): Use
9685         XShmQueryExtension() rather than XQueryExtension() to
9686         avoid extra rountrip.
9687
9688         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init):
9689         Remove unused call to XGetWindowAttributes()
9690         
9691         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Remove
9692         unused call to XGetKeyboardControl().
9693
9694         * gdk/x11/gdkdisplay-x11.c gdk/gdk.def (gdk_display_flush):
9695         Add (#99571)
9696
9697         * gdk/win32/gdkevents-win32.c gdk/linux-fb/gdkevents-fb.c 
9698         No-op implementations of gdk_display_flush().
9699
9700         * gdk/gdkwindow.c (gdk_window_process_all_updates): Use
9701         gdk_display_flush() rather than gdk_flush() to avoid
9702         XSync().
9703         
9704         * gdk/x11/gdkwindow-x11.c (update_wm_hints)
9705         gdk/x11/gdkwindow-x11.h: Centralize all handling of WM_HINTS here
9706         so that we don't have to get the property back from the server.
9707
9708         * gdk/x11/gdkwindow-x11.c (show_window_internal): Store
9709         the serial of when we map a toplevel to allow optimizing
9710         out notifies on _NET_WM_STATE/_NET_WM_DESKTOP.
9711
9712         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Don't
9713         XTranslateCoordinates() for override-redirect windows.
9714
9715 Fri Jul  4 15:59:27 2003  Owen Taylor  <otaylor@redhat.com>
9716
9717         * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Remove comment
9718         about setting window group after the window is mapped from docs
9719         - nothing the ICCCM forbids that.
9720
9721         * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
9722         Fix g_return_val_if_fail() in void return function.
9723
9724         * configure.in: Fix misplaced comma that was resulting
9725         in XShm always being disabled.
9726
9727 Fri Jul  4 19:55:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9728
9729         * tests/stresstest-toolbar: remove this accidentally committed
9730         file.
9731         
9732         * tests/stresstest-toolbar.c: really add this new test
9733
9734 Fri Jul  4 19:06:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9735
9736         * tests/stresstest-toolbar.c: new test for removing items
9737         
9738         * tests/testtoolbar.c: add a popup menu
9739
9740         * gtk/gtkcontainer.c (gtk_container_remove): add hack to avoid
9741           assert widget->parent == container when the container is a
9742           toolbar.
9743
9744         * gtk/gtktoolbar.c (gtk_toolbar_remove_tool_item): Make much
9745         simpler. Also make correct.
9746
9747         * gtk/gtktoolbar.c (gtk_toolbar_button_press): make
9748         popup_context_menu a boolean handled signal.
9749
9750 2003-07-04  Tor Lillqvist  <tml@iki.fi>
9751
9752         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_polygon,
9753         gdk_win32_draw_segments, gdk_win32_draw_lines): We can calculate
9754         the width and height of the bounding rectangle only after the
9755         minumum x and y have been found, and need a separate loop for
9756         it. Thanks to Bruce Hochstetler for providing a sample program
9757         exhibiting the bug.
9758
9759 2003-07-03  Tor Lillqvist  <tml@iki.fi>
9760
9761         * gdk/gdk.def: Add gdk_string_to_compound_text_for_display.
9762         (#116537, Peter Zelezny)
9763
9764 Thu Jul  3 03:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9765
9766         * gtk/gtkpaned.c (gtk_paned_set_child_property): Insert cast to
9767         fix warning. Assign something to old_value to quiet gcc
9768
9769         * gtk/gtkcalendar.c 
9770         (start_spinning): gtk_timeout_add->g_timeout_add
9771
9772         * gtk/gtkicontheme.c 
9773         (theme_lookup_icon): Make it compile (remove double semicolon)
9774
9775         * gtk/gtktoolbutton.c
9776         (gtk_tool_button_class_init): Long comment about properties.
9777         (gtk_tool_button_class_init): Improve text for "use_underline"
9778         property
9779         (gtk_tool_button_create_menu_proxy): Fix up to use_mnemonic based
9780         on whether the passed-in label has use_mnemonic set
9781         (gtk_tool_button_create_menu_proxy): Split image cloning out in
9782         new function. Make that function also handle image with pixbuf
9783         storage.
9784         (gtk_tool_button_construct_contents): Use gtk_widget_destroy()
9785         instead of gtk_container_remove().
9786         (gtk_tool_button_construct_contents): Fix eliding bug
9787
9788         * gtk/gtktoolbar.c
9789         (gtk_toolbar_finalize): New function. Unref tooltips, pointed out
9790         by Morten Welinder
9791         (gtk_toolbar_button_press): Make popup_context_menu signal provide
9792         coordinates and button number
9793
9794         * tests/testtoolbar.c (main): Add new pixbuf toolbutton
9795
9796         * tests/apple-red.png: new file
9797
9798 Wed Jul  2 18:00:56 2003  Owen Taylor  <otaylor@redhat.com>
9799          
9800         * gtk/gtkicontheme.[ch]: Implement a loader for
9801         named themed icon based on from gnome-desktop library
9802         by Alex Larsson.
9803
9804         * gtk/gtkiconthemeparser.[ch]: .ini file parsing code
9805         from gnome-desktop.
9806
9807         * gtk/gtkiconfactory.[ch]: Add
9808         gtk_icon_source_set/get_icon_name() to allow stock icons
9809         to be based off of named theme icons.
9810
9811         * gtk/gtkiconfactory.c: Rework sources so that the source
9812         is *either* a pixbuf, or a filename, or an icon name,
9813         instead of the pixbuf/filename mix it was before. Put a
9814         workaround for get_pixbuf() so that it can return the
9815         filename pixbuf, e.g, for render_icon().
9816
9817         * gtk/gtkiconfactory.c: Make the default setup use
9818         themed icons, and add builtin icons to the default
9819         icon theme for all the standard pixbufs, so we
9820         don't rely on actually having an icon theme on disk.
9821
9822         * gtk/gtkrc.c: Add support for @"icon-name" to specify
9823         a themed icon for a stock icon source.
9824
9825         * tests/Makefile.am test/testicontheme.c: Add a test
9826         program from gnome-desktop.
9827
9828         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c: Add
9829         Net/IconThemeName / gtk-icon-theme-name setting.
9830
9831         * gtk/gtkiconfactory.c (ensure_cache_up_to_date): Actually
9832         update the icon cache serial so we don't continually
9833         think we are out-of-date.
9834
9835         * gtk/gtkwidget.c: Fix a couple of references in doc comments 
9836         to ::direction_set that should have been to ::direction-changed
9837
9838 Wed Jul  2 14:45:41 2003  Owen Taylor  <otaylor@redhat.com>
9839
9840         * gtk/gtktoolbar.c (gtk_toolbar_realize): Attach the
9841         style to the widget.
9842
9843 Wed Jul  2 15:42:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9844
9845         * gtk/gtk.h: Add new toolbar headers
9846
9847         * tests/testtoolbar.c: new file
9848
9849         * tests/Makefile.am (noinst_PROGRAMS): Add testtoolbar.c
9850
9851         * gtk/gtkexpander.c (gtk_expander_class_init): Make it compile
9852
9853 Tue Jul  1 22:49:25 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9854
9855         * gtk/gtktoolbar.c:
9856         (gtk_toolbar_remove_tool_item): Fix bug where list is changed
9857         inside a for loop (pointed out by Morten Welinder).
9858         (gtk_toolbar_focus_home_or_end): Minor formatting change
9859
9860         Comments from Owen:
9861
9862         * gtk/gtktoolbutton.c: remove copy of elide_underscores(). Use
9863         gtk_toolbar_elide_underscores instead.
9864
9865         * gtk/gtktoolbar.c: rename signal from focus_ends to
9866         focus_home_or_end.
9867         (_gtk_toolbar_elide_underscores): export this as an internal
9868         function.
9869         (gtk_toolbar_move_focus): add comment explaining difference to
9870         gtk_toolbar_focus();
9871         (gtk_toolbar_list_children_in_focus_order): Make TAB_FORWARD and
9872         TAB_BACKWARD focus the right widgets in RTL mode
9873
9874         * gtk/gtktoolbutton.c (gtk_tool_button_new): Change to take
9875         "label" and "icon" parameters
9876
9877         * gtk/gtktoolbutton.[ch]: remove icon_set property.
9878
9879 2003-07-01  Matthias Clasen  <maclas@gmx.de>
9880
9881         * gtk/gtkspinbutton.c (gtk_spin_button_set_digits): Improve docs.
9882         (116364, Morten Welinder) 
9883
9884         * tests/testgtk.c: Use GtkFontButton and GtkColorButton to bring up the
9885         corresponding dialogs.
9886
9887         * gtk/Makefile.am (gtk_public_h_sources): Add gtkfontbutton.h,
9888         gtkcolorbutton.h.  
9889         (gtk_c_sources): Add gtkfontbutton.c, gtkcolorbutton.c. 
9890
9891         * gtk/gtkfontbutton.[hc]: New files containing a font picker widget. 
9892
9893         * gtk/gtkcolorbutton.[hc]: New files containing a color picker widget. 
9894
9895         * gtk/gtk.h: Include gtkexpander.h, gtkfontbutton.h, gtkcolorbutton.h.
9896
9897         * gtk/gtkexpander.c: Small additions to the docs. 
9898
9899 2003-07-01  Tor Lillqvist  <tml@iki.fi>
9900
9901         * gdk/win32/gdkwindow-win32.c (_gdk_windowing_window_get_pointer):
9902         WindowFromPoint() wants screen coordinates (#115422, Tim Evans).
9903
9904 2003-07-01  Matthias Clasen  <maclas@gmx.de>
9905
9906         * configure.in: Check for Xcursor.
9907         
9908         * gdk/x11/gdkcursor-x11.c:
9909         * gdk/gdkdisplay.h: 
9910         * gdk/gdkcursor.h: RGBA cursor support based on Xcursor. New functions:
9911         gdk_cursor_new_from_pixbuf(), gdk_display_supports_cursor_alpha(), 
9912         gdk_display_supports_cursor_color(),
9913         gdk_display_get_default_cursor_size() and 
9914         gdk_display_get_maximal_cursor_size().  (#69436)
9915
9916 2003-06-30  Tor Lillqvist  <tml@iki.fi>
9917
9918         * gdk/win32/gdkdnd-win32.c (find_window_enum_proc): New function,
9919         callback proc for EnumWindows().
9920         (gdk_drag_find_window_for_screen): Actually take the drag_window
9921         argument into account: Instead of using WindowFromPoint(), use
9922         EnumWindows(), to be able to skip the drag_window. (#116320, Tony
9923         M Brown, Herman Bloggs)
9924
9925         * gdk/win32/*.c: Replace gdk_drawable_ref()/unref() and
9926         gdk_window_ref()/unref() calls with g_object_ref()/unref().
9927         Consistently use %p format in debugging output of pointers and
9928         HANDLEs.
9929
9930 2003-06-30  Mark McLoughlin  <mark@skynet.ie>
9931
9932         * gtk/gtkexpander.h: kill some stray characters
9933         breaking the build.
9934
9935 2003-06-30  Mark McLoughlin  <mark@skynet.ie>
9936
9937         Add GtkExpander. See discussion in bug #60553.
9938
9939         * gtk/gtkexpander.[ch]: add.
9940         
9941         * gtk/Makefile.am: build gtk-expander.[ch].
9942         
9943         * docs/widget_geometry.txt: add info on the layout
9944         of GtkExpander.
9945
9946 Mon Jun 30 01:20:19 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9947
9948         * gtkradiotoolbutton.c:         new file
9949         * gtkradiotoolbutton.h:            "
9950         * gtktoggletoolbutton.c:           "
9951         * gtktoggletoolbutton.h:           "
9952         * gtktoolbutton.c:                 "
9953         * gtktoolbutton.h:                 "
9954         * gtktoolitem.c:                   "
9955         * gtktoolitem.h:                   "
9956         * gtktoolbar.c: many changes
9957         * gtktoolbar.h: many changes
9958         * gtkseparatortoolitem.c:       new file
9959         * gtkseparatortoolitem.h           "
9960
9961         New toolbar.
9962         
9963         - Items on a toolbar are now separate widgets, instances of a
9964           subclass of GtkToolItem.
9965
9966         - Items there aren't room for on the toolbar are unmapped, and an
9967           overflow menu with a proxy menu item is added instead.
9968
9969         - The toolbar is keyboard navigatable. Press TAB to focus the
9970           first item, then use arrow keys and Ctrl TAB to move around the
9971           toolbar. TAB moves focus out of the toolbar.
9972
9973         - Bascially all of the old toolbar API is deprecated in favor of
9974           new API in gtktoolbar.h, gtktoolitem.h, gtktoolbutton.h
9975
9976         - The toolbar is backwards compatible with the old toolbar.
9977
9978 2003-06-29  Matthias Clasen  <maclas@gmx.de>
9979
9980         * gtk/gtkwidget.c (gtk_widget_class_init): Remove a duplicate parameter
9981         from docs, some more formatting fixes. 
9982
9983 2003-06-28  Tor Lillqvist  <tml@iki.fi>
9984
9985         Fix for #111028, thanks to J. Ali Harlow, who writes:
9986         I found that the GdkPixmap->GdkImage reference really isn't
9987         important. It's only really there to have somewhere convenient to
9988         store the location of the pixel data in the pixmap and as an easy
9989         way of accessing the dimensions of that data. I have therefore put
9990         together a fix which removes this reference entirely which seems
9991         to solve the problem.
9992
9993         * gdk/win32/gdkpixmap-win32.h (struct _GdkPixmapImplWin32):
9994         Instead of a pointer to a GdkImage, keep a pointer to the pixels
9995         directly.
9996
9997         * gdk/win32/gdkimage-win32.c (_gdk_win32_setup_pixmap_image): Remove.
9998         (_gdk_win32_new_image): New function, replacing the above. Creates
9999         a GdkImage without any associated GdkPixmap.
10000         (gdk_image_new_bitmap, _gdk_image_new_for_depth): Use it instead.
10001
10002         * gdk/win32/gdkprivate-win32.h: Remove from here, too.
10003
10004         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap)
10005         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap)
10006         * gdk/win32/gdkgc-win32.c (_gdk_win32_bitmap_to_hrgn)
10007         * gdk/win32/gdkmain-win32.c (_gdk_win32_drawable_description):
10008         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize,
10009         gdk_pixmap_new, gdk_bitmap_create_from_data, gdk_pixmap_foreign_new)
10010         Corresponding changes.
10011
10012 Thu Jun 26 21:41:16 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
10013
10014         * gtk/gtktreeviewcolumn.c
10015         (gtk_tree_view_column_cell_set_cell_data): only set "is_expander"
10016         and "is_expanded" if the new value is different fromt he old one.
10017
10018 Wed Jun 25 18:59:15 BST 2003  Tony Gale <gale@gtk.org>
10019
10020         * docs/faq/gtk-faq.sgml: Fix typos. Update
10021         thread example I missed yesterday.
10022
10023 2003-06-24  Matthias Clasen  <maclas@gmx.de>
10024
10025         * gtk/gtkspinbutton.c (gtk_spin_button_class_init): Add a blurb for
10026         shadow_type. 
10027
10028         * gtk/gtkwidget.c (gtk_widget_class_install_style_property_parser): 
10029         (gtk_widget_class_list_style_properties): Use same parameter names as in  
10030         header (to silence gtk-doc).
10031
10032         * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Fix doc comments.
10033
10034 Tue Jun 24 20:00:45 BST 2003  Tony Gale <gale@gtk.org>
10035
10036         * docs/faq/gtk-faq.sgml: Thread support updates
10037         from Owen. Various suggestions from Steve Chaplin.
10038
10039 2003-03-24  Mohammad DAMT  <mdamt@bisnisweb.com>
10040
10041         * po/id.po: Updated Indonesian translation
10042
10043 2003-06-21  Tor Lillqvist  <tml@iki.fi>
10044
10045         * gdk/win32/gdkevents-win32.c (gdk_event_translate): When
10046         emulating X11's automatic grab on button down, pass owner_events
10047         as FALSE. According to the XLib spec, automatic grabs use True for
10048         owner_events when OwnerGrabButtonMask is selected, and I don't see
10049         the X11 backend doing that. (#82497, #91619, #92835, #107322, #110271)
10050         (find_window_for_pointer_event): Improve debugging output.
10051
10052 2003-06-17  Tor Lillqvist  <tml@iki.fi>
10053
10054         * gtk-zip.sh.in (DLLDIR): Look for DLLs also in the bin
10055         subdirectory, where libtool 1.5 installs them.
10056
10057         * README.win32: Point to FSF's binary Win32 distribution of
10058         gettext-runtime.
10059
10060 2003-06-17  Matthias Clasen  <maclas@gmx.de>
10061
10062         * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
10063         macros to check for XML catalog contents and path, borrowed from
10064         gtk-doc. 
10065         * configure.in: New option --enable-man to enable regeneration of
10066         man pages from Docbook, if the necessary tools are found.
10067
10068 2003-06-15  Matthias Clasen  <maclas@gmx.de>
10069
10070         * gtk/gtkcalendar.c (gtk_calendar_class_init): 
10071         * gtk/gtknotebook.c (gtk_notebook_class_init): 
10072         * gtk/gtkalignment.c (gtk_alignment_class_init): 
10073         * gtk/gtkpaned.c (gtk_paned_class_init): Document new properties
10074         as 2.4 additions.
10075
10076         * gtk/gtkwidget.c (gtk_widget_class_init): Move inline signal docs 
10077         to the proper place, immediately before the g_signal_new() call.
10078
10079         * gtk/gtktextiter.h: Make the flags-nature of GtkTextSearchFlags 
10080         more obvious.  (#115122, Jeff Franks)
10081
10082 2003-06-12  Anders Carlsson  <andersca@codefactory.se>
10083
10084         * gtk/gtkwidget.c: (event_window_is_still_viewable):
10085         Special case pixmaps. (#114880)
10086         
10087 2003-06-12  Matthias Clasen  <maclas@gmx.de>
10088
10089         * gtk/gtkwidget.c: Document child-notify and drag-data-received
10090         signals. Owen, we need to figure out where the best place for
10091         these comments in the source is. I currently put them in front of
10092         the signals enum.
10093
10094 2003-06-11  Matthias Clasen  <maclas@gmx.de>
10095
10096         * gtk/gtkdnd.c (gtk_drag_check_threshold): s/threshhold/threshold/.
10097
10098 Thu Jan 12 01:01:19 2003  Kristian Rietveld  <kris@gtk.org>
10099
10100         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
10101         silly typo fix. s/seperator/separator/. This gets rid of the
10102         assert spam when using TreeView.
10103
10104 Tue Jun 10 11:23:48 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10105
10106         * modules/input/gtkimcontextxim.c (xim_instantiate_callback): New
10107         function for XIM instantiate callback.
10108         * modules/input/gtkimcontextxim.c (xim_info_try_im): New function
10109         where call to XOpenIM() or XRegisterIMInstantiateCallback() is
10110         actually made.
10111         * modules/input/gtkimcontextxim.c (xim_destroy_callback): New function
10112         for XIM's destroy callback.
10113         * modules/input/gtkimcontextxim.c (get_im): add a check if info->im 
10114         is set or not - if it's not set, call xim_info_try_im() to try to
10115         initiaize it.
10116         * modules/input/gtkimcontextxim.c (reinitialize_ic): reset
10117         filter_key_release flag of the context.
10118         * modules/input/gtkimcontextxim.c (get_ic_real): removed
10119         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): move
10120         code from the removed get_ic_real().
10121
10122         For XIM instantiation, destruction and re-instantiation. With
10123         this, Gtk+ apps will be able to connect or reconnect to the XIM,
10124         when it starts after the apps, or when the XIM gets lost and recover.
10125         (#113099, #107782).
10126
10127 Mon Jun 10 01:12:31 2003  Kristian Rietveld  <kris@gtk.org>
10128
10129         Merged from stable.
10130
10131         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_get_size):
10132         check if width is !null, not *width. Doh.
10133
10134 Tue Jun 10 01:09:33 2003  Kristian Rietveld  <kris@gtk.org>
10135
10136         Merged from stable.
10137
10138         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
10139         Remove the weird dx logic, get all cell_area and background_area
10140         calculations right. Not sure what was up with it before. (Fixes
10141         #110989, testcase from Vasco Alexandre da Silva Costa).
10142
10143 Tue Jun 10 00:58:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
10144
10145         * tests/testgtk.c: Make it compile with C89 compilers
10146
10147 2003-06-10  Matthias Clasen  <maclas@gmx.de>
10148
10149         * gtk/gtktextview.c (gtk_text_view_class_init): Install boolean
10150         property "overwrite".
10151         (gtk_text_view_[gs]et_property): Handle "overwrite".
10152         * gtk/gtktextview.[hc] (gtk_text_view_[gs]et_overwrite): Getter
10153         and setter for "overwrite" property.  (#110241, Jeroen Zwartepoorte)
10154
10155 2003-06-09  Matthias Clasen  <maclas@gmx.de>
10156
10157         * gtk/gtkpaned.c (gtk_paned_class_init): Install boolean child
10158         properties "resize" and "shrink".
10159         (gtk_paned_[gs]et_child_property): Implementations of 
10160         GtkContainer::[gs]et_child_property.  
10161         * tests/testgtk.c (toggle_resize, toggle_shrink): Use the new
10162         paned child properties instead of remove/add hacks.  (#114667, 
10163         Soeren Sandmann) 
10164
10165 Mon Jun  9 16:18:11 2003  Owen Taylor  <otaylor@redhat.com>
10166
10167         * gtk/gtknotebook.c (gtk_notebook_button_press): Back
10168         out event->window test - it wasn't needed because
10169         of the call to get_widget_coordinates().
10170
10171         * gtk/gtknotebook.c (gtk_notebook_button_press): Remove
10172         call to gtk_widget_grab_focus() when not clicking on
10173         any tabs. (Real fix for #114534)
10174
10175 Sun Jun  8 22:03:09 2003  Owen Taylor  <otaylor@redhat.com>
10176
10177         * tests/testdnd.c: Use application/x-rootwindow-drop for
10178         root window drops. (#108670, Alex Larsson)
10179
10180         * gdk/x11/gdkdnd-x11.c (gdk_drag_motion) gtk/gtkdnd.c (gtk_drag_drop): 
10181         Accept either application/x-rootwin-drop (what GTK+ has always used)
10182         or application/x-rootwindow-drop (what the XDND standard specifies).
10183
10184 Fri Jun  6 11:07:33 2003  Owen Taylor  <otaylor@redhat.com>
10185
10186         * gtk/gtkwidget.c (event_window_still_viewable): 
10187         Before delivering an event to a widget, check that
10188         (if relevant), the event's window is still viewable.
10189         (#105642, Dennis Björklund)
10190
10191         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): 
10192         NULL out private->parent, since after destruction
10193         it might not be valid any more.
10194
10195         * gdk/gdkwindow.c (gdk_window_is_viewable): Fix some
10196         accesses before g_return_val_if_fail(). Treat 
10197         DESTROYED windows as unmapped.
10198
10199 Thu Jun  5 09:28:03 2003  Owen Taylor  <otaylor@redhat.com>
10200
10201         * gtk/gtkentry.c: Recompute unconditionally in
10202         gtk_entry_style_set, and in a new gtk_label_screen_changed().
10203         Protect the guts of recompute_idle_func() with
10204         gtk_widget_has_screen(). (#114040, Morten Welinder) 
10205         Fix FALSE/0 confusion.
10206         
10207 Sun Jun  8 18:27:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
10208
10209         * gdk/gdkpixbuf-drawable.c (G8fromRGB565): swap G and B.
10210         Fixes (#114669)
10211
10212 Sun Jun  8 11:27:29 2003  Owen Taylor  <otaylor@redhat.com>
10213
10214         * gtk/gtkviewport.c (viewport_set_adjustment): Fix bug with 
10215         set_adjustment (viewport, NULL);
10216
10217 2003-06-07  Matthias Clasen  <maclas@gmx.de>
10218
10219         * gtk/gtkiconfactory.c (get_default_icons): 
10220         * gtk/stock-icons/stock_{undo,redo,undelete,revert}_rtl_{16,24}.png:
10221         * gtk/stock-icons/Makefile.am: Add rtl variants of undo, redo,
10222         undelete and revert.  (#96633)
10223         
10224 Fri Jun  6 16:25:44 2003  Owen Taylor  <otaylor@redhat.com>
10225
10226         * gtk/gtkviewport.c: Many fixes, along with extensive cleanups and 
10227         refactoring of code to reduce duplication; fixes include:
10228
10229         - gtk_viewport_realize(): Position the window correct from adjustment 
10230         values. (#110737, Michael Natterer)
10231
10232         - Remove some division-by-zero checks in places where there is no 
10233         longer division. (#110737)
10234
10235         - gtk_viewport_class_init: Make the hadjustment/vadjustment properties 
10236         G_PARAM_CONSTRUCT, so that there will always be adjustments, even 
10237         if gtk_viewport_new isn't used (#101135, Thomas Leonard).
10238
10239         - Switch over to encapsulated lazy-creation for hadjustment/
10240         vadjustment; even with the CONSTRUCT property, we need this after
10241         destroy.
10242
10243         - When updating the adjustment, immediate set their values to
10244         match the the current range of the viewport, and update the 
10245         viewport position to match the value of the new adjustments. 
10246         (Part of #1165)
10247
10248 2003-06-06  Tor Lillqvist  <tml@iki.fi>
10249
10250         * gdk/win32/gdkprivate-win32.h: Fix typo.
10251
10252         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Set
10253         graphics_exposures and subwindow_mode, too, even if they aren't
10254         currently used.
10255
10256 Fri Jun  6 23:38:23 2003  Kristian Rietveld  <kris@gtk.org>
10257
10258         Merged from stable.
10259
10260         * gtk/gtktreeview.c (do_expand_collapse),
10261         (expand_collapse_timeout), (cancel_arrow_animation): made
10262         expand_collapse_timeout a wrapper with locks around     
10263         do_expand_collapse, made cancel_arrow_animation use
10264         do_expand_collapse. Fixes threadlock. (Fixes #111286, patch from
10265         Peter Bloomfield).
10266
10267 Fri Jun  6 11:05:45 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10268
10269         * modules/input/gtkimcontextxim.h (struct _GtkIMContextXIM):
10270         * modules/input/gtkimcontextxim.c (preedit_start_callback,
10271         preedit_draw_callback, preedit_done_callback): Add a 'finalizing' flag 
10272         to keep preedit-[start,changed,end] signals from being called during
10273         finalization (#111861).
10274
10275 2003-06-05  Noah Levitt  <nlevitt@columbia.edu>
10276
10277         * gtk/gtknotebook.c (gtk_notebook_button_press): Ignore button
10278         presses that are not on the tab (#114534).
10279
10280 Thu Jun  5 20:35:40 2003  Owen Taylor  <otaylor@redhat.com>
10281
10282         * demos/Makefile.am: Conditionalize dependencies for
10283         gdk-pixbuf-csource on cross-compilation (#112391, J. Ali Harlow). 
10284         Buildtest-inline-pixbufs.h in srcdir. Don't try to build 
10285         test-inline-pixbufs.h if we don't have libpng.
10286
10287         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): 
10288         Add a dependency on gdk-pixbuf.loaders when not 
10289         cross-compiling, remove the dependency on gdk-pixbuf-csource
10290         when not cross compiling.
10291
10292 Thu Jun  5 20:12:51 2003  Owen Taylor  <otaylor@redhat.com>
10293
10294         * gtk/gtkwindow.c (gtk_window_get_default_size): Handle
10295         gtk_window_get_geometry_info() returning NULL.
10296         (#107311, John Finlay)
10297
10298 Thu Jun  5 19:24:33 2003  Owen Taylor  <otaylor@redhat.com>
10299
10300         * gtk/gtktoolbar.c (gtk_toolbar_expose): Subtract off
10301         twice the border width from the width/height, not
10302         1x the border width. (#106336, Rodney Dawes)
10303
10304 Thu Jun  5 15:33:38 2003  Owen Taylor  <otaylor@redhat.com>
10305  
10306         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
10307         If at the end of the buffer, move to the end iter -
10308         parallels behavior of move_iter_to_previous_line.
10309         (#81960, Padraig O'Briain)
10310  
10311 Thu Jun  5 16:12:54 2003  Owen Taylor  <otaylor@redhat.com>
10312
10313         #80023, Yao Zhang, TOKUNAGA Hiroyuki
10314
10315         * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations):
10316         Account for the preedit cursor offset if the iter passed
10317         in is at the same place as the insertion cursor.
10318
10319         * gtk/gtktextview.c (gtk_text_view_get_cursor_location):
10320         Encapsulate getting the insertion cursor location.
10321
10322         * gtk/gtktextview.c (gtk_text_view_update_im_spot_location):
10323         Pass the real y/height to the IM context. Take 
10324         text_view->x/yoffset into account.
10325
10326 Thu Jun  5 16:52:54 2003  Owen Taylor  <otaylor@redhat.com>
10327
10328         * gtk/gtktextview.[ch]: Never scroll on focus in
10329         (#81893, Patch from Paolo Maggi)
10330
10331         * gtk/gtktextview.c (gtk_text_view_scroll_[h]pages): 
10332         Scroll to the current cursor location before handling
10333         the action, in case the user just tabbed in
10334         and the cursor is offscreen.
10335
10336 Thu Jun  5 17:20:40 2003  Owen Taylor  <otaylor@redhat.com>
10337          
10338          #107883, Gustavo Giráldez
10339
10340         * gtk/gtktextlayout.c (gtk_text_layout_emit_changed):
10341         Split out the case where we know we changed, and 
10342         already dealt with our cached line being invalidated
10343         from external calls to gtk_text_layout_changed.
10344
10345         * gtk/gtktextlayout.c (gtk_text_layout_changed):
10346         Check if the invalidate yrange intersects our
10347         cached line, and clear it if necessary.
10348
10349 2003-06-05  Tor Lillqvist  <tml@iki.fi>
10350
10351         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle global
10352         filters.
10353
10354 2003-06-05  Matthias Clasen  <maclas@gmx.de>
10355
10356         * gtk/gtktextview.c: Fix for #84668, reported by Torbjrn Andersson:
10357         (gtk_text_view_grab_notify): 
10358         (gtk_text_view_state_changed): Implement these
10359         to unobscure cursor when grab shadowed or insensitised.
10360         (gtk_text_view_unobscure_mouse_cursor): New function to undo the
10361         effect of gtk_text_view_obscure_mouse_cursor(). Code lifted from
10362         gtk_text_view_motion_event().
10363         (gtk_text_view_motion_event): Use gtk_text_view_obscure_mouse_cursor().
10364
10365         * gtk/gtktextview.c (select_all): New keybinding signal for
10366         (un)selecting the whole buffer. Bound to C-a/C-\.  (see #107889)
10367
10368         * gtk/gtkcalendar.c (calendar_timer): 
10369         (stop_spinning): Replace deprecated gtk_timeout_* functions by
10370         their GLib counterparts.  (#114429)
10371
10372         * gtk/gtktreestore.c (gtk_tree_store_new): 
10373         * gtk/gtkliststore.c (gtk_list_store_new): Document restriction on 
10374         types.
10375
10376 Wed Jun  4 19:42:17 2003  Owen Taylor  <otaylor@redhat.com>
10377
10378         * gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
10379         When drawing underlines, join up adjacent runs
10380         where possible, so we don't get changes in 
10381         shaper/font/etc. breaking underlines. (#103662,
10382         Kang Jeong-Hee)
10383
10384 Wed Jun  4 19:22:58 2003  Jonathan Blandford  <jrb@redhat.com>
10385
10386         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_level_find_insert):
10387         Slightly modified patch from Owen Taylor <otaylor@redhat.com> to
10388         improve the speed of inserting rows into an already sorted list,
10389         #109292
10390
10391 Wed Jun  4 19:24:28 2003  Owen Taylor  <otaylor@redhat.com>
10392
10393         * gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Keep
10394         track of when we have a clip mask set for the GC,
10395         and when we unset it, or switch to a clip region,
10396         immediately call XSetClipMask (..., None) to avoid
10397         Xlib caching stale data. (#111806)
10398
10399         * gtk/gtktextdisplay.c: Don't set a clip mask
10400         when drawing alpha pixmaps; it isn't necessary any more.
10401         (#111806)
10402
10403 Wed Jun  4 18:27:44 2003  Owen Taylor  <otaylor@redhat.com>
10404
10405         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator): 
10406         gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): 
10407         Use GTK_WIDGET_IS_SENSITIVE(), not GTK_WIDGET_SENSITIVE
10408         (#92548, Tim Evans)
10409
10410         * gtk/gtkcheckmenuitem.c (gtk_real_check_menu_item_draw_indicator)
10411         gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator): If
10412         Use state_type = STATE_INSENSITIVE for insensitive menu items.
10413
10414 Wed Jun  4 21:25:35 2003  Kristian Rietveld  <kris@gtk.org>
10415
10416         Merged from stable.
10417
10418         * gtk/gtktreeview.c (gtk_tree_view_drag_begin): use a silent
10419         assert for get_info. (reported by Michael Natterer),
10420         (gtk_tree_view_expand_all_emission_helper),
10421         (gtk_tree_view_expand_all_helper): emit row_expanded for all
10422         expanded rows during an _expand_all operation. (Fixes #111280,
10423         reported by Benjamin Bayart).
10424
10425 Tue Jun  3 18:32:30 2003  Owen Taylor  <otaylor@redhat.com>
10426
10427         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't
10428         respond to pings on a root window; prevents infinite
10429         loops if we are selecting for SubstructureNotify on the
10430         root window. (#111945, Sergey V. Udaltsov)
10431
10432 Tue Jun  3 17:39:16 2003  Owen Taylor  <otaylor@redhat.com>
10433
10434         #71597, reported by Morten Welinder
10435
10436         * gdk/gdkpixbuf-drawable.c (rgb888amsb): Fix and simplify
10437         (Patch from Christian Petig)
10438
10439         * gdk/gdkpixbuf-drawable.c (rgb{555,565}{a,}{msb,lsb}):
10440         Major rewrite of 555 and 565 conversion routines:
10441
10442         - Move all the bit shifting into a small block of macros,
10443           eliminating much duplication of complicated arithmetic.
10444         - Get rid of 2-pixels at a time code, which was buggy,
10445           hard to maintain, caused unaligned accesses, and
10446           probably didn't actually perform any better.
10447         - Simplify cases where different data types were
10448           used for the little and big endian cases, use
10449           GUINT16_SWAP_LE_BE() where appropriate.
10450                 
10451 Tue Jun  3 15:05:47 2003  Owen Taylor  <otaylor@redhat.com>
10452
10453         * gdk/x11/gdkdrawable-x11.c (convert_to_format): Remove
10454         bad optimization for src_rowstride == dest_stride.
10455         (Didn't consider the case where we were copying only
10456         partial widths of a wider source buffer)
10457         (#113034, reported by Hans Petter Jansson)
10458
10459 2003-06-03  Michael Natterer  <mitch@gimp.org>
10460
10461         * gdk/x11/gdkinput-x11.c (_gdk_input_common_find_events):
10462         reenabled button_release events for xinput devices. (#113948)
10463
10464 2003-06-03  Christian Rose  <menthos@menthos.com>
10465
10466         * configure.in: Added "li" to ALL_LINGUAS.
10467
10468 Mon Jun  2 18:58:54 2003  Owen Taylor  <otaylor@redhat.com>
10469
10470         * gtk/gtknotebook.c (gtk_notebook_size_allocate): Don't
10471         map the event window if the notebook isn't mapped. (#113980,
10472         Richard Reich)
10473
10474 2003-06-02  Sven Neumann  <sven@gimp.org>
10475
10476         * gtk/gtkprogress.c (gtk_progress_changed): added a missing cast.
10477
10478         * gdk/gdkrgb.c (gdk_rgb_try_colormap): removed an unused variable.
10479
10480 2003-06-01  Matthias Clasen  <maclas@gmx.de>
10481
10482         * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Add 
10483         Since: 2.4 to the docs.
10484
10485         * gtk/gtkwindow.c (gtk_window_parse_geometry): Add some hints and
10486         an example to the docs.  (#98427)
10487
10488 2003-05-30  Murray Cumming  <murrayc@usa.net>
10489
10490         * gtk/gtkalignment.[h|c]: Added 4-sided padding as properties with
10491         gtk_alignment_get_padding() and gtk_aligment_set_padding(). This
10492         uses the new private data system - see g_type_class_add_private() in
10493         gtk_alignment_class_init() and the use of GTK_ALIGNMENT_GET_PRIVATE().
10494
10495 2003-05-30  Matthias Clasen  <maclas@gmx.de>
10496         
10497         * gtk/gtknotebook.c: Changed guint to GtkNotebookArrow in the
10498         signature of gtk_notebook_draw_arrow() for Solaris builds to go
10499         through.  (#114043, Anand Subramanian)
10500
10501 Thu May 29 18:30:35 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10502
10503         * modules/input/imipa.c: 
10504         use GETTEXT_PACKAGE to get a translation for "ipa"(#113850).
10505
10506 Thu May 29 18:08:01 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10507
10508         * gtk/gtkimmodule.c (_gtk_im_module_list):
10509         use GETTEXT_PACKAGE to get a translation for "Default"(#113850).
10510
10511 Thu May 29 09:34:05 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10512
10513         * gtk/gtkimmodule.c (_gtk_im_module_list): make "Default"
10514         label of default input method localizable.
10515         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems): 
10516         use translations of input method context names
10517         * modules/input/imam-et.c, modules/input/imcyrillic-translit.c,
10518           modules/input/iminuktitut.c, modules/input/imthai-broken.c,
10519           modules/input/imti-er.c, modules/input/imti-et.c
10520           modules/input/imviqr.c, modules/input/imxim.c
10521         use GETTEXT_PACKAGE instead of "gtk+" for domain name.
10522         (#113850).
10523
10524 Thu May 29 18:23:01 2003  Kristian Rietveld  <kris@gtk.org>
10525
10526         Merged from stable.
10527
10528         * gtk/gtktreeview.c (gtk_tree_view_button_press): put the focus
10529         grab separate, the user might clear the tree in the focus-in
10530         callback. (Fixes #113086, testcase from Felipe Heidrich).
10531
10532 Thu May 29 18:06:26 2003  Kristian Rietveld  <kris@gtk.org>
10533
10534         Merged from stable.
10535
10536         * gtk/gtktreeview.c (gtk_tree_model_set_model): reset a bunch
10537         of row reference when we unset the model. Also reset
10538         dy and top_row_dy. (Fixes #109289, patch from Owen Taylor).
10539
10540 Thu May 29 17:12:19 2003  Kristian Rietveld  <kris@gtk.org>
10541
10542         Merged from stable.
10543
10544         * gtk/gtktreeview.c (gtk_tree_view_set_cursor_on_cell): cancel
10545         the current editing, if it exists. (Fixes #108956, reported by
10546         Michael Natterer).
10547
10548 Thu May 29 17:06:09 2003  Kristian Rietveld  <kris@gtk.org>
10549
10550         Merged from stable.
10551
10552         * gtk/gtktreeview.c (check_selection_helper): new function,
10553         (gtk_tree_view_row_deleted): traverse the tree from the
10554         deleted node to see whether the selection changed, instead of
10555         just checking this node. (Fixes #107400, reported by 'Duncan').
10556
10557 Thu May 29 16:31:34 2003  Kristian Rietveld  <kris@gtk.org>
10558
10559         Merged from stable.
10560
10561         * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
10562         (gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
10563         instead of _maybe_begin_dragging_row, so the icon can be
10564         overridden by apps. (Fixes #104374, patch from Daniel Elstner).
10565
10566 Thu May 29 16:14:04 2003  Kristian Rietveld  <kris@gtk.org>
10567
10568         Merged from stable.
10569
10570         * gtk/gtktreeview.c (gtk_tree_view_start_editing): correct
10571         cell_area x/width for the expander if needed. (Fixes #101748,
10572         reported by Dave Cook and Mariano Suarez-Alvarez).
10573
10574 Thu May 29 16:01:38 2003  Kristian Rietveld  <kris@gtk.org>
10575
10576         Merged from stable.
10577
10578         * gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): check
10579         if tree/node are still the same after _internal_select_node.
10580         (Fixes #92256, reported by edscott).
10581
10582 Thu May 29 15:38:30 2003  Kristian Rietveld  <kris@gtk.org>
10583
10584         Fixes #75745, reported by Richard Hult. Merged from stable.
10585
10586         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): set/unset
10587         GTK_CELL_RENDERER_FOCUSED flag whether the current node is the
10588         cursor or not.
10589
10590         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
10591         if we are rendering a cursor row, and the cell the be
10592         processed has focus, then set the GTK_CELL_RENDERER_FOCUSED
10593         flag (else we unset it).
10594
10595 2003-05-27  Matthias Clasen  <maclas@gmx.de>
10596
10597         * gtk/gtkwindow-decorate.c: 
10598         * gtk/gtktreeprivate.h: 
10599         * gtk/gtkdnd.c: 
10600         * gdk/win32/gdkwindow-win32.h: 
10601         * gdk/linux-fb/gdkprivate-fb.h: 
10602         * gdk/linux-fb/gdkkeyboard-fb.c: Remove dubious bitfields of
10603         unspecified signedness.  (#112919, Morten Welinder)
10604
10605         * gtk/queryimmodules.c (escape_string): 
10606         * gtk/gtktextbtree.c (_gtk_text_btree_get_text): 
10607         * gtk/gtksettings.c (_gtk_settings_parse_convert): 
10608         * gtk/gtkrc.c (gtk_rc_parse_assignment): 
10609         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key): 
10610         * gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Replace all 
10611         occurances of g_string_new ("") by g_string_new (NULL). (#106975,
10612         Morten Welinder) 
10613
10614 2003-05-27  Tor Lillqvist  <tml@iki.fi>
10615
10616         * gtk-zip.sh.in: Only include the Default and Emacs themes' gtkrc
10617         files. Include share/gtk-doc/{gdk-pixbuf,gdk,gtk}.
10618
10619         * gdk/Makefile.am: libgdk-win32-2.0.la depends on
10620         win32/libgdk-win32.la.
10621
10622         * gtk/gtk.def: Add gtk_tree_view_column_cell_get_position.
10623
10624 Sat May 24 22:19:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
10625
10626         * gtk/gtkscrollbar.c (gtk_scrollbar_class_init): Make the minimum
10627         scrollbar slider length 21 instead of 7.
10628
10629 2003-05-23  Matthias Clasen  <maclas@gmx.de>
10630
10631         * gtk/gtknotebook.c: Add support for up to four scroll
10632         arrows. Control their display by new style properties
10633         "has_forward_stepper", "has_backward_stepper",
10634         "has_secondary_forward_stepper" and
10635         has_secondary_backward_stepper". (#110540)
10636
10637         * gtk/gtknotebook.h (struct _GtkNotebook): Make in_child and
10638         click_child three bits wide, add
10639         has_{before,after}_{previous,next} fields.
10640
10641         * gtk/gtkcolorsel.c (gtk_color_selection_init): Update color on
10642         focus out of hex_entry.  (#112665)
10643         (hex_focus_out): New signal handler for focus out of hex entry.
10644
10645 Wed May 21 19:01:06 2003  Owen Taylor  <otaylor@redhat.com>
10646
10647         * gtk/gtkwidget.c (gtk_widget_realize): 
10648         g_return_if_fail() if
10649         GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget).
10650         (#107872, Christian Reis)
10651
10652 2003-05-22  Matthias Clasen  <maclas@gmx.de>
10653
10654         * gtk/gtkfilesel.c (gtk_file_selection_create_dir): 
10655         (gtk_file_selection_rename_file): Some keynav improvements for the
10656         "Rename File" and "Create Directory" subdialogs: Enter in entry
10657         activates default, default is "Create"/"Rename", Escape cancels
10658         dialog.  (#113110)
10659         (gtk_file_selection_set_filename): Add a hint about opening 
10660         directories.  (#113175)
10661
10662 2003-05-22  Matthias Clasen  <maclas@gmx.de>
10663
10664         * gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_update_xft_clip):
10665         Use XftDrawSetClipRectangles(), since we're inside HAVE_XFT2
10666         anyway.  (#113476)
10667
10668 Wed May 21 15:53:14 2003  Owen Taylor  <otaylor@redhat.com>
10669
10670         * gtk/gtkprogress.c (gtk_progress_set_format_string,
10671         gtk_progress_set_show_text): Always queue a resize ... 
10672         we rely on the size-allocate to do the update, plus a 
10673         different format can actually change our size requisition.
10674         (#111052, Vasco Alexandre da Silva Costa)
10675
10676         * gtk/gtkprogress.c (gtk_progress_changed): Track
10677         ::changed as well as ::value_changed, and queue a
10678         resize on ::changed when necessary.
10679
10680         * gtk/gtkprogress.c (gtk_progress_set_adjustment): 
10681         Call gtk_progress_changed() here to update or 
10682         queue a resize as necessary.
10683
10684 Wed May 21 14:06:13 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10685
10686         * gtk/gtkimcontextsimple.c: added composing rules of
10687         Greek accented letters, patch by Vasilis Vasaitis (#107507)
10688
10689 Wed May 21 13:19:05 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10690
10691         * gtk/gtkenums.h (enum GtkIMPreeditStyle, GtkIMStatusStyle): 
10692         * modules/input/gtkimcontextxim.c (preedit_style_change, status_style_change):
10693         gtk settings for XIMPreeditNone and XIMStatusNone. (#105909)
10694
10695 Wed May 21 12:10:25 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10696
10697         * gtk/gtkimcontextsimple.c: 
10698         code that can check the compose table for ascending order,
10699         by Vasilis Vasaitis (#104862).
10700
10701 Wed May 21 12:52:01 2003  Owen Taylor  <otaylor@redhat.com>
10702
10703         * gtk/gtkkeyhash.[ch] (_gtk_key_hash_looku): We need 
10704         to pass the unmasked state to gdk_keymap_translate_keyboard_state() 
10705         to handle the case where a modifier not in the mask
10706         (like Num_Lock) changes the key value, so replace
10707         the masked state with a state/mask pair. (#106913,
10708         Olivier Ripoll)
10709
10710         * gtk/gtkwindow.c gtk/gtkbinding.c: Update to pass
10711         in state/mask pair to _gtk_key_hash_lookup()
10712
10713 Tue May 20 21:58:00 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10714
10715         * modules/input/gtkimcontextxim.c (xim_info_display_closed):
10716         fix a memory leak, free input context list (#113259).
10717
10718 2003-05-21  Matthias Clasen  <maclas@gmx.de>
10719
10720         * configure.in (all_loaders): Add pcx.
10721
10722         * gtk/gtkcalendar.c: Make calendar controls spin.  (#112540)
10723
10724 Tue May 20 17:27:24 2003  Owen Taylor  <otaylor@redhat.com>
10725
10726         * gtk/gtkimmodule.c (gtk_im_module_init): Silently
10727         accept a missing gtk.immodules file, some people
10728         want to run without one. (#112406, patch from
10729         Arnaud Charlet)
10730
10731 Tue May 20 17:05:31 2003  Owen Taylor  <otaylor@redhat.com>
10732
10733         * gtk/gtkwindow.c (gtk_window_compute_hints): Fix 
10734         height/width confusion (#113370, Xan Lopez)
10735
10736 Tue May 20 15:48:45 2003  Owen Taylor  <otaylor@redhat.com>
10737
10738         * gdk/x11/gdkdnd-x11.c gdk/x11/gdkwindow-x11.c: Comprehensively
10739         zero all unused parts of client messages (Mainly Motif DND
10740         and EWMH). Also, fix a couple places where we were putting
10741         contents into Motif DND messages that didn't belong.
10742         (#113361, EWMH problem reported by Lubos Lunak)
10743
10744         * gtk/gtkselection.c (_gtk_selection_request): Handle the
10745         case where the property type for the multiple atoms is
10746         ATOM_PAIR by doing the conversions ourselve. This is
10747         needed for Xt inter-operation.
10748
10749 2003-05-19 Arafat Medini <lumina@silverpen.de>
10750
10751         * configure.in: Added ar to ALL_LINGUAS
10752
10753 2003-05-19  Matthias Clasen  <maclas@gmx.de>
10754
10755         * gtk/gtksettings.c (gtk_rc_property_parse_border,
10756         gtk_rc_property_parse_color, gtk_rc_property_parse_enum,
10757         gtk_rc_property_parse_flags, gtk_rc_property_parse_requisition):
10758         Add docs.
10759
10760         * gtk/gtkwidget.c (gtk_widget_class_install_style_property, 
10761         gtk_widget_class_install_style_property_parser): Add docs. 
10762
10763 2003-05-17  Matthias Clasen  <maclas@gmx.de>
10764
10765         * tests/prop-editor.c: Add navigation for object properties, so
10766         that you can easily edit the properties of the parent of a widget.
10767         (#113152)
10768
10769 Wed May 14 17:45:32 2003  Owen Taylor  <otaylor@redhat.com>
10770
10771         * gdk/gdkkeysyms.h gdk/gdkkeynames.c gdk/gdkkeyuni.c:
10772         Patch from Vasilis Vasaitis to fix Greek_IOTAdi[a]eresis 
10773         inconsistency and leave the old name as an aliass (#104873)
10774
10775 Wed May 14 16:40:09 2003  Owen Taylor  <otaylor@redhat.com>
10776
10777         * gtk/gtkframe.c (gtk_frame_set_label_widget): Patch
10778         from Charles Schmidt to add missing notify (#108305)
10779
10780 Wed May 14 16:00:51 2003  Owen Taylor  <otaylor@redhat.com>
10781  
10782         * gdk/x11/gdkgc-x11.c: Remove unecessary g_return_if_fail().
10783         (#105500, Morten Welinder.)
10784  
10785 Wed May 14 09:05:11 2003   Hidetoshi Tajima <hidetoshi.tajima@sun.com>
10786
10787         * modules/input/gtkimcontextxim.c (get_ic_real): use type of guint32
10788         instead of gumake for XNFilterEvents event mask(#110493).
10789
10790 2003-05-11  Anders Carlsson  <andersca@codefactory.se>
10791
10792         * gtk/gtkdnd.c (gtk_drag_source_unset_icon): Don't cast a gchar to
10793         a GObject. (#112762)
10794
10795 2003-05-08  Sven Neumann  <sven@gimp.org>
10796
10797         * configure.in: set the HAVE_X11R6 automake conditional to false
10798         if not compiling for X11.
10799
10800 2003-05-08  Matthias Clasen  <maclas@gmx.de>
10801
10802         * gtk/gtkcalendar.[ch] (gtk_calendar_set_display_options): 
10803         (gtk_calendar_get_display_options): New functions.
10804         (gtk_calendar_display_options): Depreate.  (#64567)
10805         (gtk_calendar_class_init): Add boolean properties for the display
10806         options.  (#50949)
10807
10808 Tue May  6 16:50:52 2003  Owen Taylor  <otaylor@redhat.com>
10809
10810         Patch from James Henstridge to update to automake-1.7
10811         (#109542)
10812  
10813         * autogen.sh: update to call newer tools.
10814  
10815         * configure.in: various updates, to use M4 macros to put
10816         variables that change each release at the top.
10817         Use AC_HELP_STRING to format help strings.
10818         Use AC_CONFIG_COMMANDS to generate gdkconfig.h.
10819  
10820         * Makefile.am: require Automake 1.7.  Remove gdk-2.0.pc and
10821         gtk+-2.0.pc on uninstall.  Pass --enable-gtk-doc to configure
10822         during distcheck.
10823  
10824         * docs/reference/*/Makefile.am: simplify to use the gtk-doc.make
10825         makefile fragment.
10826  
10827         * */Makefile.am: don't use STRIP_BEGIN/STRIP_END.
10828         Use BUILT_SOURCES where appropriate.
10829         Build generated files in builddir rather than srcdir.
10830         Fix uninstall and distclean targets to satisfy distcheck.
10831
10832         ===
10833
10834         * gdk/*/Makefile.am: Remove the hacks to get gdkenumtypes.h
10835         built first, since we are now using BUILT_SOURCES.
10836
10837         * gdk/Makefile.am: Remove an outdated comment about gdk_headers.
10838
10839         * demos/gtk-demo/Makefile.am: Fix srcdir != buildd problem
10840         with geninclude.pl.
10841
10842         * configure.in: Update versions to 2.3.0.
10843  
10844 2003-05-06  Tor Lillqvist  <tml@iki.fi>
10845
10846         Fix for #110165 (thanks to Arnaud Charlet):
10847         
10848         * gdk/win32/gdkevents-win32.c (build_keypress_event,
10849         build_keyrelease_event): For unshifted control char, use
10850         lowercase ASCII keyval.
10851         (gdk_event_translate): Similarily, when handling WM_SYSKEYDOWN and
10852         UP (i.e. Alt-something), if it's an unshifted ASCII letter, use
10853         lowercase keyval. Use build_key_event_state() here, too, instead
10854         of minor code duplication.
10855
10856 2003-05-06  Matthias Clasen  <maclas@gmx.de>
10857
10858         * tests/testmultidisplay.c: Don't include strings.h, it's not
10859         needed anymore.  (#112388)
10860
10861         * examples/menu/itemfactory.c: 
10862         * docs/tutorial/gtk-tut.sgml: Remove an unneeded include from the
10863         itemfactory example.
10864
10865 2003-05-05  Matthias Clasen  <maclas@gmx.de>
10866
10867         * gtk/gtkdnd.c (gtk_drag_source_set_icon_stock):  Actually set the
10868         icon type to the stock icon type.  (#111735, Dave Bordoley)
10869
10870 2003-05-05  Christian Rose  <menthos@menthos.com>
10871
10872         * configure.in: Added sr and sr@Latn to ALL_LINGUAS.
10873         Removed sp, it's replaced by sr@Latn.
10874
10875 Wed Apr 30 22:09:11 BST 2003  Tony Gale <gale@gtk.org>
10876
10877         * docs/faq/gtk-faq.sgml: GTK+ 2.x updates, mainly from
10878         Gonzalo Odiard
10879
10880 Mon Apr 28 17:54:39 2003  Jonathan Blandford  <jrb@redhat.com>
10881
10882         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy the search
10883         data iff the destroy func isn't NULL.
10884
10885 Thu Apr 24 19:12:05 2003  Owen Taylor  <otaylor@redhat.com>
10886
10887         * autogen.sh (have_libtool): Accept libtool-1.5. (#111480)
10888
10889 2003-04-23  Abel Cheung  <maddog@linux.org.hk>
10890
10891         * configure.in: Added "am" "mk" "ta" to ALL_LINGUAS.
10892
10893 Tue Apr 22 15:33:51 2003  Owen Taylor  <otaylor@redhat.com>
10894
10895         * gtk/gtkfilesel.c (open_new_dir): Fix capitalization
10896         of UTF-8. (#106419, Roozbeh Pournader)
10897
10898 Tue Apr 22 15:17:25 2003  Owen Taylor  <otaylor@redhat.com>
10899
10900         * configure.in: Only check for XFT2 if we found pango-xft
10901         (#105692, Jon Nall)
10902
10903 Tue Apr 22 15:12:19 2003  Owen Taylor  <otaylor@redhat.com>
10904
10905         * gtk/gtkwidget.c (gtk_widget_class_init): Fix PROP_HAS_FOCUS/
10906         PROP_IS_FOCUS confusion. (#111333, Jody Goldberg)
10907
10908 Tue Apr 22 19:43:01 BST 2003  Tony Gale <gale@gtk.org>
10909
10910         * docs/faq/gtk-faq.sgml: add note about version converage.
10911
10912 Mon Apr 21 19:02:16 2003  Owen Taylor  <otaylor@redhat.com>
10913
10914         * gtk/gtksocket.c (activate_key): Fix prototype for
10915         activate_key. (#108927, Jason D. Hildebrand)
10916
10917 Mon Apr 21 18:42:51 2003  Owen Taylor  <otaylor@redhat.com>
10918
10919         * demos/gtk-demo/Makefile.am demos/gtk-demo/geninclude.pl:
10920         Remove geninclude.pl from CVS and don't dist it either,
10921         it is generated. (#108970, Rich Kinder)
10922
10923 Mon Apr 21 18:35:48 2003  Owen Taylor  <otaylor@redhat.com>
10924
10925         * gtk/gtkobject.h: Remove a couple of obsolete comments,
10926         fix another comment. (#109737, Britton Kerin)
10927
10928 Mon Apr 21 18:29:03 2003  Owen Taylor  <otaylor@redhat.com>
10929
10930         * gtk/gtkiconfactory.c (gtk_icon_set_unref): Free
10931         the source list, not just it's contents (Patch
10932         from Charles Kerr, #108243)
10933
10934 Mon Apr 21 18:13:46 2003  Owen Taylor  <otaylor@redhat.com>
10935
10936         * gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Patch
10937         from Alex Larsson fixing problem with restacking during
10938         DND. (#108671)
10939
10940 Mon Apr 21 15:07:29 2003  Owen Taylor  <otaylor@redhat.com>
10941
10942         * gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard/pointer_ungrab):
10943         Calling XFlush() after ungrabbing, to avoid problems if
10944         the app subsequently blocks on a long-running operation.
10945         (#106520, reported by Rajkumar Siva)
10946
10947 Fri Apr 18 17:42:45 2003  Owen Taylor  <otaylor@redhat.com>
10948
10949         * gdk/x11/gdkwindow-x11.c (set_initial_hints): Add
10950         SKIP_TASKBAR/SKIP_PAGER to set of properties we
10951         might set on map. (#110019, problem reported
10952         by Loban Rahman)
10953
10954 Fri Apr 18 17:14:33 2003  Owen Taylor  <otaylor@redhat.com>
10955
10956         * gdk/gdkevents.c (gdk_event_copy): Fix for the
10957         case when gdk_event_copy() is called on a non-allocated
10958         event. (#109716, reported by Rich Burridge)
10959
10960 Fri Apr 18 16:57:44 2003  Owen Taylor  <otaylor@redhat.com>
10961
10962         * gdk/x11/gdkdrawable-x11.c (draw_with_images/pixmaps):
10963         Fix pointer arithmetic on 'void *'. (#108322)
10964
10965 Fri Apr 18 16:31:49 2003  Owen Taylor  <otaylor@redhat.com>
10966
10967         * configure.in gdk/x11/gdkdisplay-x11.c modules/input/Makefile.am:
10968         Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and
10969         use of XAddConnectionWatch. Remove --enable-xim config option.
10970         Should fix building on X11R6 (#110523, Albert Chin)
10971
10972 Fri Apr 18 15:56:46 2003  Owen Taylor  <otaylor@redhat.com>
10973
10974         * gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkdrawable-x11.[ch]:
10975         Patch from Morten Welinder to catch Sun servers with a 
10976         broken implementation of the RENDER extension. (#108309)
10977
10978 Fri Apr 18 15:30:38 2003  Owen Taylor  <otaylor@redhat.com>
10979
10980         * gdk/x11/gdkwindow-x11.c (set_text_property): Use
10981         gdk_free_compound_text(), not g_free(). (#107643,
10982         Michael Zucchi)
10983
10984 Fri Apr 18 15:11:50 2003  Owen Taylor  <otaylor@redhat.com>
10985
10986         * gdk/x11/gdkdisplay-x11.c (_gdk_display_x11_get_type)
10987         gdk/x11/gdkscreen-x11.c (_gdk_screen_x11_get_type): Fix
10988         wrong use of base_finalize. (#105126, Sven Neumann)
10989
10990 Fri Apr 18 15:06:00 2003  Owen Taylor  <otaylor@redhat.com>
10991
10992         * gdk/gdkwindow.c (gdk_window_constrain_size): Fix
10993         '/' vs. '*' problem in aspect ration computations. (#108237)
10994
10995 Fri Apr 18 14:15:09 2003  Owen Taylor  <otaylor@redhat.com>
10996
10997         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): 
10998         * gdk/x11/gdkevents-x11.c (gdk_event_translate): You
10999         don't get a XkbMapNotify event if you get a XkbNewKeyboardNotify 
11000         event, so select for both. (#108406, Egmont Koblinger)
11001
11002 Thu Apr 17 09:57:44 2003  Jonathan Blandford  <jrb@gnome.org>
11003
11004         * gtk/gtktreeview.c (validate_visible_area): remove infinite loop
11005         caused by not clearing the scroll_to_path.
11006
11007 2003-04-16  Matthias Clasen  <maclas@gmx.de>
11008
11009         * gtk/gtkstyle.c: Doc additions and fixes.
11010
11011         * gtk/gtktreeviewcolumn.c
11012         (_gtk_tree_view_column_get_neighbor_sizes): Doc fixes.
11013
11014 2003-04-14  Michael Natterer  <mitch@gimp.org>
11015
11016         * gtk/gtkliststore.c (gtk_list_store_move): added checks to ensure
11017         that the iter is not reordered to its own position. Prevents model
11018         corruption for the case that the store contains only a single item
11019         (fixes bug #108387).
11020
11021         Unrelated:
11022
11023         * gtk/gtkliststore.c (gtk_list_store_insert): g_list_alloc() the
11024         new list element later so we don't leak it if we decide to return
11025         early.
11026
11027         * gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node):
11028         set selection->tree_view->priv->anchor to NULL after freeing it.
11029
11030 2003-04-13  Matthias Clasen  <maclas@gmx.de>
11031
11032         * gtk/gtktreeviewcolumn.c
11033         (gtk_tree_view_column_cell_get_position): Document. 
11034
11035         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): 
11036         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_[sg]et_expand): 
11037         * gtk/gtkbutton.c (gtk_button_[sg]et_focus_on_click): Document
11038         these as 2.4 additions.
11039
11040 2003-04-09  Matthias Clasen  <maclas@gmx.de>
11041
11042         * INSTALL.in: Fix the real thing.
11043
11044         * INSTALL: Typo fix.
11045
11046 Mon Apr  7 19:43:15 2003  Owen Taylor  <otaylor@redhat.com>
11047
11048         * gdk/x11/gdkdisplay-x11.c (gdk_x11_display_ungrab): Flush
11049         after ungrabbing the server.
11050  
11051         * gdk/x11/gdkimage-x11.c: Remove some no-longer-needed
11052         calls to XFlush().
11053
11054         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_at_pointer):
11055         Use gdk_x11_display_grab/ungrab.
11056
11057         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize
11058         use_xshm to TRUE so SHM gets used when present.
11059  
11060 2003-04-07  Matthias Clasen  <maclas@gmx.de>
11061
11062         * gtk/gtktextlayout.c (set_para_values): 
11063         * gtk/gtkenums.h (GtkWrapMode): Add GTK_WRAP_WORD_CHAR.  (#110086,
11064         David Brigada)
11065
11066         * gtk/gtkcelleditable.c, gtk/gtkfixed.c, gtk/gtktreemodel.c,
11067         gtk/gtktreeselection.c, gtk/gtktreeview.c: Fix numerous
11068         misspellings of possessive "its".  (#110027, Doug Quale)
11069
11070 2003-04-03  Matthias Clasen  <maclas@gmx.de>
11071
11072         * demos/gtk-demo/main.c (demo_find_file): Only use files from the
11073         current directory if it looks like the srcdir.  (#109357)
11074
11075 Wed Apr  2 23:02:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
11076
11077         * gtk/gtkbutton.[ch] (gtk_button_class_init): add property
11078         focus_on_click
11079
11080         * gtk/gtkwindow.c (gtk_window_focus): make arrow keyboard
11081         navigation not wrap around.
11082
11083 2003-04-02  Matthias Clasen  <maclas@gmx.de>
11084
11085         * gtk/gtkprogress.c (gtk_progress_get_percentage_from_value):
11086         Return 0 if lower == upper.  (#109155)
11087         (gtk_progress_get_current_percentage): Use
11088         gtk_progress_get_percentage_from_value().
11089
11090 2003-04-01  Matthias Clasen  <maclas@gmx.de>
11091
11092         * gtk/gtkimcontext.c (gtk_im_context_focus_in): Fix docs.
11093         (#109510, Noah Levitt)
11094
11095 Mon Mar 31 13:52:13 2003  Jonathan Blandford  <jrb@redhat.com>
11096
11097         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): null initialize reorder's
11098         members so Purify won't complain.
11099
11100         * gtk/gtkliststore.c (gtk_list_store_sort): ditto.
11101
11102 2003-03-31  Matthias Clasen  <maclas@gmx.de>
11103
11104         * gtk/gtkwindow.c: Add a new property, role, corresponding to 
11105         gtk_window_[gs]et_role().  (#93904)
11106
11107 Sun Mar 30 03:57:42 2003  Jonathan Blandford  <jrb@gnome.org>
11108
11109         * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows):
11110         fix crash.  Patch from Markus Lausser <sgop@users.sourceforge.net>
11111
11112 2003-03-29  Matthias Clasen  <maclas@gmx.de>
11113
11114         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Set state
11115         of labels back to normal before reparenting back.  (#102387)
11116
11117         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): Set
11118         a default window title to match the GtkFontSelectionDialog behavior.
11119  
11120         (gtk_color_selection_dialog_new): Don't call
11121         gtk_window_set_title() if title is NULL.  (bug #101975, Daniel Elstner)
11122
11123 2003-03-29  Matthias Clasen  <maclas@gmx.de>
11124
11125         Fix for bug #78499:
11126         
11127         * gtk/gtkentry.h (struct _GtkEntry): Add flags select_words and
11128         select_lines. 
11129
11130         * gtk/gtkentry.c (gtk_entry_button_press): Set select_words and
11131         select_lines on double/triple click.
11132
11133         * gtk/gtkentry.c (gtk_entry_motion_notify): Implement
11134         select-by-words and select-by-lines behaviour.
11135
11136         Fixes for bug #56248:
11137         
11138         * gtk/gtknotebook.c (stop_scrolling): New function to remove the
11139         timer and queue a redraw. 
11140         (gtk_notebook_grab_notify): 
11141         (gtk_notebook_state_changed): New functions to call stop_scrolling() 
11142         if necessary.   
11143         (gtk_notebook_button_release): Use stop_scrolling().
11144         (gtk_notebook_draw_arrow): Fix drawing of insensitive arrows.
11145
11146         * gtk/gtkrange.c (stop_scrolling): New function to remove the
11147         grab, remove the timer and queue a redraw.
11148         (gtk_range_grab_notify): 
11149         (gtk_range_state_changed): New functions to call stop_scrolling() 
11150         if necessary.   
11151         (gtk_range_button_release): Use stop_scrolling().
11152
11153         * gtk/gtkspinbutton.c (gtk_spin_button_grab_notify): 
11154         (gtk_spin_button_state_changed): Redraw after stop_spinning.
11155         (gtk_spin_button_stop_spinning): Reset click_child to correct the
11156         drawing of the arrows.
11157         (gtk_spin_button_button_release): Use a local copy of click_child,
11158         since stop_spinning() resets it.
11159
11160         * gtk/gtknotebook.c (gtk_notebook_class_init): Add C-A-PgUp and
11161         C-A-PgDown as alternatives to the A-less variants. (This slipped
11162         in accidentally some time ago).  (#97860)
11163
11164 2003-03-26  Sven Neumann  <sven@gimp.org>
11165
11166         * gtk/gtktreeview.c: rewrote the function that does node and arrow
11167         prelighting, queue all redraws from here (Fixes bug #108792).
11168
11169 2003-03-20  Richard Kinder <r_kinder@yahoo.com>
11170
11171         * demos/testpixbuf.c (update_timeout): set error to NULL, not FALSE.
11172         Fixes bug #108778.
11173
11174 2003-03-20  Guntupalli Karunakar <karunakar@freedomink.org>
11175
11176         * configure.in: Added "ml" in ALL_LINGUAS
11177
11178 Sat Mar 15 18:49:27 2003  Manish Singh  <yosh@gimp.org>
11179
11180         * gtk/gtkradiomenuitem.h: use GTK_DISABLE_DEPRECATED instead of
11181         G_DISABLE_DEPRECATED.
11182
11183 2003-03-14  Tor Lillqvist  <tml@iki.fi>
11184
11185         * gdk/win32/gdkevents-win32.c: Use the signed GET_X_LPARAM() and
11186         GET_Y_LPARAM() to extract x and y coordinates from an LPARAM or
11187         DWORD, and not the unsigned HIWORD() and LOWORD(). Systems with
11188         multiple monitors can have negative coordinates on some of the
11189         monitors. (partial fix for #99496, Arnaud Charlet)
11190
11191 2003-03-15  Matthias Clasen  <maclas@gmx.de>
11192
11193         * gtk/gtktextview.c: Add a "buffer" property.  (#108353) 
11194
11195 2003-03-13  Sven Neumann  <sven@gimp.org>
11196
11197         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
11198         removed redundant calls to g_object_notify().
11199         (gtk_cell_renderer_pixbuf_get_size): removed redundant casts, see
11200         bug #108236.
11201
11202         * gtk/gtktextiter.c (_gtk_text_iter_get_segment_char)
11203         (_gtk_text_iter_get_segment_byte): return 0, not NULL (these
11204         functions return an integer value).
11205
11206 2003-03-13  Tor Lillqvist  <tml@iki.fi>
11207
11208         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
11209         WM_MOUSEMOVE, the test whether we have actually moved (and thus
11210         shouldn't generate an GDK event) moved after the call to
11211         propagate() and translate_mouse_coords(). Otherwise we were
11212         testing wrong values. (#108115, Allin Cottrell)
11213         (gdk_event_translate): On WM_?BUTTONUP, set current_{x,y} the same
11214         way as in WM_?BUTTONDOWN and WM_MOUSEMOVE.
11215
11216         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
11217         is used, must copy the HCURSOR with CopyCursor(), as it is OK to
11218         destroy the GdkCursor after calling gdk_pointer_grab(). Set the
11219         cursor right away with SetCursor(), as we won't get any
11220         WM_SETCURSOR messages while the mouse is captured. 
11221         (gdk_display_pointer_ungrab): Correspondingly, destroy the copy
11222         with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
11223
11224         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
11225         WM_SYSCHAR, return FALSE from the window procedure to prevent the
11226         DefWindowProc from being called. Otherwise Windows would beep,
11227         thinking you are tring to access a (nonexistent) menu when you
11228         press Alt-something. Don't do this for Alt-Space,
11229         though. (#107454, Martyn Russell)
11230
11231         * gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
11232
11233 Tue Mar 11 12:01:07 2003  Jonathan Blandford  <jrb@gnome.org>
11234
11235         * gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
11236         [left/right] expands/collapses the tree, #108092
11237
11238 2003-03-09  Tor Lillqvist  <tml@iki.fi>
11239
11240         * gdk/win32/gdkdrawable-win32.c (draw_segments): Don't try to
11241         compensate for LineTo() not drawing the end pixel. It causes more
11242         harm than benefits, see bug #81895.
11243
11244 2003-03-08  Matthias Clasen  <maclas@gmx.de>
11245
11246         Bug #107664 continued:
11247
11248         * gdk/x11/gdkinputprivate.h: 
11249         * gdk/x11/gdkinput-none.c (_gdk_input_window_none_event): Remove. 
11250         (_gdk_input_other_event): Return gboolean.
11251         * gdk/x11/gdkinput-xfree.c (_gdk_input_window_none_event): Remove. 
11252         (_gdk_input_other_event): Return gboolean.
11253         * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): Return gboolean.
11254
11255         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Make return_val
11256         gboolean, remove pointless call to _gdk_input_window_none_event.
11257
11258         * gdk/win32/gdkinput-win32.[hc] (_gdk_input_other_event): Return gboolean.
11259         (_gdk_input_window_none_event): Remove.
11260
11261         * gtk/gtktextiter.c (_gtk_text_iter_get_indexable_segment): 
11262         (_gtk_text_iter_get_any_segment): 
11263         (_gtk_text_iter_get_segment_byte): 
11264         (_gtk_text_iter_get_segment_char): 
11265         (_gtk_text_iter_get_text_line): 
11266         (_gtk_text_iter_get_btree): Fix 0/NULL confusion.
11267         * gdk/x11/gdkdnd-x11.c (motif_target_table_check): Return gint.
11268         * gdk/win32/gdkfont-win32.c (gdk_font_equal): 
11269         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_get_deskrelative_origin): 
11270         (gdk_window_get_origin): 
11271         * gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Fix 0/FALSE confusion. 
11272
11273 2003-03-06  Matthias Clasen  <maclas@gmx.de>
11274
11275         * gdk/gdkrgb.c (gdk_rgb_try_colormap): Return gboolean, not gint.
11276         (#107664, Morten Welinder)
11277
11278         * gdk/x11/gdkwindow-x11.c (gdk_window_get_deskrelative_origin): 
11279         * gdk/x11/gdkfont-x11.c (gdk_font_equal): 
11280         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display): 
11281         Fix TRUE/1 and FALSE/0 confusion.  (#107664, Morten Welinder)
11282
11283         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): 
11284         * gtk/gtkeditable.c (gtk_editable_get_chars): 
11285         * gtk/gtkctree.c (gtk_ctree_find_node_ptr): 
11286         * demos/gtk-demo/main.c (demo_find_file): Fix NULL/FALSE confusion
11287         (#107648, Morten Welinder)Fix NULL/FALSE confusion
11288         (#107648, Morten Welinder)
11289
11290 2003-03-04  Matthias Clasen  <maclas@gmx.de>
11291
11292         * gtk/gtkobject.h: Add deprecation guards for gtk_object_new ().
11293
11294 Sun Mar  2 23:35:57 2003  Jonathan Blandford  <jrb@gnome.org>
11295
11296         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
11297         handle rtl code.  Thanks to Matthias Clasen for an initial patch
11298         to handle the RTL code.
11299
11300         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_get_size): ditto
11301
11302         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): ditto
11303
11304         * gtk/gtktreeview.c: (invalidate_column),
11305         (invalidate_last_column),
11306         (gtk_tree_view_get_real_requested_width_from_column),
11307         (gtk_tree_view_size_allocate_columns),
11308         (gtk_tree_view_size_allocate), (gtk_tree_view_button_press),
11309         (gtk_tree_view_button_release_drag_column),
11310         (gtk_tree_view_update_current_reorder),
11311         (gtk_tree_view_motion_drag_column), (gtk_tree_view_bin_expose),
11312         (gtk_tree_view_key_press), (gtk_tree_view_header_focus),
11313         (gtk_tree_view_get_background_xrange),
11314         (gtk_tree_view_get_arrow_xrange),
11315         (gtk_tree_view_is_expander_column),
11316         (gtk_tree_view_set_column_drag_info),
11317         (gtk_tree_view_move_cursor_left_right):
11318         Add RTL support.
11319
11320         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): add an
11321         expand flag.
11322
11323         * gtk/gtktreeviewcolumn.c:
11324         (gtk_tree_view_column_class_init),
11325         (gtk_tree_view_column_set_property),
11326         (gtk_tree_view_column_get_property),
11327         (gtk_tree_view_column_set_expand),
11328         (gtk_tree_view_column_get_expand),
11329         (gtk_tree_view_column_cell_process_action):
11330         Add support for expand flag.  Thanks to Kristian Rietveld for an
11331         initial patch for this.
11332
11333 Fri Feb 28 02:06:17 2003  Jonathan Blandford  <jrb@gnome.org>
11334
11335
11336 2003-03-02  Tor Lillqvist  <tml@iki.fi>
11337
11338         * gdk/gdk.def
11339         * gtk/gtk.def: Add a bunch of missing entries. Noticed by Cedric
11340         Gustin.
11341
11342 2003-03-01  Matthias Clasen  <maclas@gmx.de>
11343
11344         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment): 
11345         (gtk_scrolled_window_set_hadjustment): Replace uses of
11346         gtk_object_new by g_object_new.
11347
11348 Thu Feb 27 17:44:24 2003  Manish Singh  <yosh@gimp.org>
11349
11350         * demos/gtk-demo/main.c
11351         * demos/gtk-demo/tree_store.c
11352         * gdk/x11/gdkscreen-x11.c
11353         * gtk/gtkcellrenderertoggle.c
11354         * gtk/gtkcolorsel.c
11355         * gtk/gtkdnd.c
11356         * gtk/gtkeditable.c
11357         * gtk/gtkentry.c
11358         * gtk/gtkmenu.c
11359         * gtk/gtkmenubar.c
11360         * gtk/gtkmenuitem.c
11361         * gtk/gtkmenushell.c
11362         * gtk/gtkrc.c
11363         * gtk/gtksettings.c
11364         * gtk/gtkstyle.c
11365         * gtk/gtktextbuffer.c
11366         * gtk/gtktextview.c
11367         * gtk/gtktreeviewcolumn.c
11368         * tests/testgtk.c
11369         * tests/testtext.c
11370         * tests/testtreeedit.c
11371         * tests/testtreefocus.c
11372         * tests/testtreeview.c: remove unnecessary G_OBJECT() casts.
11373
11374 Tue Feb 25 21:55:17 2003  Jonathan Blandford  <jrb@redhat.com>
11375
11376         * gtk/gtkoptionmenu.c (gtk_option_menu_position): account for RTL
11377         code.
11378
11379 2003-02-24  Sven Neumann  <sven@gimp.org>
11380
11381         * gtk/gtkmain.c (gtk_get_default_language): fixed documentation.
11382
11383 2003-02-21  Tomas Ogren  <stric@ing.umu.se>
11384
11385         * docs/reference/gtk/tmpl/gtktreemodel.sgml: Fix typos in an example
11386
11387 2003-02-20  Matthias Clasen  <maclas@gmx.de>
11388
11389         * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag): 
11390         Check if line_ancestor_parent is NULL.  (#102711, Manuel Clos)
11391
11392         * gtk/gtktextview.c (gtk_text_view_scroll_to_iter): 
11393         (gtk_text_view_update_adjustments): Make sure cursor stays visible
11394         during horizontal scrolling.  (#75270)
11395
11396 2003-02-19  Matthias Clasen  <maclas@gmx.de>
11397
11398         * tests/testdnd.c: Replace gtk_timeout_* by their GLib
11399         counterparts. (#106532)
11400
11401         * gdk/gdkkeys.c (gdk_keymap_class_init): Associate the
11402         keys_changed virtual function with the keys_changed signal.
11403         (#106512, Jeff Franks)
11404
11405 2003-02-15  Larry Ewing  <lewing@ximian.com>
11406
11407         * gdk/gdkevents.c (gdk_event_copy): copy the event axes as well.
11408
11409 2003-02-17  Mohammad DAMT  <mdamt@bisnisweb.com>
11410
11411         * po/id.po: Added Indonesian translation
11412         * configure.in: Added "id" to ALL_LINGUAS
11413
11414 2003-02-14  Matthias Clasen  <maclas@gmx.de>
11415
11416         * gtk/gtktextview.c (popup_targets_received): Remove bogus casts.
11417
11418 2003-02-12  Christian Rose  <menthos@menthos.com>
11419
11420         * configure.in: Added "yi" to ALL_LINGUAS.
11421
11422 2003-02-12  Matthias Clasen  <maclas@gmx.de>
11423
11424         Fix for #82734 and #78216:
11425         
11426         * gtk/gtktextview.c (delete_cb): 
11427         (select_all_cb): New callbacks for context menu items.
11428         (popup_targets_received): Add "Delete" and "Select All" to context
11429         menu, mnemonics and title caps for all items.
11430
11431         * gtk/gtkentry.c (gtk_entry_delete_cb): New callback for "Delete"
11432         context menu item.
11433         (popup_targets_received): Add "Delete" to context menu, mnemonics
11434         and title caps for all items.
11435
11436 2003-02-09  Tor Lillqvist  <tml@iki.fi>
11437
11438         * gtk/gtkfilesel.c (win32_gtk_add_drives_to_dir_list): Use
11439         GetDriveType() to recognize removable drives (in order to avoid
11440         hanging if trying to access an empty floppy drive), instead of
11441         hardcoding A: and B: (#105654).
11442
11443 2003-02-09  Matthias Clasen  <maclas@gmx.de>
11444
11445         * gtk/gtkwidget.c (gtk_widget_set_name): Add note about periods in 
11446         names.  (#57680)
11447
11448 2003-02-09  Christian Rose  <menthos@menthos.com>
11449
11450         * configure.in: Removed "en@IPA.po" from ALL_LINGUAS.
11451
11452 Fri Feb  7 04:49:46 2003  Tim Janik  <timj@gtk.org>
11453
11454         * gtk/gtkobject.c: remove quark_user_data usage in
11455         gtk_object_{g|s}et_user_data(). fixes get_user_data()
11456         returning NULL for user_data set through property interface.
11457
11458         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): don't put out
11459         warnings if a pixbuf couldn't be retrieved, since (a) this doesn't
11460         need to be a programming error (in case of loaded data), (b) it breaks
11461         with 2.0 behaviour where extra magic could be used to create empty
11462         images. don't attempt to retrieve pixbufs from NULL extra_data.
11463
11464 2003-02-06  Matthias Clasen  <maclas@gmx.de>
11465
11466         * gdk/x11/gdkvisual-x11.c (gdk_visual_get_best_with_depth): Return
11467         a GdkVisual *, not a GdkVisual **.  (#105243)
11468
11469         * gtk/gtkclist.c: 
11470         * gtk/gtkctree.c: 
11471         * gtk/gtkcontainer.c: 
11472         * gtk/gtkdnd.c: 
11473         * gtk/gtkentry.c: 
11474         * gtk/gtklist.c:
11475         * gtk/gtkmenu.c:
11476         * gtk/gtkmenuitem.c:
11477         * gtk/gtknotebook.c:
11478         * gtk/gtkselection.c:
11479         * gtk/gtkspinbutton.c:
11480         * gtk/gtktext.c:
11481         * gtk/gtktextview.c:
11482         * gtk/gtktooltips.c:
11483         * gtk/gtktreeview.c:
11484         * gtk/gtkwindow.c: Replace uses of gtk_timeout_* and gtk_idle_* by
11485         their non-deprecated GLib counterparts.
11486         
11487         * gtk/gtkmain.h: Fully deprecate gtk_timeout_* and gtk_idle_*.
11488         
11489 Sun Feb  2 16:45:57 GMT 2003  Tony Gale <gale@gtk.org>
11490
11491         * docs/tutorial/gtk-tut.sgml: cleanups from
11492         Sebastian Rittau (#104832)
11493
11494 2003-02-01  Tor Lillqvist  <tml@iki.fi>
11495
11496         Merge from stable:
11497
11498         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_foreign_new_for_display,
11499         gdk_pixmap_lookup, gdk_pixmap_lookup_for_display): Implement.
11500         (#104108, Naofumi Yasufuku)
11501
11502         * gdk/gdk.def: Export the above. Export
11503         gdk_screen_get_system_visual, noticed by Ed Woods.
11504
11505 Fri Jan 31 17:45:22 2003  Manish Singh  <yosh@gimp.org>
11506
11507         * demos/pixbuf-demo.c
11508         * demos/testpixbuf.c
11509         * demos/gtk-demo/pixbufs.c: remove deprecated gtk_timeout_* usage.
11510
11511 Fri Jan 31 17:33:00 2003  Manish Singh  <yosh@gimp.org>
11512                                                                                 
11513         * gtk/gtknotebook.c (gtk_notebook_remove_tab_label): set_state
11514         on the tab_label before unparenting it, in case the unparent
11515         drops the refcount to 0.
11516
11517 2003-02-01  Matthias Clasen  <maclas@gmx.de>
11518
11519         * gtk/gtkiconfactory.h: Use GDK_MULTIHEAD_SAFE like all other gtk
11520         headers. Sorry about gtk_selection_clear, Yosh.
11521
11522 Thu Jan 30 17:16:05 2003  Manish Singh  <yosh@gimp.org>
11523
11524         * gtk/gtkselection.h: declare gtk_selection_clear in GTK_COMPILATION
11525         too, for gtkwidget.c. Remember people, when introducing new
11526         deprecations, make sure internal code isn't using it, or if so,
11527         reorganize appropriately like I've done in other places.
11528
11529         * tests/testtext.c: don't use deprecated gtk_timeout_* stuff.
11530
11531 2003-01-31  Matthias Clasen  <maclas@gmx.de>
11532
11533         * gtk/gtkselection.h: 
11534         * gtk/gtkselection.c (gtk_selection_clear): Deprecate.  (#85683)
11535
11536         * gdk/gdkpixbuf.h: 
11537         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): 
11538         (gdk_pixbuf_render_to_drawable_alpha): Deprecate.  (#60582)
11539
11540         * gtk/gtkcolorsel.h:
11541         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
11542         Deprecate.  (#98167)
11543
11544         * gtk/gtkpaned.h: Deprecate gtk_paned_computed_position(). (#97077)
11545
11546         * gtk/gtkmain.h: Deprecate the gtk_timeout_*, gtk_idle_*
11547         and gtk_input_* functions.  (#71596)
11548         
11549         * gtk/gtkentry.c (gtk_entry_move_cursor): 
11550         * gtk/gtklabel.c (gtk_label_move_cursor): Handle
11551         GTK_MOVEMENT_HORIZONTAL_PAGES in switches.
11552
11553         * gdk/gdk.h: Deprecate gdk_wcstombs() and gdk_mbstowcs().  (#79803)
11554
11555         * gtk/gtkitemfactory.h: 
11556         * gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Deprecate. 
11557         (#69244)
11558
11559 Thu Jan 30 23:48:30 2003  Kristian Rietveld  <kris@gtk.org>
11560
11561         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_count_special_cell):
11562         only count the special cell if it is also visible,
11563         (_gtk_tree_view_column_get_neighbor_sizes): only take the width into
11564         account from visible cells,
11565         (gtk_tree_view_column_cell_get_position): likewise, (Reported and
11566         testcase provided by Vasco Alexandre da Silva Costa, via IRC,
11567         tracking bug was #104563).
11568         
11569 Thu Jan 30 23:46:15 2003  Kristian Rietveld  <kris@gtk.org>
11570
11571         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
11572         subtract expander space and focus line space from the extra space
11573         we are about the allocate. (Fixes #104635).
11574
11575 Thu Jan 30 23:42:03 2003  Kristian Rietveld  <kris@gtk.org>
11576
11577         * gtk/gtkstyle.c (apply_affine_on_point): fix rouding error
11578         (Fixes #96242, patch from Soeren Sandmann).
11579
11580 Thu Jan 30 16:54:29 2003  Owen Taylor  <otaylor@redhat.com>
11581
11582         * gtk/gtknotebook.c: Patch from Soeren Sandmann
11583         to update the states of the tab label child
11584         widgets to match the state of the tabs. 
11585         (#93389, Reported by Tommi Komulainen)
11586
11587 Thu Jan 30 16:30:54 2003  Owen Taylor  <otaylor@redhat.com>
11588
11589         * Makefile.am (EXTRA_DIST): Remove gtk+.spec.in from
11590         EXTRA_DIST, and from dist rules. (#102231)
11591
11592 2003-01-30  Daniel Elstner  <daniel.elstner@gmx.net>
11593
11594         * gtk/gtktoolbar.c (set_child_packing_and_visibility): New helper
11595         function that sets the icon's and label's packing options and
11596         visibility based on toolbar->style.
11597
11598         (gtk_toolbar_internal_insert_element):
11599         (gtk_real_toolbar_style_changed): Make use of
11600         set_child_packing_and_visibility() to clean up the code and get
11601         the packing right for icon-only/text-only toolbars. (#104679)
11602
11603         (get_first_child): Remove, and use gtk_bin_get_child() instead.
11604
11605 2003-01-30  Matthias Clasen  <maclas@gmx.de>
11606
11607         * gtk/gtktextview.c: Replace PAGE_HORIZONTALLY_HACK_VALUE by
11608         GTK_MOVEMENT_HORIZONTAL_PAGES.  (#68947)
11609
11610         * gtk/gtkenums.h: Add GTK_MOVEMENT_HORIZONTAL_PAGES to GtkMovementStep.
11611         
11612 Thu Jan 30 16:01:29 2003  Owen Taylor  <otaylor@redhat.com>
11613
11614         * gdk/gdkrgb.c (gdk_rgb_try_colormap): Remove the 
11615         attempt-to-allocate then free code. To handle multiple
11616         people allocating colors at the same time, we need
11617         to just go ahead and try. (#102213, Shivram U)
11618         
11619 2003-01-30  Daniel Elstner  <daniel.elstner@gmx.net>
11620
11621         * gtk/gtkcolorsel.c (palette_paint): Explicitely draw an opaque
11622         rectangle using the background color rather than relying on
11623         gdk_window_clear_area(), so that the palette works properly with
11624         pixmap themes. (#101732)
11625
11626         * demos/gtk-demo/colorsel.c: Install an "expose_event" handler
11627         to fill the drawing area in the background color.
11628
11629 Wed Jan 29 14:11:21 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
11630
11631         * modules/input/gtkimcontextxim.c (choose_better_style): fix a memory
11632         initialization error for selecting input style (#103549).
11633
11634 Wed Jan 29 17:02:41 2003  Owen Taylor  <otaylor@redhat.com>
11635
11636         * gdk/gdkkeyuni.c (get_decimal_char): Make the 
11637         translation of GDK_KP_Decimal dependent on LC_NUMERIC.
11638         (#101225)
11639
11640 Wed Jan 29 15:43:56 2003  Owen Taylor  <otaylor@redhat.com>
11641
11642         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
11643         Make up from the menu bar go to the end of the submenu.
11644         (#96114, Ian Peters.)
11645
11646         * gtk/gtkmenuitem.c (gtk_menu_item_mnemonic_activate): 
11647         Only do the select-but-not-activate stuff if the
11648         menu is already active. Otherwise, just activate.
11649         (#101690, Arvind Samptur)
11650
11651 Tue Jan 28 15:18:24 2003  Owen Taylor  <otaylor@redhat.com>
11652
11653         * autogen.sh (have_automake): Fix version in complaint
11654         message about automake. (#104366, Rich Burridge)
11655
11656 Mon Jan 27 16:38:13 2003  Owen Taylor  <otaylor@redhat.com>
11657
11658         * configure.in: Remove SOEXT stuff; it doesn't work portably.
11659
11660 Mon Jan 27 22:45:15 2003  Kristian Rietveld  <kris@gtk.org>
11661
11662         * gtk/gtktreestore.c (gtk_tree_store_move): don't handle b if
11663         we appended/prepended, send the rows_reordered signal to the 
11664         correct level ... (Reported by Matthew Tuck).
11665
11666 Mon Jan 27 22:43:11 2003  Kristian Rietveld  <kris@gtk.org>
11667
11668         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): don't just bail
11669         out if the level only has one item, recurse over the child if there
11670         is one. (Fixes #100458, reported by Gaël Le Mignot).
11671
11672 Mon Jan 27 22:41:26 2003  Kristian Rietveld  <kris@gtk.org>
11673
11674         * gtk/gtktreeview.c (gtk_tree_view_set_model),
11675         (gtk_tree_view_search_equal_func): make TreeView search handle
11676         all types which are transformable by GValue. (Fixes #99803, reported
11677         by Muktha Narayan).
11678
11679 Mon Jan 27 22:39:25 2003  Kristian Rietveld  <kris@gtk.org>
11680
11681         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_sort_column_id):
11682         *really* handle unsetting the ID. Slightly modified patch from
11683         Soeren Sandmann. Fixes #87556, reported by Jarek Dukat.
11684
11685 Mon Jan 27 22:33:43 2003  Kristian Rietveld  <kris@gtk.org>
11686
11687         Fixes the total GtkTreeSortable mess, and #83195, reported by
11688         Jarek Dukat
11689
11690         * gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id),
11691         (gtk_tree_store_set_sort_column_id), (gtk_tree_store_set_sort_func),
11692         (gtk_tree_store_set_default_sort_func): use the constant
11693         GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID instead of -1, make functions
11694         work as advertised by the documentation.
11695
11696         * gtk/gtklistore.c (gtk_list_store_get_sort_column_id),
11697         (gtk_list_store_set_sort_column_id), (gtk_list_store_set_sort_func),
11698         (gtk_list_store_set_default_sort_func): likewise.
11699
11700         * gtk/gtktreemodelsort.c (gtk_tree_model_set_sort_column_id),
11701         (gtk_tree_model_set_sort_func),
11702         (gtk_tree_model_sort_set_default_sort_func): make functions work
11703         as advertised by the documentation.
11704
11705 Mon Jan 27 22:31:56 2003  Kristian Rietveld  <kris@gtk.org>
11706
11707         * gtk/gtktreeview.c (gtk_tree_view_button_press): update focus_column
11708         before we decide if we edit. (fixes #100973, reported by Dave Cook).
11709
11710 Mon Jan 27 22:29:30 2003  Kristian Rietveld  <kris@gtk.org>
11711
11712         Bug report and test case from Paolo Maggi via IRC.
11713
11714         * gtk/gtkliststore.c (gtk_list_store_swap): update tail if needed,
11715         (gtk_list_store_move): update tail if needed.
11716
11717 Mon Jan 27 16:19:59 2003  Owen Taylor  <otaylor@redhat.com>
11718
11719         * gtk/gtksocket.c (gtk_socket_filter_func): event->any.window
11720         might be NULL. Use gtk_widget_get_display (widget) 
11721         (#102860, Thomas Leonard)
11722
11723 Mon Jan 27 15:58:31 2003  Owen Taylor  <otaylor@redhat.com>
11724
11725         * configure.in: Fix --without-modules/--disable-modules
11726         confusion that was causing --disable-modules not to work.
11727         (#102865, Akira Tagoh)
11728
11729         * configure.in: Fix problem with plain --with-xinput
11730         (#104266, Akira Tagoh)
11731
11732 2003-01-24  Sebastian Rittau  <srittau@jroger.in-berlin.de>
11733
11734         * docs/tutorial/gtk-tut.sgml: Fix a few typos, introduced by my last
11735         patch.
11736
11737 Fri Jan 24 17:06:41 GMT 2003  Tony Gale <gale@gtk.org>
11738
11739         * docs/tutorial/gtk-tut.sgml: Remove duplicate copy of tictactoe.h
11740
11741 Thu Jan 23 21:15:29 GMT 2003  Tony Gale <gale@gtk.org>
11742
11743         * docs/faq/gtk-faq.sgml: Learn to spell Library
11744
11745 Thu Jan 23 20:56:56 GMT 2003  Tony Gale <gale@gtk.org>
11746         * Sebastian Rittau  <srittau@jroger.in-berlin.de>:
11747
11748            docs/tutorial/gtk-tut.sgml: Adopted chapter 21.3 "Creating a
11749            Composite widget" to modern standards. (I.e. use gobject instead of
11750            glib, derive from GtkTable instead of GtkVBox.) Bugzilla #103869.
11751
11752         * docs/tutorial/gtk-tut.sgml, examples/tictactoe: Fixup tic-tac-toe
11753         code in Appendix C to reflect above changes.
11754
11755         * examples/rangewidgets/rangewidgets.c: From Roger Leigh
11756         auto resize on page size change
11757
11758 2003-01-23  Daniel Elstner  <daniel.elstner@gmx.net>
11759
11760         * gtk/gtktoolbar.c (gtk_toolbar_hide_all): Override hide_all
11761         in addition to show_all in order to keep them symmetric. (#102201)
11762
11763 Wed Jan 22 14:18:46 2003  Manish Singh  <yosh@gimp.org>
11764
11765         * gdk/x11/gdkevents-x11.c (translate_key_event): add a "return" at
11766         the end of the function, so there is a statement following the "out"
11767         label in all cases (fixes #101961)
11768
11769 2003-01-22  Christian Rose  <menthos@menthos.com>
11770
11771         * configure.in: Added "mn" to ALL_LINGUAS.
11772
11773 Wed Jan 15 17:02:18 2003  Owen Taylor  <otaylor@redhat.com>
11774  
11775         * gtk/gtktextlayout.c (gtk_text_layout_validate_yrange):
11776         Fix off-by-one error on the backward iteration loop,
11777         that was causing the wrong range to be redrawn.
11778         (at least part of #72734)
11779         
11780 2003-01-21  Matthias Clasen  <maclas@gmx.de>
11781
11782         * gtk/gtktextview.c (gtk_text_view_size_allocate): Adjust the
11783         vadjustment value after changing its bounds.  (fixes #101963 and 
11784         #73562)
11785
11786         * gtk/gtkcolorsel.c (hex_changed): Fix clamping to [0,1] to avoid 
11787         unnecessary roundtrip failures.  (#93500)
11788
11789 2003-01-19  Tor Lillqvist  <tml@iki.fi>
11790
11791         Merge from stable:
11792         
11793         Fix for #103614 and some other problems with GtkFileSelection on
11794         Windows:
11795                 
11796         * gtk/fnmatch.c (get_char): Need to use g_unichar_tolower(), not
11797         g_ascii_tolower(). Windows file names are case-insensitive for all
11798         Unicode letters.
11799
11800         * gtk/gtkfilesel.c: Instead of checking for G_OS_WIN32 or
11801         G_WITH_CYGWIN, check G_PLATFORM_WIN32. Move inclusion of gtkintl.h
11802         earlier, as it includes config.h unconditionally, and gtkprivate.h
11803         redefines GTK_LOCALEDIR.
11804         (struct _CompletionDirSent): Ifdef out the fields not used on
11805         Windows.
11806         (compare_utf8_filenames, compare_sys_filenames): Need different
11807         comparison implementation for UTF-8 file names and system locale
11808         file names on Win32. Cannot simply use g_ascii_strcasecmp(), but
11809         need to casefold all Unicode letters.
11810         (cmpl_completion_matches, open_dir, correct_parent): Ifdef out
11811         variables not used on Win32 to avoid warnings about unused
11812         variables.
11813         (open_ref_dir): Use g_path_skip_root() to skip past potential
11814         drive letter in front of the leading (back)slash.
11815         (open_new_dir): Ifdef out use of CompletionDirSent fields not
11816         there on Win32.
11817         (correct_parent): Bypass inode check also on Cygwin.
11818
11819         Fix bug noticed by Alex Shaduri: Tooltips and other
11820         GDK_WINDOW_TEMP windows were activated. This looked very odd, and
11821         was a regression from earlier versions.
11822         
11823         * gdk/win32/gdkwindow-win32.c (show_window_internal): Fine-tune
11824         behaviour. Don't ever activate GDK_WINDOW_TEMP windows.
11825         (gdk_window_move, gdk_window_resize): Add debug logging.
11826
11827         * gdk/win32/gdkevents-win32.c (gdk_event_translate): When we get a
11828         WM_SIZE message for a non-visible (withdrawn) window, don't clear
11829         the GDK_WINDOW_STATE_WITHDRAWN bit. The window is still withdrawn
11830         even if its size changes.
11831
11832 2003-01-16  Matthias Clasen  <maclas@gmx.de>
11833
11834         * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations): Typo fixes.
11835         (totally_invisible_line): Fix an incorrect optimization which
11836         caused invisible paragraphs to be occasionally misrendered.
11837
11838 Wed Jan 15 15:55:47 2003  Owen Taylor  <otaylor@redhat.com>
11839
11840         * gtk/gtksettings.c: Set the double click speed from
11841         XSETTINGS when creating a new GtkSettings object
11842         as well as when getting a notify. (#103601, reported
11843         by Louis Garcia)
11844
11845 Wed Jan 15 14:56:09 2003  Owen Taylor  <otaylor@redhat.com>
11846  
11847         * gtk/gtknotebook.c (gtk_notebook_size_allocate): 
11848         Show/hide the notebook event window as necessary,
11849         we weren't previously keeping the visibility updated
11850         properly.  (#103599)
11851  
11852 2003-01-15  Matthias Clasen  <maclas@gmx.de>
11853
11854         * examples/menu/itemfactory.c: 
11855         * docs/tutorial/gtk-tut.sgml: Add a <StockItem> to the itemfactory
11856         example.  (#103211)
11857
11858 2002-12-29  Murray Cumming  <murrayc@usa.net>
11859
11860         Fixes #102168.
11861
11862         * gtk/gtkliststore.c, gtktreednd.c, gtktreestore.c:
11863         Actually implement the GtkTreeDragSource::row_draggable virtual 
11864         function in GtkListStore and GtkTreeStore instead of just checking 
11865         whether it's implemented at all. This means that DnD isn't broken by
11866         gtkmm's virtual function wrappers. The alternative would be to
11867         hard-code the TRUE return value into gtkmm's wrappers, but that's 
11868         part of GTK+'s implementation, not it's API.
11869
11870 Tue Jan 14 23:42:29 2003  Kristian Rietveld  <kris@gtk.org>
11871
11872         * gtk/gtktreeview.c: fix compiler warning.
11873
11874 Tue Jan 14 23:29:00 2003  Kristian Rietveld  <kris@gtk.org>
11875
11876         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
11877         make sure exposed pixbufs are clipped to the exposed area before
11878         drawing, which is a slight speedup. (#102379, patch from Soeren
11879         Sandmann).
11880
11881 Tue Jan 14 23:26:41 2003  Kristian Rietveld  <kris@gtk.org>
11882
11883         * gtk/gtktreeview.c (validate_visible_area): silly typo fix,
11884         only free scroll_to_path when the complete tree has been validated.
11885         This makes sure that we scrolled to the correct path.
11886
11887 Tue Jan 14 23:25:32 2003  Kristian Rietveld  <kris@gtk.org>
11888
11889         * gtk/gtktreeview.c (gtk_tree_view_style_set): update the
11890         background of widget->window and bin->window. (Fixes #96650, reported
11891         by Dave Camp).
11892
11893 Tue Jan 14 23:24:02 2003  Kristian Rietveld  <kris@gtk.org>
11894
11895         * gtk/gtktreeview.c (gtk_tree_view_clamp_node_visible): process
11896         updates before scrolling, avoiding a "selection streak". (Fixes
11897         #101235, patch from Soeren Sandmann).
11898
11899 Tue Jan 14 23:22:13 2003  Kristian Rietveld  <kris@gtk.org>
11900
11901         * gtk/gtktreeview.c (validate_visible_area): actually put values
11902         in the requisition using gtk_widget_size_request. (Fixes #100172,
11903         reported by Kjartan Maraas).
11904
11905 Tue Jan 14 23:19:45 2003  Kristian Rietveld  <kris@gtk.org>
11906
11907         * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): cancel the
11908         arrow animation timeout before we actually reorder the rbtree. If
11909         we don't do this we can get stuck arrows,
11910         (cancel_arrow_animation): new function. (Fixes #93629, part 2,
11911         reported and testcase provided by Hans Petter Jansson).
11912
11913 Tue Jan 14 23:18:21 2003  Kristian Rietveld  <kris@gtk.org>
11914
11915         * gtk/gtktreeselection.c (gtk_tree_selection_real_modify_range):
11916         anchor_path should be start_path, not end_path. (Fixes #102618,
11917         patch from Carlos Garnacho Parro).
11918
11919 Tue Jan 14 23:16:15 2003  Kristian Rietveld  <kris@gtk.org>
11920
11921         * gtk/gtkliststore.c (gtk_list_store_move): also update the tail,
11922         only correct new_pos if we don't move to the head/tail.
11923
11924 Tue Jan 14 23:11:55 2003  Kristian Rietveld  <kris@gtk.org>
11925
11926         * gtk/gtktreestore.c (gtk_tree_store_swap): take the path from
11927         the parent_iter if depth >= 1, so we send the reordered signal to
11928         the correct level, remove debugging printfs which I forgot the remove
11929         earlier (2.2.0 shipped with this, oops). (Fixes #103198, Reported and
11930         testcase provided by Matthew Tuck).
11931
11932 Tue Jan 14 20:58:44 2003  Kristian Rietveld  <kris@gtk.org>
11933
11934         * gtk/gtktreeview.c (invalite_last_column): split out actual column
11935         invalidation into invalidate_column(),
11936         (gtk_tree_view_size_allocate_columns): invalidate column if the
11937         new width is larger than the old width.
11938         (fixes #102890, reported by Alex Duggan).
11939
11940 2003-01-14  Matthias Clasen  <maclas@gmx.de>
11941
11942         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Skip
11943         invisible chars for GTK_MOVEMENT_LOGICAL_POSITIONS and
11944         GTK_MOVEMENT_WORDS.
11945
11946         * gtk/gtktextiter.c,
11947         gtk/gtktextiter.h: Add some variant movement functions which
11948         skip invisible chars, and do some cleanups.
11949
11950 2003-01-12  Tor Lillqvist  <tml@iki.fi>
11951
11952         Merge from stable:
11953                 
11954         * gtk/gtkmain.c: Move inclusion of config.h and gtkintl.h earlier,
11955         as gtkprivate.h redefines GTK_LOCALEDIR on Win32, for run-time
11956         lookup.
11957
11958         * gdk/Makefile.am (libgdk_win32_2_0_la_DEPENDENCIES): Depend on
11959         gdk.def.
11960
11961         * gdk/gdk.def
11962         * gtk/gtk.def: Add some missing entries. Thanks to Kenichi SUTO.
11963
11964         * gtk-zip.sh.in (DEVZIP): Add bin/{gtk-query-immodules-2.0,
11965         gtk-demo}.exe and share/gtk-2.0.
11966
11967         * gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
11968         Implement by setting or clearing the WS_EX_TOOLWINDOW extended
11969         window style.
11970         (gdk_window_set_type_hint): Add all cases to the switch (not all
11971         do anything, though). Handle GDK_WINDOW_TYPE_HINT_TOOLBAR by
11972         calling gdk_window_set_skip_taskbar_hint(). This means that GTK
11973         won't know that the skip_taskbar hint is on for the window, is
11974         this bad?
11975
11976 Wed Jan  8 18:43:03 2003  Manish Singh  <yosh@gimp.org>
11977
11978         * gdk/x11/gdkdisplay-x11.c: #include <stdlib.h> for putenv,
11979         <string.h> for strlen.
11980
11981         * gdk/x11/gdkscreen-x11.c: #include <stdlib.h> for getenv,
11982         <string.h> for strrchr.
11983
11984         * tests/testgtk.c (create_saved_position): "x" and "y" properties
11985         for widgets no longer exist, use gtk_window_move instead.
11986
11987         * test/testtextbuffer.c (check_get_set_text): cast strlen to
11988         int for g_error.
11989
11990 2003-01-08  Matthias Clasen  <maclas@gmx.de>
11991
11992         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix display of
11993         the selection in the presence of invisible segments.
11994
11995 2003-01-07  Matthias Clasen  <maclas@gmx.de>
11996
11997         * gtk/gtktextview.c (gtk_text_view_class_init): Bind C-/ and C-\
11998         to "select all" and "unselect all".  (#102065)
11999
12000         * gtk/gtktextview.h (struct _GtkTextView): Add a comment that
12001         the just_selected_element is unused.
12002
12003         * gtk/gtktextview.c (extend_selection): New helper function to
12004         find the range that should be added to the selection. 
12005         (selection_motion_event_handler): 
12006         (gtk_text_view_start_selection_drag): 
12007         (gtk_text_view_end_selection_drag): 
12008         (selection_motion_event_handler): 
12009         (selection_scan_timeout): Support select-by-words/lines.
12010         (gtk_text_view_button_press_event): Start a selection drag on
12011         double/triple clicks.  (#78499)
12012
12013 2003-01-06  Matthias Clasen  <maclas@gmx.de>
12014
12015         Implement a utility function proposed in #102534:
12016         
12017         * gtk/gtktextbtree.h: 
12018         * gtk/gtktextbtree.c (_gtk_text_btree_select_range): New function.
12019         (_gtk_text_btree_place_cursor): Now a simple wrapper around
12020         _gtk_text_btree_select_range().   
12021
12022         * gtk/gtktextbuffer.h: 
12023         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): New function.
12024         (gtk_text_buffer_place_cursor): Now a simple wrapper around
12025         gtk_text_buffer_select_range(). 
12026
12027 2003-01-05  Havoc Pennington  <hp@pobox.com>
12028
12029         * configure.in: fix a stray bracket that was breaking the build
12030
12031 2003-01-05  Tor Lillqvist  <tml@iki.fi>
12032
12033         * gtk-zip.sh.in: Use correct DLL and import library names, with
12034         GTK_API_VERSION in name, not GTK_MAJOR_VERSION.GTK_MINOR_VERSION.
12035         (DEVZIP): Add gdk-pixbuf-query-loaders.exe.
12036
12037         * configure.in: Improve check for dimm.h.
12038
12039         * configure.in: Set SOEXT to 'so' on Unix, 'dll' on Win32. Used in
12040         gdk-pixbuf/Makefile.am.
12041
12042         * gdk-pixbuf/makefile.mingw.in
12043         * gdk-pixbuf/pixops/makefile.mingw.in
12044         * gdk/makefile.mingw.in
12045         * gdk/win32/makefile.mingw.in
12046         * gtk/makefile.mingw.in: Remove. Not maintained anyway.
12047
12048         * gdk-pixbuf/Makefile.am
12049         * gdk-pixbuf/pixops/Makefile.am
12050         * gdk/Makefile.am
12051         * gdk/win32/Makefile.am
12052         * gtk/Makefile.am
12053         * configure.in: Remove makefile.mingw{,.in} from here, too.
12054         
12055         * README.win32: Updates. Don't mention the now removed
12056         makefile.mingw files.
12057
12058         * gdk/gdk.def
12059         * gtk/gtk.def: Add a couple of missing entries.
12060
12061         * gdk/gdkkeynames.c: Include <string.h> for strcmp() and memcpy().
12062
12063         * gdk/win32/gdkevents-win32.c: Move dimm.h header clash workaround
12064         earlier.
12065
12066         * gdk/win32/rc/Makefile.am: Add hack to help
12067         build/win32/lt-compile-resource decide which kind of libtool
12068         object file to produce.
12069
12070 2003-01-05  Matthias Clasen  <maclas@gmx.de>
12071
12072         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Make
12073         C-Down step through the sequence of paragraph ends (old behaviour
12074         included paragraph starts).  (#80340, patch by Narayana Pattipati)
12075
12076         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_first_toggle):
12077         Check for a tag toggle at the start iterator before calling
12078         gtk_text_iter_forward_to_tag_toggle().  (#102090, patch by Daniel 
12079         Elstner)
12080
12081 2003-01-04  Matthias Clasen  <maclas@gmx.de>
12082
12083         * gtk/gtkfilesel.h (struct _GtkFileSelection): Add /*< public >*/
12084         and /*< private >*/ as appropriate.  (#97211)
12085
12086 2003-01-04  Tor Lillqvist  <tml@iki.fi>
12087
12088         * Makefile.am (EXTRA_DIST): Don't distribute gtk-zip.sh, but do
12089         distribute gtk-zip.sh.in.
12090
12091         * gtk-zip.sh.in (DEVZIP): Add gdk-pixbuf-csource.exe and .1.
12092
12093 2003-01-03  Havoc Pennington  <hp@pobox.com>
12094
12095         * docs/Makefile.am (EXTRA_DIST): put it in EXTRA_DIST
12096
12097         * docs/text_widget_internals.txt: add a file documenting some of
12098         the text widget internals
12099
12100 2003-01-02  Matthias Clasen  <maclas@gmx.de>
12101
12102         * gtk/gtkwindow.c (gtk_window_get_focus): Document that it may
12103         return NULL.  (#102069)
12104
12105 2003-01-01  Matthias Clasen  <maclas@gmx.de>
12106
12107         * gtk/fnmatch.c (FNMATCH_TEST_CASES): #undef, since having
12108         a main() in the library is obviously bad. 
12109
12110 2002-12-27  Matthias Clasen  <maclas@gmx.de>
12111
12112         * gtk/gtktextview.c (gtk_text_view_drag_data_received): Place the
12113         cursor at drop point.  (#72384)
12114         (gtk_text_view_size_allocate): Update the horizontal adjustment
12115         value.  (#75694)
12116
12117 2002-12-25  Matthias Clasen  <maclas@gmx.de>
12118
12119         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix highlighting of
12120         selection wrt. to empty lines.  (#90435, #90582, #91619)
12121
12122         * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler):
12123         Keep the cursor on screen.  (#96929)
12124
12125 2002-12-24  Matthias Clasen  <maclas@gmx.de>
12126
12127         * gtk/gtktextbuffer.c (paste_from_buffer): 
12128         (clipboard_text_received): Let the user action span the insertion
12129         and the deletion of the old selection.  (#82844)
12130
12131 2002-12-23  Matthias Clasen  <maclas@gmx.de>
12132
12133         * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_starts):
12134         Don't call gtk_text_iter_backward_sentence_start() if
12135         count is zero.  (#99115)
12136
12137         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Call
12138         move_cursor() even if the cursor hasn't moved, since it has the
12139         side effect of canceling the selection.  (#81395, #98537, #98333)
12140
12141 2002-12-22  Matthias Clasen  <maclas@gmx.de>
12142
12143         * gtk/gtktextlayout.c (add_preedit_attrs): Don't add attributes
12144         with empty ranges.  (fixes #101564 and #80637)
12145
12146 2002-12-21  Tor Lillqvist  <tml@iki.fi>
12147
12148         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Move the code that
12149         sets the window style and extended window style, and adjusts the
12150         width and height to take the window decorations into account
12151         earlier. The adjusted width and height used to be ignored. Remove
12152         the local x, y, width and height variables, no need to further
12153         confuse the code by having local copies. (Partial fix, I hope, for
12154         #101588)
12155
12156         (gdk_window_move): When moving top-level windows, take title bar
12157         and border width into account, offsetting the coordinates before
12158         calling SetWindowPos().
12159
12160         (gdk_window_set_decorations, gdk_window_set_functions):
12161         Reimplement, taking into account the peculiar semantics of
12162         GDK_DECOR_ALL and GDK_FUNC_ALL. (#79036)
12163
12164         (gdk_window_get_decorations): Implement. (#98981)
12165         
12166         (gdk_window_set_type_hint): When setting
12167         GDK_WINDOW_TYPE_HINT_MENU, call gdk_window_set_decorations().
12168         (#79036)
12169
12170         * gdk/gdk.def: Add gdk_window_get_decorations. (#98981)
12171
12172 2002-12-21  Matthias Clasen  <maclas@gmx.de>
12173
12174         * gtk/gtktextview.c (gtk_text_view_set_background): New static
12175         function to set the background of all windows.
12176         (gtk_text_view_style_set): Use gtk_text_view_set_background().
12177         (gtk_text_view_state_changed): New function; change background
12178         according to state.  (#88126)
12179
12180 2002-12-21  Havoc Pennington  <hp@pobox.com>
12181
12182         * gtk/gtktextview.c (gtk_text_view_move_visually): fix the documentation
12183